我刚刚开始使用ansible,并且已经成功地将ansible配置为从GCP获取动态库存。
我能够对所有实例成功运行ping模块:
ansible -i ~/git/ansible/inventory all -m ping我还可以根据主机名对单个实例成功运行ping模块:
ansible -i ~/git/ansible/inventory instance-2 -m ping现在我想利用标签对实例进行分组。例如,我有一组标记为'env:dev‘https://www.evernote.com/l/AfcLWLkermxMyIK7GvGpQXjXdIDFVAiT_z0的实例
我尝试了下面命令的多个变体,但都没有成功
ansible -i ~/git/ansible/inventory tag_env:dev -m ping如何在GCP上筛选和分组我的动态库存?
发布于 2017-12-30 16:05:13
所以你需要在实例设置中添加网络标签,而不是标签我不知道为什么,但gce.py不返回GCP标签,所以你只能使用有限的网络标签(我的意思是不是key=value,而只是值),例如,只添加网络标签'dev‘,然后运行ansible -i ~/git/ansible/inventory tag_dev -m ping,如果你需要按几个标签过滤,我发现它是
- name: test stuff
hosts: tag_api:&tag_{{ environment }}
var_files:
vars/{{ environment }}
vars/api
tasks:
- name: test
command: echo "test"像这样运行攻略ansible-playbook -i inventory/ -u user playbook/test.yml -e environment=dev
也许有人知道更好的方法,使用aws ec2.py我可以在ec2.ini配置中过滤,但gce.py非常有限,我注意到有时需要清除缓存gce.py --refresh-cache
https://stackoverflow.com/questions/48015889
复制相似问题