标签:开机 连通 用户信息 系统 group set proc 运行 ansi
Ansible是一种基于模块进行工作的框架结构。批量部署能力就是由Ansible所运行的模块实现的。简而言之Ansible是基于“模块”完成各种“任务”的。ansible [主机] [-m 模块] [-a args] //命令格式
# ansible-doc -l //列出所有已安装的模块 注:按q退出
# ansible-doc -s yum //-s列出yum模块描述信息和操作动作
# ansible 192.168.92.156 -m command -a ‘date‘ //指定IP执行date
# ansible node2 -m command -a ‘date‘ //指定被管理主机中的分类执行date
# ansible all -m command -a ‘date‘ //所有主机清单上的主机执行date
# ansible all -a ‘ls /etc‘ //若省略-m选项,默认运行command模块
# ansible-doc -s cron //查看cron模块信息
# ansible node2 -m cron -a ‘minute="*/1" job="/bin/echo hello" name="test cron job"‘ //添加计划任务
# ansible node2 -a ‘crontab -l‘ //查看计划任务信息
# ansible node2 -m cron -a ‘name="test cron job" state=absent‘ //移除计划任务
# ansible-doc -s user //查看user模块信息
# ansible node2 -m user -a ‘name="test01"‘ //创建用户test01
# ansible node2 -a ‘tail /etc/passwd‘ //查看test01 用户
# ansible node2 -m user -a ‘name="test01" state=absent‘ //删除用户test01
# ansible-doc -s group //查看group模块信息
# ansible node3 -m group -a ‘name=node3 gid=306
system=yes‘ //创建node3系统组
# ansible node3 -a ‘tail /etc/group‘ //查看组信息
# ansible node3 -m user -a ‘name=test01 uid=306 system=yes group=node3‘ //将test01用户添加到node3组中
# ansible node3 -a ‘id test01‘ //查看用户信息
# ansible-doc -s copy //查看copy模块信息
# ansible node3 -m copy -a ‘src=/etc/fstab dest=/opt/fstab.bk owner=root mode=640‘
//将本地文件fstab复制到被管理主机上,所有者为root,权限为640
# ansible node3 -a ‘ls -l /opt‘ //查看文件信息
# ansible node3 -a ‘cat /opt/fstab.bk‘ //查看文件内容
# ansible node3 -m copy -a ‘content="HELLO ansible" dest=/opt/fstab.bk‘
//在fstab.bk文件中写入HELLO ansible
# ansible node3 -a ‘cat /opt/fstab.bk‘ //查看内容
# ansible-doc -s file //查看file模块信息
# ansible node3 -m file -a ‘owner=jerry group=jerry mode=644 path=/opt/fstab.bk‘
//设置文件fstab.bk的所属主为jerry,所属组为jerry,权限644
# ansible node3 -m file -a ‘path=/opt/fstab.link src=/opt/fstab.bk state=link‘
//设置/opt/fstab.link为/opt/fstab.bk的链接文件
# ansible node3 -m file -a ‘path=/opt/fstab.link state=absent‘ //删除一个文件
# ansible node3 -m file -a ‘path=/opt/abc state=touch‘ //创建一个空文件
# ansible all -m ping //检测所有主机
# ansible-doc -s yum //查看yum模块信息
# ansible node3 -m yum -a ‘name=httpd‘ //安装httpd软件包
# ansible node3 -m yum -a ‘name=httpd state=absent‘ //卸载httpd软件包
# ansible-doc -s service //查看service模块信息
# ansible node3 -a ‘systemctl status httpd‘ //查看httpd服务状态
# ansible node3 -m service -a ‘enabled=true name=httpd state=started‘
//启动httpd服务并设置开机自动启动
# ansible-doc -s shell //查看shell模块信息
# ansible node3 -m user -a ‘name=tom‘ //创建用户tom
# ansible node3 -m shell -a ‘echo 123123|passwd --stdin tom‘
//使用无交互模式给用户设置密码
# ansible-doc -s script //查看script模块信息
编辑一个本地脚本test.sh,复制到被管理主机上运行。
# vim test.sh
#!/bin/bash
echo "this is test script" > /opt/test.txt
chmod 666 /opt/test.txt
# chmod +x test.sh
# ansible node3 -m script -a ‘test.sh‘ //执行脚本
# ansible-doc -s setup //查看setup模块信息
# ansible node3 -m setup //查看node3主机输出信息
标签:开机 连通 用户信息 系统 group set proc 运行 ansi
原文地址:http://blog.51cto.com/13777111/2304898