У меня есть приложение Spring Cloud, хорошо работающее на AWS.
Я решил добавить сгенерированные JHipster микро-сервисы (шлюз JHipster и UAA).
Обе эти службы регистрируются на существующем сервере Eureka, как и все предыдущие.
Все работает нормально на локальном компьютере или работает в контейнерах Docker, развернутых на экземпляре EC2 в AWS.
Однако при развертывании на разных экземплярах EC2 сгенерированные JHipster службы регистрируются неправильно. Пользовательский интерфейс Eureka отображает:
Application AMIs Availability Zones Status
HELLO-SERVICE ami-809f84e6 (2) eu-west-1b (1), eu-west-1a (1) UP (2) - i-02eg07053a672ea37 , i-083c2f2204d01f4ba
UAA n/a (2) (2) UP (2) - 97b39345fb59:uaa:9999 , ga6831e52701:uaa:9999
- "HELLO-SERVICE" - простое приложение с весенней загрузкой. Eureka отображает информацию AWS и связывает ее с частным ip / портом, который работает.
- "UAA" генерируется Jhipster. В Eureka отсутствует информация AWS для этой службы, и она связывает ее с адресом 172.17.x.x.x, который не работает.
Что меня беспокоит, так это то, что обе службы используют одни и те же файлы конфигурации eureka:
eureka:
datacenter: cloud
instance:
preferIpAddress: true
client:
healthcheck:
enabled: true
registerWithEureka: true
fetchRegistry: true
region: eu-west-1
preferedSameZone: true
availabilityZones:
eu-west-1: eu-west-1a,eu-west-1b
serviceUrl:
eu-west-1a: http://[eurekainstance]:8761/eureka/
eu-west-1b: http://[eurekainstance]:8761/eureka/
Почему приложение, сгенерированное JHipster, и простое приложение Spring Boot ведут себя по-разному, используя одну и ту же конфигурацию?
У меня закончились идеи, любая помощь будет высоко ценится!