我需要获取实例的公共主机名才能在重新启动时启动服务。当我使用'ec2-metadata'时,我在crontab中将调用放在@reboot时没有收到信息。那么我应该如何解决有问题的方法呢? 谢谢。
答案 0 :(得分:0)
在重新引导后主机名可用之前,您可能需要等待一段时间。因此,要么在网络接口稳定之后在启动序列中运行ec2-metadata命令,要么睡眠直到它返回有用的东西
答案 1 :(得分:0)
正确的解决方案不是使用cron,而是将脚本放在/etc/profile.d中
答案 2 :(得分:0)
假设Ubuntu for OS。
我会尝试将其挂钩到网络管理器启动事件中。
答案 3 :(得分:0)
您可以使用此命令
创建shell脚本publicdns=$(curl http://169.254.169.254/latest/meta-data/public-hostname)
这会将ec2的公共主机名存储在$ publicdns变量中。然后,您还可以让脚本运行您需要运行的任何命令。安排脚本使用cron运行@reboot。
答案 4 :(得分:0)
在终端中,输入此内容以获取公共IP地址
curl ifconfig.me