我想找出设置自动缩放组中Ec2实例的主机名的最佳做法。
我正在寻找一种方法
目前我正在做的方法是 – 在AWS中以云初始化格式将所需主机名作为用户数据的一部分传递 – 使用云初始化通过启动cmd使用当前实例ID后缀主机名
bootcmd: - "HOSTNAME_PREFIX='{{ app_id }}'" - "REGION_NAME=`/usr/bin/curl -s http://169.254.169.254/latest/meta-data/instance-id`" - "INSTANCE_ID=`/usr/bin/curl -s http://169.254.169.254/latest/meta-data/instance-id`" - "echo $HOSTNAME_PREFIX'-'$INSTANCE_ID > /etc/hostname; hostname -F /etc/hostname"
当在自动缩放组中时,可以即时创build实例时,这一点尤为重要。 尽pipe我们应该把服务器视为牛,但我认为唯一的主机名至less有助于更好地识别服务器。 有没有更好的方法呢?
这或多或less是我所采取的方法。 将实例标识包含在主机名中非常有意义,因为这样可以很容易地将运行中的服务器与Web控制台或其他API命令中的实例相关联。
有没有更好的方法呢?
你对“更好”的定义是什么?
如果它适合你,就随它去吧。 实例ID在帐户中保证是唯一的,并且您已经有了使用这些ID的解决scheme,所以听起来就像是所有的设置。