memiah.aws-cli
AWS CLI
一个用于在RedHat系统上安装和配置Amazon AWS命令行工具的Ansible角色。
要求
你需要一个Amazon AWS账户,拥有用户和访问密钥安全凭证,并且该凭证有权访问指定的存储桶。
默认情况下,配置将为根系统用户定义,如果使用其他用户,则该用户必须存在于服务器上。
建议你创建一个权限有限的AWS用户,仅适用于所需的操作,可以通过策略来实现。以下是一个名为AmazonS3CreateReadWriteAccess-[bucket-name]
的策略,可以用于提供对存储桶[bucket-name]
的有限访问(创建/列出/放入)。
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [ "s3:CreateBucket", "s3:ListBucket" ],
"Resource": [ "arn:aws:s3:::[bucket-name]" ]
},
{
"Effect": "Allow",
"Action": [ "s3:PutObject" ],
"Resource": [ "arn:aws:s3:::[bucket-name]/*" ]
}
]
}
角色变量
以下是可用的变量及其默认值(请参见defaults/main.yml
):
aws_cli_system_user: root
系统用户的AWS配置文件将被保存到该用户下。
aws_cli_profile: "default"
为该脚本上下文创建一个新的AWS配置文件以便于管理。
aws_cli_access_key: "<accesss-key>"
你的Amazon AWS访问密钥。
aws_cli_secret_key: "<secret-key>"
你的Amazon AWS秘密密钥。
aws_cli_region: eu-west-1
存储桶所在的区域名称。
aws_cli_format: text
AWS CLI的输出格式,可以选择json
、text
或table
。
aws_cli_version: false
指定的AWS CLI包版本,例如1.19.107
,默认是最新版本。
依赖关系
无。
示例剧本
- hosts: mysql-servers
become: yes
vars_files:
- vars/main.yml
roles:
- memiah.aws-cli
在vars/main.yml
中:
aws_cli_access_key: "在这里输入访问密钥"
aws_cli_secret_key: "在这里输入秘密密钥"
aws_cli_region: eu-west-1
aws_cli_format: text
许可证
MIT / BSD
作者信息
该角色由Memiah Limited创建于2016年。