AWS EC2库存插件带有Ansible
#aws #教程 #python #ansible

介绍

repo是使用Ansible-Runner在Ansible执行环境中执行通用Ansible命令的较小部分

要求和依赖项

我指定了此插件的所有要求here

  • Ansible
pip install ansible
  • AWS CLI
pip install boto3
pip install awscli

设置

如果您要从预制模块拉动,请确保安装所需的集合

ansible-galaxy collection list # list installed plugins
ansible-galaxy collection install amazon.aws

运行ansible-galaxy collection list后,您应该看到这样的东西:

Collection        Version
----------------- -------
amazon.aws        5.1.0
community.general 5.2.0
openstack.cloud   1.10.0

完成此操作后,您需要导航到AWS控制台并获取您的aws_secret_keyaws_public_key

#setting up auth 
bash-5.1$ aws configure
AWS Access Key ID [None]: key
AWS Secret Access Key [None]: key
Default region name [None]: us-east-1
Default output format [None]: json

更新您的项目

我们需要使用private_ip更新库存来源才能与我们的实例联系。我们的Ansible配置文件还将映射到我们的库存源和我们正在使用的插件。

  • 冷4:
plugin: aws_ec2
regions:
  - us-east-1
keyed_groups:
  - key: tags.Tagname
filters:
  instance-state-name: running
compose:
  ansible_host: private_ip
  • ansible.cfg
[defaults]
enable_plugins=aws_ec2
inventory=aws_ec2.yml

测试

让我们寻找我们的主人:

ansible-inventory -i aws_ec2.yml --list #look for host
ansible-inventory -i aws_ec2.yml --graph # graph view

资源