Ansible的playbook介绍

ansbile-playbook是一系统ansible命令的集合,其利用yaml 语言编写,运行过程,ansbile-playbook命令根据自上而下的顺序依次执行。同时,playbook开创了很多特性,它可以允许你传输某个命令的状态到后面的指令,如你可以从一台机器的文件中抓取内容并附为变量,然后在另一台机器中使用,这使得你可以实现一些复杂的部署机制,这是ansible命令无法实现的。

ansible-playbook的简单使用方法: #ansible-playbook example-play.yml  [参数]

常用参数:

-u REMOTE_USER :手工指定远程执行playbook的系统用户

--syntax-check :检查playbook的语法

-T TIMEOUT :定义playbook执行超时时间

--step:以单任务分步骤运行,方便做每一步的确认工作

一个简单的例子
[root@www ansible]# ls
test.yml
[root@www ansible]# vim test.yml

  • name: create user
    hosts: all
    user: root
    gather_facts: false
    vars:
    • user: "test"
      tasks:
    • name: create fuchao
      user: name="{{ fuchao }}"

测试:

[root@www ansible]# ansible-playbook test.yml

PLAY [create user] ************************************************************

TASK: [create user] **********************************************************
changed: [192.168.1.144]
changed: [192.168.1.145]
fatal: [10.25.1.56] => {'msg': 'FAILED: timed out', 'failed': True}
fatal: [db01.intranet.mydomain.net] => {'msg': 'FAILED: timed out', 'failed': True}
fatal: [db02.intranet.mydomain.net] => {'msg': 'FAILED: timed out', 'failed': True}
fatal: [10.25.1.57] => {'msg': 'FAILED: timed out', 'failed': True}

PLAY RECAP ********************************************************************
to retry, use: --limit @/root/test.retry

10.25.1.56 : ok=0 changed=0 unreachable=1 failed=0
10.25.1.57 : ok=0 changed=0 unreachable=1 failed=0
192.168.1.144 : ok=1 changed=1 unreachable=0 failed=0
192.168.1.145 : ok=1 changed=1 unreachable=0 failed=0
db01.intranet.mydomain.net : ok=0 changed=0 unreachable=1 failed=0
db02.intranet.mydomain.net : ok=0 changed=0 unreachable=1 failed=0

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容