【发布时间】:2017-07-15 12:09:57
【问题描述】:
我正在使用 Ansible 的动态清单功能连接到 AWS 账户中的 ec2 实例,方法如下:
AWS_PROFILE=personal ansible-playbook cifarm.yml -C
我已将https://raw.github.com/ansible/ansible/devel/contrib/inventory/ec2.py 复制到库存目录下的https://raw.github.com/ansible/ansible/devel/contrib/inventory/ec2.ini 文件中。
在运行AWS_PROFILE=personal ansible-playbook cifarm.yml -C 时,它会抛出以下错误:
输出: 错误:库存脚本 (inventory/ec2.py) 有一个执行错误:错误:“检索 ec2 库存的身份验证错误。 - 发现 AWS_ACCESS_KEY_ID 和 AWS_SECRET_ACCESS_KEY 环境变量,但可能不正确 - 在 '~/.boto, ~/.aws/credentials' 中找到 Boto 配置,但包含的凭据可能不正确”,同时:获取 EC2 实例
我正在从 MAC 操作系统运行剧本。请注意,我可以在下面成功运行:
aws ec2 describe-instances --page-size 5 --profile personal
这证明凭证是正确的,并且我已经导出了 AWS_ACCESS_KEY_ID 和 AWS_SECRET_ACCESS_KEY。
我尝试如下执行inventory/ec2.py文件:
./ec2.py --list
它返回相同的错误。我看到一个帖子建议更新机器上的时间,我正在运行剧本。所以我跑了 ntpdate -u
但问题仍然存在。我不知道是什么原因。 非常感谢任何帮助/建议。
【问题讨论】:
标签: amazon-web-services dynamic ansible ansible-inventory