Ansible-GCP动态库存和;标签
我刚刚开始使用ansible,并已成功配置ansible以从GCP获取动态库存 我能够针对所有实例成功运行ping模块:Ansible-GCP动态库存和;标签,ansible,google-cloud-platform,Ansible,Google Cloud Platform,我刚刚开始使用ansible,并已成功配置ansible以从GCP获取动态库存 我能够针对所有实例成功运行ping模块: ansible -i ~/git/ansible/inventory all -m ping 我还能够根据主机名在单个实例上成功运行ping模块: ansible -i ~/git/ansible/inventory instance-2 -m ping 现在,我想利用标记对实例进行分组。例如,我有一组标记为“env:dev”的实例 我尝试了以下命令的多种变体,但没有成
ansible -i ~/git/ansible/inventory all -m ping
我还能够根据主机名在单个实例上成功运行ping模块:
ansible -i ~/git/ansible/inventory instance-2 -m ping
现在,我想利用标记对实例进行分组。例如,我有一组标记为“env:dev”的实例
我尝试了以下命令的多种变体,但没有成功
ansible -i ~/git/ansible/inventory tag_env:dev -m ping
如何在GCP上筛选和分组我的动态资源清册?因此,您需要在实例设置中添加网络标签,而不是标签我不知道为什么,但gce.py不返回GCP标签,因此您只能使用有限的网络标签(我的意思是不是key=value,而是value) 例如,只添加网络标记“dev”,然后运行
ansible-i~/git/ansible/inventory-tag\u dev-m ping
此外,若你们需要过滤几个标签的唯一方式,我发现它的
- name: test stuff
hosts: tag_api:&tag_{{ environment }}
var_files:
vars/{{ environment }}
vars/api
tasks:
- name: test
command: echo "test"
像这样运行playbookansible playbook-i inventory/-u user playbook/test.yml-e environment=dev
也许有人知道更好的方法,使用aws ec2.py
我可以在ec2.ini
config中过滤,但gce.py
非常有限
我还注意到,有时需要清除cachegce.py——刷新cache