【问题标题】:discovery.seed_hosts in elasticsearch AWS EC2 with ELB带有 ELB 的弹性搜索 AWS EC2 中的 discovery.seed_hosts
【发布时间】:2020-04-20 20:44:58
【问题描述】:
我在 ELB 下有 EC2 实例。每当启动一个新实例时,都会动态分配一个 IP 地址。
我添加了 ELB DNS 名称,但它指的是来自网络接口的 IP 地址标记到 ELB。但是我需要添加ec2实例ip地址。
那么如何在没有人工干预的情况下在elasticsearch中的discovery.seed_hosts中添加新的ip地址呢?
注意:- 我正在寻找 ec2 发现插件以外的方法
【问题讨论】:
标签:
elasticsearch
amazon-ec2
elastic-stack
amazon-elb
elk
【解决方案1】:
我使用 aws cli 命令从 AWS ELB 获取 IP。将以下脚本添加到我的 .sh 文件中
export ELASTIC_INSTANCE_IPS=$(aws ec2 describe-instances --filters file://filters.json --query "Reservations[*].Instances[*].PrivateIpAddress" --region ${aws_region} --output text | paste -sd,)
tee -a elasticsearch.yml << END
discovery.seed_hosts: [$ELASTIC_INSTANCE_IPS]