我用于Docker主机的AmazonLinux2 AMI似乎没有安装AWS CLI。日志中有一个来自尝试运行aws
命令的用户数据脚本的错误:
/var/lib/cloud/instance/scripts/part-001: line 7: aws: command not found
然后我用SSH连接到实例进行健全性检查,但肯定找不到aws
:
[ec2-user@ip-X-X-X-X ~]$ cat /etc/os-release
NAME="Amazon Linux"
VERSION="2"
ID="amzn"
ID_LIKE="centos rhel fedora"
VERSION_ID="2"
PRETTY_NAME="Amazon Linux 2"
ANSI_COLOR="0;33"
CPE_NAME="cpe:2.3:o:amazon:amazon_linux:2"
HOME_URL="https://amazonlinux.com/"
[ec2-user@ip-X-X-X-X ~]$ aws --version
-bash: aws: command not found
我以为AWS CLI默认安装在所有AmazonLinux AMI上?我不记得以前必须自己安装它。
这篇文章甚至说CLI v1默认安装在AmazonLinux2:上
AWS文档链接
那么,怎么可能在AMI这只股票上找不到呢?是否只有部分AmazonLinux2 AMI预装了CLI?作为参考,我使用这个AMI:
amzn2-ami-minimal-hvm-2.0.20200917.0-x86_64-ebs (ami-0a6993b2978bd23cb)
来自AWS论坛上的这篇文章:
默认情况下,Minimal安装了一组较小的软件包。例如,许多特定于AWS的软件包都安装在默认软件包上,以便轻松集成到其他AWS服务最低版本没有安装这些这为那些没有直接与其他AWS服务交互的人,或者那些想挑选安装哪些服务的人提供了更低的占地面积。
如果你想要awscli
,你可以安装它:
sudo yum install -y awscli
要安装最新版本的awscli(v2(,请参阅此文档
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/install