首页 文章

如何在EC2实例上启用AWS CLI?

提问于
浏览
0

如何在EC2实例上启用AWS CLI?在我创建EC2实例之后,我可以通过SSH进入机器,但是当我尝试执行类似 aws s3 ls 的操作时,它会提示我先执行 aws configure ,然后我必须输入我的密钥 . 我希望能够自动执行此操作,以便我可以从S3存储桶中获取其他工件进行安装 . 请注意,我在计算机上使用AWS CLI创建EC2实例,但我需要在EC2实例上使用AWS CLI .

我创建一个简单的EC2实例的AWS命令如下所示(这在我的计算机上完成) .

aws ec2 run-instances \
 --image-id ami-14c5486b \
 --count 1 \
 --instance-type t2.micro \
 --key-name testkey \
 --subnet-id subnet-xxxxxxxx \
 --security-group-ids sg-xxxxxxxx \
 --tag-specifications 'ResourceType=instance,Tags=[{Key=Name,Value=test}]'
 --user-data file://install-software.sh

install-software.sh 看起来类似于以下内容(这是提交给EC2实例的) .

#!/bin/bash

aws s3 cp s3://mybucket/some-archive.tar.gz some-archive.tar.gz
tar xf some-archive.tar.gz
sudo some-archive/bin/install.sh

2 回答

  • 2

    启动EC2实例时需要使用instance profile - 如果它连接了实例配置文件,那么AWS CLI将自动使用其中设置的权限来授予对资源的访问权限,而不是依赖于您提供的凭据 .

  • 0

    您需要为实例分配instance role . 授予其从存储桶中获取对象的权限 . 然后 aws cli 将自动从实例元数据中获取凭据,因此您不需要首先配置 aws .

相关问题