### ansible 劇本部署配置nfs
--目标
--配置nfs服務端-backup,共享目錄/playbook-backup/ 共享192.168.200.0/24 all_squash通路
```sh
01 書寫劇本流程
1)把對應的過程翻譯程指令
a)安裝nfs
yum install -y nfs-utils
b)配置nfs服務端
/playbook-backup/ 192.168.200.0/24(rw,sync,all_squash)
mkdir -p /playbook-backup
chown -R nfsnobody.nfsnobody /playbook-backup
c)啟動與開機自啟動
# systemctl enabled nfs rpcbind
# systemctl start rpcbind nfs
d)本地的挂載
mount -t nfs 192.168.200.3:/playbook-backup /mnt
2)找出指令對應子產品
a) yum
-m yum -a 'name=nfs-utils state=present'
b) copy
-m copy -a 'dest=/etc/exports /context="/playbook-backup/ 192.168.200.0/24(rw,sync,all_squash)"'
c) file
-m file -a 'path=/playbook-backup state=directory owner=nfsnobody group=nfsnobody '
d) systemd
-m systemd -a 'name=rpcbind enabled=yes state=started'
-m systemd -a 'name=nfs enabled=yes state=started'
e) mount
-m mount -a 'fstype=nfs src=192.168.200.3:/playbook-backup path=/mnt state=mounted'
3)根據子產品書寫劇本
4)測試劇本
5)正式使用
```
[root@web01 playbook]# ansible all -a 'df -h'
192.168.200.3 | CHANGED | rc=0 >>
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/centos-root 17G 1.2G 16G 8% /
devtmpfs 899M 0 899M 0% /dev
tmpfs 911M 0 911M 0% /dev/shm
tmpfs 911M 9.5M 902M 2% /run
tmpfs 911M 0 911M 0% /sys/fs/cgroup
/dev/sda1 1014M 142M 873M 14% /boot
tmpfs 183M 0 183M 0% /run/user/0
192.168.200.3:/playbook-backup 17G 1.2G 16G 8% /mnt
[root@web01 playbook]# ansible all -a 'cat /etc/exports'
/playbook-backup/ 192.168.200.0/24(rw,sync,all_squash)
```yaml
# cat 02nfs.yaml
- hosts: all
tasks:
- name: install nfs rpc
yum: name=nfs-utils state=installed
- name: config
copy: dest=/etc/exports content="/playbook-backup/ 192.168.200.0/24(rw,sync,all_squash)"
- name: mkdir chown
file: path=/playbook-backup state=directory owner=nfsnobody group=nfsnobody
- name: start && enable1
systemd: name=rpcbind enabled=yes state=started
- name:
systemd: name=nfs enabled=yes state=started
- name: mount
mount: fstype=nfs src=192.168.200.3:/playbook-backup path=/mnt state=mounted