实例重启后的EC2公共主机名

4

我需要获取实例的公共主机名以便在重新启动时启动服务。当我使用'ec2-metadata'时,如果我将调用放置在crontab的@reboot处,我无法获得信息。那么我应该如何解决这个问题呢?

谢谢。
5个回答

0
你可以使用这个命令创建一个 shell 脚本。
publicdns=$(curl http://169.254.169.254/latest/meta-data/public-hostname)

这将把您的EC2公共主机名存储在$publicdns变量中。然后,您还可以让脚本运行任何需要运行的命令。使用cron将脚本安排在@reboot时运行。


0
假设操作系统为Ubuntu。
我会尝试将其挂钩到网络管理器启动事件中。

0
在终端中输入此命令以获取公网IP地址。
curl ifconfig.me

0
您可能需要在重启后等待一段时间才能使用主机名。因此,请在网络接口稳定后,在启动序列的稍后时间运行 ec2-metadata 命令,或者等待它返回有用的内容再执行。

0
正确的解决方案不是使用cron,而是将脚本放置在/etc/profile.d中。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接