1. 程式人生 > 其它 >ansible 常用模組(二)

ansible 常用模組(二)

1 主機連通性測試

ansible web -m ping

命令結果
ansible web -m ping
192.168.64.135 | SUCCESS => {
    "ansible_facts": {
        "discovered_interpreter_python": "/usr/bin/python"
    }, 
    "changed": false, 
    "ping": "pong"
}
192.168.64.140 | SUCCESS => {
    "ansible_facts": {
        "discovered_interpreter_python": "/usr/bin/python"
    }, 
    "changed": false, 
    "ping": "pong"
}

2 command 模組

ansible web -m command -a 'df -h'

命令結果
192.168.64.135 | CHANGED | rc=0 >>
檔案系統                 容量  已用  可用 已用% 掛載點
/dev/mapper/centos-root   15G  1.9G   14G   13% /
devtmpfs                 901M     0  901M    0% /dev
tmpfs                    912M  124K  912M    1% /dev/shm
tmpfs                    912M  8.6M  904M    1% /run
tmpfs                    912M     0  912M    0% /sys/fs/cgroup
/dev/sda1                197M  121M   77M   62% /boot
tmpfs                    183M     0  183M    0% /run/user/0
192.168.64.140 | CHANGED | rc=0 >>
檔案系統                 容量  已用  可用 已用% 掛載點
/dev/mapper/centos-root   15G  1.7G   14G   11% /
devtmpfs                 901M     0  901M    0% /dev
tmpfs                    912M     0  912M    0% /dev/shm
tmpfs                    912M  8.5M  904M    1% /run
tmpfs                    912M     0  912M    0% /sys/fs/cgroup
/dev/sda1                197M  121M   77M   62% /boot
tmpfs                    183M     0  183M    0% /run/user/0

ansible web -m command -a 'chdir=/tmp/ ls'

3 shell 模組

  shell模組可以在遠端主機上呼叫shell直譯器執行命令,支援shell的各種功能,例如管道等。

ansible web -m shell -a 'cat /etc/passwd | grep root'

命令結果
192.168.64.140 | CHANGED | rc=0 >>
root:x:0:0:root:/root:/bin/bash
operator:x:11:0:operator:/root:/sbin/nologin
192.168.64.135 | CHANGED | rc=0 >>
root:x:0:0:root:/root:/bin/bash
operator:x:11:0:operator:/root:/sbin/nologin

ansible 192.168.159.130 -m shell -a '/bin/sh /root/date.sh ' 指令碼是遠端主機的 同樣結果也是放在遠端主機上面的

新的案例

檢視效果

4copy 模組

拷貝檔案到遠端主機

ansible 192.168.64.140 -m copy -a 'src=/etc/passwd dest=/tmp/ mode=755 owner=root'

命令結果
192.168.64.140 | CHANGED => {
    "ansible_facts": {
        "discovered_interpreter_python": "/usr/bin/python"
    }, 
    "changed": true, 
    "checksum": "a99e56beabfc720c97bd937b9d8f24d555fa4adb", 
    "dest": "/tmp/passwd", 
    "gid": 0, 
    "group": "root", 
    "md5sum": "2e204e5a7a6285bf34a29cbd875ff2df", 
    "mode": "0755", 
    "owner": "root", 
    "size": 1191, 
    "src": "/root/.ansible/tmp/ansible-tmp-1630761209.31-13163-45377160973753/source", 
    "state": "file", 
    "uid": 0
}

檢視效果