利用ansible modules模块来自定义集群管理

前沿:

在一些个特定环境下,用ansible做集群管理还是很棒的,这两天看了他的模块,官方提供了很多,就算不够,你也可以自定义定制。 话说我挺喜欢他的modules模块的,够直接 !!!

我这里就说些常见的ansible的modules吧。

下面的ansible service一看大家就懂了,就是服务状态的管理模块

[root@devops-ruifengyun~]$ansibleweb-mservice-a”name=nginxstate=started”10.150.145.53|success>>{“changed”:false,”name”:”nginx”,”state”:”started”}[root@devops-ruifengyun~]$

紧接着我们想知道他是否真的启动了,调用command模块,用来执行系统的命令。 lsof -i :80 返回值告诉我们,nginx已经ok了。

ansible web -m command -a “你要推送的命令”

[root@devops-ruifengyun~]$ansibleweb-a”lsof-i:80″10.150.145.53|success|rc=0>>COMMANDPIDUSERFDTYPEDEVICESIZE/OFFNODENAMEnginx17996root6uIPv41308681070t0TCP*:http(LISTEN)nginx18030nginx6uIPv41308681070t0TCP*:http(LISTEN)nginx18031nginx6uIPv41308681070t0TCP*:http(LISTEN)nginx18032nginx6uIPv41308681070t0TCP*:http(LISTEN)nginx18033nginx6uIPv41308681070t0TCP*:http(LISTEN)[root@devops-ruifengyun~]$

但是貌似command模块不识别管道,这个有点郁闷。

Runcmdcommand:*variableslike$HOMEandoperationslike”<“,”>”,”|”,and”&”willnotworkincommand.ansiblelamp-mcommand-a’iptables-nL’

不信可以试试!

原文:

[root@devops-ruifengyunansible]$ansibleweb-mcommand-a”psaux|grepnginx”10.150.145.53|FAILED|rc=1>>ERROR:Unsupportedoption(BSDsyntax)*********simpleselection******************selectionbylist*********-Aallprocesses-Cbycommandname-Nnegateselection-GbyrealgroupID(supportsnames)-aallw/ttyexceptsessionleaders-UbyrealuserID(supportsnames)-dallexceptsessionleaders-gbysessionORbyeffectivegroupname-eallprocesses-pbyprocessIDTallprocessesonthisterminal-sprocessesinthesessionsgivenaallw/tty,includingotherusers-tbyttygOBSOLETE–DONOTUSE-ubyeffectiveuserID(supportsnames)ronlyrunningprocessesUprocessesforspecifiedusers

除了自己写模块外,还可以调用shell、raw模块来解决这个问题。

[root@devops-ruifengyunansible]$ansibleweb-mshell-a”psaux|grepnginx”10.150.145.53|success|rc=0>>root145260.00.01060881144?S10:040:00/bin/sh-cpsaux|grepnginxroot145280.00.0103240844?S10:040:00grepnginxroot179960.00.2994244752?SsMay140:00nginx:masterprocessnginxnginx180300.50.31034367228?SMay1414:41nginx:workerprocessnginx180310.50.31039167284?SMay1414:50nginx:workerprocessnginx180320.50.31034367240?SMay1414:49nginx:workerprocessnginx180330.50.31041407328?SMay1414:54nginx:workerprocess

关于ping模块,其实这个没啥讲解的。。。

真正的停下来,享受自我的体验时刻,也许浮光掠影,

利用ansible modules模块来自定义集群管理

相关文章:

你感兴趣的文章:

标签云: