gpt4 book ai didi

environment-variables - 导出 AWS_ACCESS_KEY_ID 和 AWS_SECRET_ACCESS_KEY 的替代方案

转载 作者:行者123 更新时间:2023-12-04 02:39:30 64 4
gpt4 key购买 nike

我一直在使用 Ansible 来配置 ec2 实例。每次我启动虚拟机时,我都必须执行

export AWS_ACCESS_KEY_ID = ACCESS-KEY-ID 
export AWS_SECRET_ACCESS_KEY = SECRET-ACCESS-KEY

在运行 ansible-playbook 来配置/配置实例之前。

我已经编写了一个使用 Ansible 的原始模块执行上述命令的剧本,即使在执行该剧本之后,我也必须手动执行这些命令才能运行 provision.yml脚本。

有没有从剧本本身做这些的有效方法????,因为我实际上正在从事一些不鼓励手动执行命令的自动化工作。

最佳答案

Ansible 可以设置环境变量:

在你的剧本中:

- name: "Simple playbook"
hosts: localhost
roles:
- aws
environment:
AWS_ACCESS_KEY_ID: "{{ aws_access_key }}"
AWS_SECRET_ACCESS_KEY: "{{ aws_secret_key }}"

我强烈建议学习如何使用 ansible-vault作为在 Ansible 中存储凭据的一种快速简便的方法。

另请注意,如果您使用的是 ec2.py动态库存脚本,上面的解决方案都行不通。在剧本设置环境之前加载库存。在这种情况下,最好的选择是使用备用 AWS credential methods 之一。 .一种简单的方法是 ~/.boto文件内容:
[Credentials]
aws_access_key_id = YOUR_ACCESS_KEY
aws_secret_access_key = YOUR_ACCESS_SECRET

关于environment-variables - 导出 AWS_ACCESS_KEY_ID 和 AWS_SECRET_ACCESS_KEY 的替代方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41141747/

64 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com