ansible playbook可以將多個命令組合來執(zhí)行,但是很多時候我們需要接收服務(wù)器的反饋,所以debug模塊就非常重要了。
模塊說明
調(diào)試模塊,用于在調(diào)試中輸出信息
常用參數(shù):
msg:調(diào)試輸出的消息
var:將某個任務(wù)執(zhí)行的輸出作為變量傳遞給debug模塊,debug會直接將其打印輸出
verbosity:debug的級別(默認(rèn)是0級,全部顯示)
例程:
- name: Print debug infomation eg1
hosts: test2
gather_facts: F
vars:
user: jingyong
tasks:
- name: Command run line
shell: date
register: result
- name: Show debug info
debug: var=result verbosity=0
程序是將命令date返回信息使用debug模塊打印出來。
返回結(jié)果如下:
PLAY [Print debug infomation eg] ***********************************************
TASK [Show debug info] *********************************************************
ok: [192.168.0.1] ={
"result": {
"changed": true,
"cmd": "date",
"delta": "0:00:00.002400",
"end": "2016-08-27 13:42:16.502629",
"rc": 0,
"start": "2016-08-27 13:42:16.500229",
"stderr": "",
"stdout": "2016年 08月 27日 星期六 13:42:16 CST",
"stdout_lines": [
"2016年 08月 27日 星期六 13:42:16 CST"
],
"warnings": []
}
}
ok: [192.168.0.2] ={
"result": {
"changed": true,
"cmd": "date",
"delta": "0:00:00.003847",
"end": "2002-01-12 03:08:37.493383",
"rc": 0,
"start": "2002-01-12 03:08:37.489536",
"stderr": "",
"stdout": "2002年 01月 12日 星期六 03:08:37 CST",
"stdout_lines": [
"2002年 01月 12日 星期六 03:08:37 CST"
],
"warnings": []
}
}
PLAY RECAP *********************************************************************
192.168.0.1 : ok=2changed=1unreachable=0failed=0
192.168.0.1 : ok=2changed=1unreachable=0failed=0
可以看到debug不光輸出了date命令結(jié)果,還返回了很多相關(guān)調(diào)試信息,只需要date返回值,可以使用變量屬性過濾 如:result.stdout 就是命令的返回值。
程序改成:
- name: Print debug infomation eg
hosts: test2
gather_facts: F
tasks:
- name: Command run line
shell: date
register: result
- name: Show debug info
debug: var=result.stdout verbosity=0
運行結(jié)果:
PLAY [Print debug infomation eg] ***********************************************
TASK [Command run line] ********************************************************
changed: [192.168.0.1]
changed: [192.168.0.2]
TASK [Show debug info] *********************************************************
ok: [192.168.0.1] ={
"result.stdout": "2002年 01月 12日 星期六 03:16:26 CST"
}
ok: [192.168.0.2] ={
"result.stdout": "2016年 08月 27日 星期六 13:50:05 CST"
}
PLAY RECAP *********************************************************************
192.168.0.1 : ok=3changed=1unreachable=0failed=0
192.168.0.2 : ok=3changed=1unreachable=0failed=0