Playbook部署NFS

1、准备环境

1.1、主机准备

nfs    192.168.10.15
client 192.168.10.16

1.2、设置免密码登陆

ssh-keygen -t rsa -C root@qq.com -f ~/.ssh/id_rsa -P ""
yum install sshpass -y
sshpass -proot ssh-copy-id -i ~/.ssh/id_rsa.pub -o StrictHostKeyChecking=no root@192.168.10.15
sshpass -proot ssh-copy-id -i ~/.ssh/id_rsa.pub -o StrictHostKeyChecking=no root@192.168.10.16

1.3、配置主机清单

]# vi /etc/ansible/hosts
[nfs]
192.168.10.15

[client]
192.168.10.16

2、编写安装配置 nfs 服务的 playbook 文件

cat << 'CAT_END' > install_nfs.yaml
- hosts: nfs
  tasks:
    - name: Install NFS Server
      yum:
        name: nfs-utils
        state: present
    - name: Configure NFS Server
      copy:
        src: ./exports.j2
        dest: /etc/exports
    - name: Init NFS Server
      file:
        path:/ops_web
        state: directory
        owner: nfsnobody
        group: nfsnobody
    - name: Systemd NFS Server
      systemd:
        name: nfs
        state: started
        enabled: yes
CAT_END

3、准备 playbook 依赖的 exports.j2 文件

echo "/data 192.168.10.0/24(rw,sync)" >exports.j2

4、检查 playbook 语法

ansible-playbook install_nfs.yaml --syntax-check

5、运行任务

]# ansible-playbook install_nfs.yaml 

PLAY [nfs] ***************************************************************************************************************************************************

TASK [Gathering Facts] ***************************************************************************************************************************************
ok: [192.168.10.15]

TASK [Install NFS Server] ************************************************************************************************************************************
changed: [192.168.10.15]

TASK [Configure NFS Server] **********************************************************************************************************************************
changed: [192.168.10.15]

TASK [Init NFS Server] ***************************************************************************************************************************************
changed: [192.168.10.15]

TASK [Systemd NFS Server] ************************************************************************************************************************************
changed: [192.168.10.15]

PLAY RECAP ***************************************************************************************************************************************************
192.168.10.15              : ok=5    changed=4    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0   

6、客户端执行命令测试

]# ansible client -m shell -a 'showmount -e 192.168.10.15'
192.168.10.16 | CHANGED | rc=0 >>
Export list for 192.168.10.15:
/data 192.168.10.0/24

 

posted @ 2023-05-12 10:37  小粉优化大师  阅读(20)  评论(0编辑  收藏  举报