Amazon web services 如何在AWS ECS上的Eureka客户端中寻址Eureka服务器

Amazon web services 如何在AWS ECS上的Eureka客户端中寻址Eureka服务器,amazon-web-services,amazon-ecs,netflix-eureka,Amazon Web Services,Amazon Ecs,Netflix Eureka,如何在AWS ECS上寻址Eureka服务器 我的要求/当前设置 部署为ECS服务的Eureka服务器,启动类型为EC2 启用服务发现(从ECS),为Eureka服务器(例如Eureka.local)创建路由53 DNS条目 Eureka服务器仅适用于 对于中端服务,因此没有Eureka服务器的外部地址 需要/通缉 Eureka服务器部署在一个区域的多个AZ中 Eureka客户端需要寻址Eureka服务器 我想使用内置的Eureka功能,如AWS Zone affinity,这意味着我想让

如何在AWS ECS上寻址Eureka服务器

我的要求/当前设置
  • 部署为ECS服务的Eureka服务器,启动类型为EC2
    • 启用服务发现(从ECS),为Eureka服务器(例如Eureka.local)创建路由53 DNS条目
  • Eureka服务器仅适用于 对于中端服务,因此没有Eureka服务器的外部地址 需要/通缉
  • Eureka服务器部署在一个区域的多个AZ中
  • Eureka客户端需要寻址Eureka服务器
  • 我想使用内置的Eureka功能,如AWS Zone affinity,这意味着我想让一个Eureka客户端首先在其自己的AZ中与Eureka服务器对话,只有在其自己的AZ中的Eureka服务器不可用时,才返回到另一个AZ的Eureka服务器
从路由53通过DNS寻址 当我设置eurekaServerDNSName属性时,我得到以下异常,因为它找不到DNS条目的txt记录。有没有办法也创建TXT记录?如果有,我应该如何为ECS服务发现设置

eurekaServerDNSName: service-registry.local
例外情况:

Caused by: java.lang.RuntimeException: Failed to initialize DiscoveryClient!

ationConfigEmbeddedWebApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.context.ApplicationContextException: Failed to start bean 'eurekaAutoServiceRegistration'; nested exception is java.lang.NullPointerException

c.n.d.s.r.aws.ConfigClusterResolver : Resolving eureka endpoints via DNS: txt.eu-west-1.service-registry.local
此外,当我想在Route53中为我的服务创建txt记录时,我会收到一条错误消息,即我实际上无法更改此记录,例如“只能通过servicediscovery.amazonaws.com管理资源hostedzone/yyy”。因此,我想知道如何将DNS配置与AWS ECS一起用于Eureka配置

弹性IPs作为替代方案 由于弹性IP(EIP)公开了一个公共IP,这对我们来说是不可能的解决方案