saltstack之(十二)配置管理mount

线上很多服务器都需要挂载存储上的公共目录,并实现开机启动(/etc/fstab),比如web的静态文件共享目录,日志远程集中收集等。

一、批量挂载部分。

1.在node1上配置nfs服务器,有关nfs服务器配置自己查阅相关文档。

2.在node1上,即salt-master服务端编写state.sls文件。

3.state文件如下:

[root@node1 base]# pwd
/srv/salt/base
[root@node1 base]# tree 
.
├── nfsmount.sls
└── top.sls

0 directories, 2 files
[root@node1 base]# cat top.sls 
base:
  '*':
    - nfsmount
[root@node1 base]# cat nfsmount.sls 
nfs-utils-lib:
  pkg.installed:
    - name: nfs-utils-lib

nfsmount:
  mount.mounted:
    - device: 192.168.3.1:/nfs
    - fstype: nfs
    - name: /mnt
    - mkmnt: true
    - opts:
      - defaults
    - require:
      - pkg: nfs-utils-lib

4.执行编写好的状态模块。

[root@node1 base]# salt '*' state.highstate env=base test

[root@node1 base]# salt '*' state.highstate env=base

5.在node1|node2上查看执行结果。

[root@node1 base]# df
Filesystem                    1K-blocks    Used Available Use% Mounted on
/dev/mapper/VolGroup-LogVol00  40562024 3312432  35189100   9% /
tmpfs                            177604      16    177588   1% /dev/shm
/dev/sda1                        198337   35108    152989  19% /boot
192.168.3.1:/nfs               40562048 3312448  35189120   9% /mnt
[root@node1 base]# tail -n1 /etc/fstab 
192.168.3.1:/nfs        /mnt    nfs    defaults    0 0
[root@node2 ~]# df
Filesystem                    1K-blocks    Used Available Use% Mounted on
/dev/mapper/VolGroup-LogVol00  40562024 5353480  33148052  14% /
tmpfs                            177604      12    177592   1% /dev/shm
/dev/sda1                        198337   35108    152989  19% /boot
192.168.3.1:/nfs               40562048 3312384  35189120   9% /mnt
[root@node2 ~]# tail -n1 /etc/fstab 
192.168.3.1:/nfs        /mnt    nfs    defaults    0 0

二、批量卸载部分

1.在上述环境基础上编写卸载state文件。

[root@node1 base]# pwd
/srv/salt/base
[root@node1 base]# tree 
.
├── nfsmount.sls
├── nfsumount.sls
└── top.sls

0 directories, 3 files
[root@node1 base]# cat nfsumount.sls 
nfsumount:
  mount.unmounted:
    - device: 192.168.3.1:/nfs
    - name: /mnt

*注释:上述红色部分二者缺一不可,否则卸载失败。

2.执行该状态模块。(此处使用指定状态模块执行的方法执行)

[root@node1 base]# salt '*' state.sls nfsumount 

3.在node1和node2上,查看已经卸载,并清除了/etc/fstab文件内容。

原文地址:https://www.cnblogs.com/xkops/p/5616249.html