四十七、Ansible-常用模块详解

1、 Ansible ping模块

ping模块主要用于判断远程客户端是否在线,用于ping本身服务器,返回值为changed、ping。

[root@localhost ~]# ansible -k all -m ping
SSH password: 
10.0.0.149 | SUCCESS => {
    "ansible_facts": {
        "discovered_interpreter_python": "/usr/bin/python"
    }, 
    "changed": false, 
    "ping": "pong"
}
10.0.0.148 | SUCCESS => {
    "ansible_facts": {
        "discovered_interpreter_python": "/usr/bin/python"
    }, 
    "changed": false, 
    "ping": "pong"
}
10.0.0.147 | SUCCESS => {
    "ansible_facts": {
        "discovered_interpreter_python": "/usr/bin/python"
    }, 
    "changed": false, 
    "ping": "pong"
}

2、 Ansible command模块

Ansible command模块为ansible默认模块,主要用于执行Linux基础命令,可以执行远程服务器命令执行、任务执行等操作。

Chdir					执行命令前,切换到目录;
Creates					当该文件存在时,则不执行该步骤;
Executable				换用shell环境执行命令;
Free_form				需要执行的脚本;
Removes					当该文件不存在时,则不执行该步骤;
Warn					如果在ansible.cfg中存在告警,如果设定了False,不会警告此行。
[root@localhost ~]# ansible -i /etc/ansible/hosts all -m command -a "date"
10.0.0.149 | CHANGED | rc=0 >>
2020年 03月 31日 星期二 11:08:40 CST
10.0.0.148 | CHANGED | rc=0 >>
2020年 03月 31日 星期二 11:08:41 CST
10.0.0.147 | CHANGED | rc=0 >>
2020年 03月 31日 星期二 11:08:40 CST

# Ansible Hosts正则模式远程执行df -h
[root@localhost ~]# ansible  10.0.0.* -m command -a "df -h"
10.0.0.148 | CHANGED | rc=0 >>
文件系统        容量  已用  可用 已用% 挂载点
/dev/sda3        19G  1.8G   18G    9% /
devtmpfs        480M     0  480M    0% /dev
tmpfs           492M     0  492M    0% /dev/shm
tmpfs           492M  7.5M  484M    2% /run
tmpfs           492M     0  492M    0% /sys/fs/cgroup
/dev/sda1       509M  126M  383M   25% /boot
tmpfs            99M     0   99M    0% /run/user/0
10.0.0.149 | CHANGED | rc=0 >>
文件系统        容量  已用  可用 已用% 挂载点
/dev/sda3        19G  2.6G   17G   14% /
devtmpfs        903M     0  903M    0% /dev
tmpfs           915M     0  915M    0% /dev/shm
tmpfs           915M  9.4M  906M    2% /run
tmpfs           915M     0  915M    0% /sys/fs/cgroup
/dev/sda1       509M  137M  373M   27% /boot
tmpfs           183M     0  183M    0% /run/user/0
10.0.0.147 | CHANGED | rc=0 >>
文件系统        容量  已用  可用 已用% 挂载点
/dev/sda3        19G  3.4G   16G   18% /
devtmpfs        480M     0  480M    0% /dev
tmpfs           492M     0  492M    0% /dev/shm
tmpfs           492M  7.6M  484M    2% /run
tmpfs           492M     0  492M    0% /sys/fs/cgroup
/dev/sda1       509M  126M  383M   25% /boot
tmpfs            99M     0   99M    0% /run/user/0

3、Ansible copy模块

Ansible copy模块主要用于文件或者目录拷贝,支持文件、目录、权限、用户组功能。

src		 	 	Ansible端源文件或者目录,空文件夹不拷贝;
content		 	用来替代src,用于将指定文件的内容,拷贝到远程文件内;
dest			    客户端目标目录或者文件,需要绝对路径;
backup			拷贝之前,先备份远程节点上的原始文件;
directory_mode	用于拷贝文件夹,新建的文件会被拷贝,而老旧的不会被拷贝;
follow			支持link文件拷贝;
force			覆盖远程主机不一致的内容;
group		 	设定远程主机文件夹的组名;
mode		 	指定远程主机文件及文件及的权限;
owner		 	设定远程主机文件夹的用户名。

[root@localhost ~]# ansible all -m copy -a "src=/root/index.html dest=/tmp/ mode=755 owner=root"
10.0.0.149 | CHANGED => {
    "ansible_facts": {
        "discovered_interpreter_python": "/usr/bin/python"
    }, 
    "changed": true, 
    "checksum": "5ad4e26690276407ea664947aa66a85c4304dfc4", 
    "dest": "/tmp/index.html", 
    "gid": 0, 
    "group": "root", 
    "md5sum": "090fe607a5be1228362614ccaa088577", 
    "mode": "0755", 
    "owner": "root", 
    "size": 2381, 
    "src": "/root/.ansible/tmp/ansible-tmp-1585625154.43-93655245888608/source", 
    "state": "file", 
    "uid": 0
}
10.0.0.148 | CHANGED => {
    "ansible_facts": {
        "discovered_interpreter_python": "/usr/bin/python"
    }, 
    "changed": true, 
    "checksum": "5ad4e26690276407ea664947aa66a85c4304dfc4", 
    "dest": "/tmp/index.html", 
    "gid": 0, 
    "group": "root", 
   
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值