无论如何都可以从 cloud-init 中的 EC2 标签访问值

Is there anyway to access values from the EC2 tags in cloud-init

我知道我可以通过元数据和 cli 工具访问标签,但是在 运行 cloud-init 时是否可以访问它们?理想情况下,我想寻找一个名为 hostname 的标签并使用它来设置机器主机名。

谢谢

此命令可以 运行 从用户数据(或任何时候,实际上)从元数据中访问实例 ID,并使用它来提取名为 "hostname" 的标签。您可以将其分配给变量,或使用输出直接设置实例的主机名。

aws ec2 describe-instances --output text --query 'Reservations[*].Instances[*].Tags[?Key==`hostname`].Value' --instance-id `curl -s http://169.254.169.254/latest/meta-data/instance-id`