Spring Cloud を使用して Spring Admin を通じて Spring Boot アプリケーションを監視する場合、管理サーバーと監視対象のアプリケーションがローカルで起動される場合は問題ありませんが、サーバーにデプロイされた後、クライアントは管理サーバーに登録した IP アドレスは正しくありません。その原因としては、サーバーには内部 IP と外部 IP があることがわかりましたが、アプリケーションの登録時に内部 IP が使用されるため、アプリケーションを登録できません。
Eureka は使用されないため、構成中に Spring Cloud 構成を使用する必要があります。
構成
- 設定ファイルを変更し、次の内容を追加します。
spring.boot.admin.client.service-base-url=http://${ip}:${port}
説明
- 設定がない場合は、http://bogon:9999/ を使用して登録されます。
- spring.boot.admin.client.prefer-ip=trueにClientが追加されると、取得したIP(イントラネットIP)で登録されるため、サーバにデプロイすると登録できなくなります。
- クライアントがspring.boot.admin.client.service-base-url=http://${ip}:${port}として設定されると、設定されたアドレスで登録されます。