我尝试使用IAM角色在本地找到集合aws-cli&不使用访问密钥/秘密访问密钥。但无法从元网址[http://169.256.169.256/latest/meta-data]获取信息。
我正在使用Ubuntu Server 16.04 LTS(HVM),SSD卷类型 - ami-f3e5aa9c运行Ec2实例。我试图在该实例上配置aws-cli。我不确定需要什么类型的角色/策略/用户在我的Ec2实例中配置aws-cli。
请为我提供一步一步的指导来实现这一点。我只需要指导。有用的链接也很感激。
答案 0 :(得分:1)
要阅读实例元数据,您无需配置AWS CLI。在您的情况下,问题是您使用错误的URL来读取实例元数据。要使用的正确网址为http://169.254.169.254/。例如,如果要读取Instance的AMI id,可以使用follow命令。
curl http://169.254.169.254/latest/meta-data/ami-id
但是,如果您要在不使用访问/密钥的情况下配置AWS cli。请按照以下步骤操作。
创建IAM实例配置文件并将其附加到EC2实例
安装AWS CLI(Ubuntu)。
如果尚未安装pip,请安装pip。
`sudo apt-get install python-pip`
安装AWS CLI。
`pip install awscli --upgrade --user`
配置AWS CLI。保留AWS Access Key ID和AWS Secret Access 键为空白,因为我们想要使用角色。
$ aws configure
AWS Access Key ID [None]:
AWS Secret Access Key [None]:
Default region name [None]: us-west-2
Default output format [None]: json
根据需要修改“区域”和“输出格式”值。
我希望这有助于你!
答案 1 :(得分:0)
有关如何为EC2设置IAM角色的AWS文档
https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/iam-roles-for-amazon-ec2.html