码迷,mamicode.com
首页 > 其他好文 > 详细

ansible 常用模块

时间:2021-03-29 11:39:21      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:文件的   creates   直接   oldboy   serve   int   hostname   脚本   change   

ansible-doc -l |wc -l 模块数量
ansible命令语法:
ansible 主机信息(IP 主机组 all) -m (模块名)command -a "操作动作"
01 02 03 04 05 06
绿色 操作执行成功 没有对远程主机做任何改动
黄色 操作执行成功 对远程主机数据信息有改动
红色 操作失败
粉色 警告
蓝色 显示命令操作执行过程

command 在目标主机执行命令 默认模块

ansible all -m command -a "hostname"
参数:
chdir 切换目录

ansible all -m command -a "chdir=/tmp  pwd"

creates 判断文件是否存在 如果存在就跳过后面的操作

ansible 192.168.1.214 -m command -a "creates=/var/run/rsyncd.pid systemctl start rsyncd"

removes 判断文件是否不存在 不存在就跳过后面的操作

ansible 192.168.1.214 -m command -a "removes=/var/run/rsyncd.pid echo 11"
192.168.1.214 | CHANGED | rc=0 >>
11

shell 万能模块

ansible all -m shell  -a "hostname && awk ‘NR==3{print $1}‘ /etc/resolv.conf"

参数:
chdir 切换目录

ansible all -m shell -a "chdir=/tmp  pwd"

creates 判断文件是否存在 如果存在就跳过后面的操作

ansible 192.168.1.214 -m shell -a "creates=/var/run/rsyncd.pid systemctl start rsyncd"

removes 判断文件是否不存在 不存在就跳过后面的操作

ansible 192.168.1.214 -m shell -a "removes=/var/run/rsyncd.pid echo 11"
192.168.1.214 | CHANGED | rc=0 >>
11

scripts 命令模块 执行脚本

第一个历程:编写脚本

[root@m01 scripts]# cat yum.sh 
#!/bin/bash
yum install -y iftop

第二个历程:运行脚本

ansible backup -m script -a "/server/scripts/yum.sh"

copy 批量分发文件

作用:
1 分发文件数据信息 从管理端分发到被管理端
2 修改文件权限及属性
3 移动远程主机数据
src: 指定要推送的数据信息
dest: 指定保存文件的路径

ansible all -m copy -a ‘src=/etc/hosts dest=/tmp‘

owner: 文件属组信息
group: 文件属组信息
mode: 文件权限

ansible all -m copy -a ‘src=/etc/hosts dest=/tmp owner=root group=root mode=600‘

remote_src: 远程主机复制一份数据备份 cp /etc/hosts /tmp/hosts.bak

备份
ansible all -m copy -a ‘src=/etc/hosts dest=/tmp/hosts.bak remote_src=yes‘
还原
ansible all -m copy -a ‘src=/tmp/hosts.bak dest=/etc/hosts remote_src=yes‘

content: 直接编辑信息 并进行批量分发

 ansible backupclient -m copy -a "content=‘oldboy123‘ dest=/etc/rsync.password mode=600"

fetch 批量拉取数据

ansible 192.168.1.203 -m fetch -a ‘src=/etc/hosts dest=/tmp‘
[root@rstx-53 scripts]# tree /tmp/192.168.1.203/
/tmp/192.168.1.203/
└── etc
    └── hosts

src: 源文件
dest: 存放到本地的路径

file 修改远程主机文件权限

作用:
1 修改远程主机文件权限信息
2 创建远程主机数据信息/删除远程主机数据信息
path: 远程主机文件路径
owner: 属主
group: 属组
mode: 权限

ansible 192.168.1.203 -m file -a ‘path=/tmp/hosts mode=777‘

ansible 常用模块

标签:文件的   creates   直接   oldboy   serve   int   hostname   脚本   change   

原文地址:https://www.cnblogs.com/yangtao416/p/14582275.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!