04 Jan 2022 ansible使用tips

2023-10-17 10:30:47 浏览数 (3)

  • all表示所有host

  • ungrouped表示未分组的host
  • 常用选项
    • -m:指定module
    • -a:指定module参数
    • -b:提升权限运行命令
    • -e:指定变量
  • 列出所有host
代码语言:javascript复制
$ ansible all --list-hosts
  hosts (3):
    192.168.0.141
    192.168.0.142
    192.168.0.140
  • -i选项可以指定hosts文件
  • ansible配置文件使用顺序
代码语言:javascript复制
ANSIBLE_CONFIG -> ./ansible.cfg -> ~/.ansible.cfg -> /etc/ansible/ansible.cfg
  • 命令行调用module
代码语言:javascript复制
ansible host-pattern -m module [-a 'module arguments'] [-i inventory]

ansible qa-servers -b -m unarchive -a "src=/tmp/enigma.tgz dest=/opt/ remote_src=yes"

ansible qa-servers -b -m lineinfile -a "regexp=DEPLOY_CODE line=CODE_RED path=/opt/enigma/details.txt"
  • 加密文件
代码语言:javascript复制
ansible-vault encrypt /home/ansible/confidential
  • 查看facts变量
代码语言:javascript复制
ansible <hostname> -m ansible.builtin.setup
  • 执行空运行playbook使用-C选项
  • 查看模块文档
代码语言:javascript复制
ansible-doc -l # 列出所有模块
ansible-doc service
ansible-doc -s service # 仅输出示例
  • 安装collection
代码语言:javascript复制
ansible-galaxy collection install azure.azcollection
  • 安装ansible
代码语言:javascript复制
pip3 install ansible
  • 查询最新一个作业
代码语言:javascript复制
curl -X GET 
  -H "Authorization: Bearer TOKEN" 
  -H "Content-Type: application/json" 
  "https://controller.ansiblecloud.com/api/v2/jobs/?order_by=-id&page_size=1&search=Demo Job Template"

:) 未完待续……

LEo at 00:12

0 人点赞