Amazon web services 带AWS ECS的尤里卡
我们使用Eureka和AWS ECS服务,可以扩展docker容器。 在ECS中,如果您在任务定义中省略主机端口,或将其指定为“0”,则会自动选择该端口并报告回服务。任务运行后,描述它应该显示它绑定到的端口Amazon web services 带AWS ECS的尤里卡,amazon-web-services,netflix-eureka,netflix-zuul,amazon-ecs,spring-cloud-netflix,Amazon Web Services,Netflix Eureka,Netflix Zuul,Amazon Ecs,Spring Cloud Netflix,我们使用Eureka和AWS ECS服务,可以扩展docker容器。 在ECS中,如果您在任务定义中省略主机端口,或将其指定为“0”,则会自动选择该端口并报告回服务。任务运行后,描述它应该显示它绑定到的端口 如果我们有几个EC2实例,Eureka如何解决使用哪个端口的问题。例如,来自EC2-A的服务A尝试从EC2-B调用服务B。因此,Eureka可以解析主机名,但无法识别暴露的端口。还有另一种解决方案 您可以创建应用程序loadbalancer和目标组,在其中可以启动docker容器 每个doc
如果我们有几个EC2实例,Eureka如何解决使用哪个端口的问题。例如,来自EC2-A的服务A尝试从EC2-B调用服务B。因此,Eureka可以解析主机名,但无法识别暴露的端口。还有另一种解决方案 您可以创建应用程序loadbalancer和目标组,在其中可以启动docker容器 每个docker容器都将其主机名设置为loadbalancer的主机名。如果您需要一个漂亮的url,那么您可以利用Route53进行DNS路由 看起来是这样的: 使用Loadbalancer主机名进行服务发现 请求流 如果在不同的主机上有两个相同任务的容器,则这两个容器都将向eureka传送相同的loadbalancer主机名
使用此解决方案,您可以在AWS ECS上使用带docker的eureka,而不会失去动态端口映射的优势和灵活性。还有另一种解决方案 您可以创建应用程序loadbalancer和目标组,在其中可以启动docker容器 每个docker容器都将其主机名设置为loadbalancer的主机名。如果您需要一个漂亮的url,那么您可以利用Route53进行DNS路由 看起来是这样的: 使用Loadbalancer主机名进行服务发现 请求流 如果在不同的主机上有两个相同任务的容器,则这两个容器都将向eureka传送相同的loadbalancer主机名 使用此解决方案,您可以在AWS ECS上使用带docker的eureka,而不会失去动态端口映射的优势和灵活性。此问题已得到解决 目前ECS代理知道正在运行的端口 但我不建议在ECS上使用Eureka,因为应用程序负载平衡器也会这样做。它充当服务注册和发现。您不需要运行附加服务Eureka,ALB很便宜。问题已经解决 目前ECS代理知道正在运行的端口
但我不建议在ECS上使用Eureka,因为应用程序负载平衡器也会这样做。它充当服务注册和发现。您不需要运行附加服务Eureka,ALB很便宜。嗨@Aleksandr Filichkin 我不认为应用程序负载平衡器和服务注册中心做同样的事情。 主要区别在于,流量通过应用程序负载平衡器流动,而服务注册中心只为您提供了一个健康的端点,您的客户端可以直接寻址该端点,因此网络流量不会通过服务注册中心流动
便宜是一个非常相对的术语,可能对一些人来说是便宜的,也可能对其他人来说是不必要的开销 嗨@Aleksandr Filichkin 我不认为应用程序负载平衡器和服务注册中心做同样的事情。 主要区别在于,流量通过应用程序负载平衡器流动,而服务注册中心只为您提供了一个健康的端点,您的客户端可以直接寻址该端点,因此网络流量不会通过服务注册中心流动
便宜是一个非常相对的术语,可能对一些人来说是便宜的,也可能对其他人来说是不必要的开销 所以,如果我们有静态Docker端口,Eureka可以很好地与AWS ESC配合使用。我们只需要公开这个端口,然后Eureka就可以使用AmazonInfo解析AWS主机,但如果您想使用ECS自动调用功能,Eureka无法帮助您。实际上,我们可以将Eureka与EcsautoCalling一起使用,而Docker只能与Docker网络主机Docker run-net=host一起使用。但这种方法并不好。对于Kubernetes来说,这没关系,因为每个Docker映像都在PodSo中隔离,如果我们有静态Docker端口,Eureka可以与AWS ESC配合使用。我们只需要公开这个端口,然后Eureka就可以使用AmazonInfo解析AWS主机,但如果您想使用ECS自动调用功能,Eureka无法帮助您。实际上,我们可以将Eureka与EcsautoCalling一起使用,而Docker只能与Docker网络主机Docker run-net=host一起使用。但这种方法并不好。对于Kubernetes来说,这没关系,因为每个Docker图像在Pod中都是孤立的,您可以将其添加为注释,而不是答案。请阅读规则。我希望,但我没有足够的stackoverflow point来评论其他人的答案。您可以将此添加为评论,而不是答案。请阅读规则。我希望,但我没有足够的stackoverflow point来评论其他人的答案。不使用eureka很好,但是微服务内部通信呢?使用eureka非常简单,我可以使用带有服务名称的假客户端。不使用eureka很好,但是微服务的内部通信呢?使用eureka非常简单,我可以使用带有服务名称的假客户端。