Ansible的安装

1.yum安装 2.源码安装 3.pip安装 4.apt安装 5.............

Ansible ad-hoc用法

ansible company -m ping --ask-pass ansible company -m ping -k

登录 被操控主机需要密码 ···· ansible company -k -a'ls /root'

使用密码登录到company组的机器执行 ls root(默认以当前用户登录) ···· ansible company -u ding -k -b -K -a'ls /root' 使用ding用户sudo到root下执行ls root(sudo需要密码,去掉-K不需要sudo密码,前提是被控机已经做好工作) ······· 被控机可用*或者all表示全部,默认模块为command。 ······ 每次执行ansible都要密码,麻烦。所以做免密登录操作 ssh-keygen ssh-copy-id ····· 被控机部分还可以用正则匹配,个人认为shell模块比默认的command模块更好 ····· ansible 143 -m script -a'./echo.sh' 可以让被控机执行本地的脚本,本不是复制过去执行然后删除,而是直接执行 ····· ansible 192.168.1 -m copy -a'src=./selinux dest=/etc/sysconfig/selinux backup=yes' 对所有192.168.1开头的机器使用copy模块,参数为本地文件为src,覆盖dest的文件,并做备份 ······ ansible company:company1 -a 'creates=/ethahah ls /etc/fstab' creates没有去做 removes没有不去做 ······ 被控机组与组之前可用逻辑关系表示 :表示与 ······ ansible company:company1 -m fetch -a'src=/var/log/messages dest=.' fetch 模块与copy相反,从被控机上抓文件到本地目录 ······

file模块操作文件和目录 ······ hostname模块修改主机名 ······ cron模块创建计划任务 ······ yum模块安装软件包(被控机要配置好yum源) ······ service模块控制服务相关 ······ ansible-galaxy 这个命令可以下载别人的roles ······ ansible-playbook 剧本,使用yaml格式 ······ ansible-vault encrypt hi.yml 给文件加密 ansible-vault decrypt hi.yml 给文件解密 ansible-vault view hi.yml 输入密码查看 ansible-vault edit hi.yml 输入密码修改文件 ansible-vault rekey hi.yml 修改旧密码 ······ [root@ansible ansible-test]# ansible-console(ansible控制台) Welcome to the ansible console. Type help or ? to list commands.

root@all (6)[f:5]$ cd home root@home (3)[f:5]$ ls

192.168.3.61 | CHANGED | rc=0 >> anaconda-ks.cfg hostname.sh

192.168.3.69 | CHANGED | rc=0 >> anaconda-ks.cfg

192.168.3.70 | CHANGED | rc=0 >> anaconda-ks.cfg

root@home (3)[f:5]$ root@home (3)[f:5]$ forks 10(并行执行数10) root@home (3)[f:10]$ ······