标签:执行时间 init top dns配置 系统初始 salt 一个 mes div
在实际生产项目中,我们可以来这样划分:
业务模块:根据具体的业务引用需要用到的功能模块(比如搭建LNMP环境)
功能模块:按照功能创建目录,里面对应的功能状态(比如zabbix,mysql,nginx,redis等等)
系统初始化模块:把它放在base环境下,这是我们定义每台机器都要执行的操作
我们来演示如何配置系统初始化模块,这里只是举例如何使用,具体的系统初始化工作可以根据自己的实际情况配置
base环境
[root@c1 ~]# cd /srv/salt/base/;ls
init #这个是目录,用来存放系统初始化的状态
top.sls
1.dns配置
[root@c1 base]# cat init/dns.sls
/etc/resolv.conf:
file.managed:
- source: salt://init/files/resolv.conf
- user: root
- group: root
- mode: 644
[root@c1 base]# mkdir init/files
[root@c1 base]# cat init/files/resolv.conf
nameserver 114.114.114.114
2、history记录命令执行时间
[root@c1 base]# cat init/history.sls
/etc/profile:
file.append: <---------文件追加
- text: <---------下面是追加的内容
- export HISTTIMEFORMAT="%F %T `whoami`"
3、内核调优
[root@c1 base]# cat init/sysctl.sls
vm.swappiness:
sysctl.present:
- value: 0
net.ipv4.ip_local_port_range:
sysctl.present:
- value: 10000 65000
fs.file-max:
sysctl.present:
- value: 100000
我们可以再写个sls把以上的都包含进去,取个自己理解的名字,这样topfile就避免填写所有的状态
[root@c1 base]# cat init/env_init.sls
include:
- init.dns
- init.history
- init.sysctl
topfile只要写env_init.sls这一个就可以了
[root@c1 base]# cat /srv/salt/base/top.sls
base:
‘*‘:
- init.env_init
写完,我们需要测试。test=True,这个参数就是用来模拟测试,不会实际应用
salt ‘*‘ state.highstate test=True
测试OK,我们就可以真正的运行
salt ‘*‘ state.highstate
标签:执行时间 init top dns配置 系统初始 salt 一个 mes div
原文地址:http://www.cnblogs.com/sellsa/p/7851448.html