加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

amazon-web-services-AWS ECS上的Kafka,如何在没有已知实例的情

发布时间:2020-12-16 03:25:44 所属栏目:安全 来源:网络整理
导读:我正在尝试让Kafka在AWS ECS容器上运行.我已经有此设置/使用spotify / kafka image在我的本地docker环境中工作正常 为了使它在本地运行,我需要确保ADVERTISED_HOST environment variable was set.需要将ADVERTISED_HOST设置为容器的外部IP,否则当我尝试连接

我正在尝试让Kafka在AWS ECS容器上运行.我已经有此设置/使用spotify / kafka image在我的本地docker环境中工作正常

为了使它在本地运行,我需要确保ADVERTISED_HOST environment variable was set.需要将ADVERTISED_HOST设置为容器的外部IP,否则当我尝试连接时,它只是拒绝了我的连接.

我的本地docker-compose.yaml在kafka容器中有以下内容:

  kafka:
    image: spotify/kafka
    hostname: kafka
    environment:
    - ADVERTISED_HOST=192.168.0.70
    - ADVERTISED_PORT=9092
    ports:
    - "9092:9092"
    - "2181:2181"
    restart: always

现在的问题是,我不知道IP将是什么,因为我不知道它将在哪个实例上运行.那么如何设置该环境变量?

最佳答案
您的入口点脚本将需要在启动时调用EC2 Metadata Service(在本例中为http://169.254.169.254/latest/meta-data/local-hostname),以获取docker-to-docker主机名并设置该变量.

样品:

[ec2-user ~]$curl http://169.254.169.254/latest/meta-data/local-hostname
ip-10-251-50-12.ec2.internal

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读