我正在尝试开发一种使用云形成模板的自动扩展策略,以便在我的负载激增发生在AWS云中时启动多个EC2实例。
每次通过自动缩放生成新节点时,我都需要分配一个主机名。主机名应采用类似于节点应用程序角色的方式(如web、db或邮件服务器etc....This是我的传统application.The主机名的要求可以按如下顺序排列: web01、web02用于web服务器,db01、db02...对于db server .I,我不确定如何才能实现它,任何帮助都将不胜感激。
发布于 2018-03-10 18:22:16
这实际上是一行代码:
sudo hostname `curl http://169.254.169.254/latest/meta-data/iam/info | jq -r .InstanceProfileArn | cut -d "/" -f 2`只需在实例启动时运行它(在cloud-init脚本中,在/etc/rc.local中,在/etc/init.d/hostname中等)。
curl http://169.254.169.254/latest/meta-data/iam/info接收有关IAM实例配置文件的JSON格式的信息(EC2实例并不真正具有IAM角色,它们具有从IAM角色派生的配置文件)。
jq -r .InstanceProfileArn仅从该JSON中提取配置文件ARN。
cut -d "/" -f 2将从配置文件ARN中删除除最后一部分之外的所有内容,最后一部分与IAM角色匹配。
hostname...好吧,设置主机名。
https://stackoverflow.com/questions/49206255
复制相似问题