nag*_*hun 0 yum startup amazon-ec2 amazon-web-services
sudo yum update当通过 ssh 连接到我的 EC2 实例时,我可以成功运行。但是,当我将相同的命令附加到启动配置的 userData 时,我看到以下错误(在 中/var/log/cloud-init-output.log):
launch script..
Loaded plugins: extras_suggestions, langpacks, priorities, update-motd
One of the configured repositories failed (Unknown),
and yum doesn't have enough cached data to continue. At this point the only
safe thing yum can do is fail. There are a few ways to work "fix" this:
Run Code Online (Sandbox Code Playgroud)
我的脚本:
#!/bin/bash
echo "launch script.."
sudo yum update -y
sudo yum install java-1.8.0 -y
aws s3 cp s3://bucket/app.jar ./app.jar
java -jar app.jar >> out.log
Run Code Online (Sandbox Code Playgroud)
如何在 EC2 实例启动时运行 yum 命令?
确保您确实拥有从 EC2 实例到互联网的路由。这通常意味着公共 IP 或到 NAT 实例/网关的路由,以及 VPC 中的互联网网关。
用户数据脚本可能在连接建立之前开始运行。在脚本运行 yum update 之前,您可能需要验证实例是否具有出站网络访问权限,例如:
#!/bin/bash
echo "launch script.."
until ping -c1 www.google.com &>/dev/null; do
echo "Waiting for network ..."
sleep 1
done
yum update -y
# other things here
Run Code Online (Sandbox Code Playgroud)
另请注意,用户数据脚本是以 root 用户身份执行的,因此您不需要 sudo。
| 归档时间: |
|
| 查看次数: |
2229 次 |
| 最近记录: |