天天看點

SaltStack配置管理之系統初始化

[root@linux-node1 ~]# cd /srv/salt/base/

[root@linux-node1 base]# ls

apache.sls  dns.sls  files  top.sls

[root@linux-node1 base]# mkdir init

[root@linux-node1 base]# mv apache.sls dns.sls files/ /tmp/

[root@linux-node1 base]# ll

總用量 8

drwxr-xr-x 2 root root 4096 11月 17 14:05 init

-rw-r--r-- 1 root root   23 11月 17 13:15 top.sls

[root@linux-node1 base]# cp /tmp/dns.sls init/

[root@linux-node1 base]# cd init/

[root@linux-node1 init]# mkdir files

[root@linux-node1 init]# cp /etc/resolv.conf files/

[root@linux-node1 init]# cat /srv/salt/base/init/files/resolv.conf 

#hehe

nameserver 10.0.0.2

[root@linux-node1 init]# cat /srv/salt/base/init/dns.sls 

/etc/resolv.conf: 

  file.managed:

    - source: salt://init/files/resolv.conf

    - user: root

    - group: root

    - mode: 644

場景1   記錄曆史指令:

[root@linux-node1 init]# export PROMPT_COMMAND='{ msg=$(history 1 | { read x y; echo $y; });logger "[euid=$(whoami)]":$(who am i):[`pwd`]"$msg";}'

[root@linux-node1 ~]# tailf /var/log/messages

Nov 17 14:25:24 linux-node1 root: [euid=root]:root pts/0 2015-11-17 10:44 (10.0.0.1):[/srv/salt/base/init]free -m

場景2    系統初始化

[root@linux-node1 init]# cat dns.sls                      =========================>dns的sls檔案

[root@linux-node1 init]# cat history.sls                   =========================>曆史記錄的sls檔案

/etc/profile:

  file.append:

    - text:

      - export HISTTIMEFORMAT="%F %T `whoami`"

[root@linux-node1 init]# cat audit.sls                     =========================>審計的sls檔案

/etc/bashrc:

      - export PROMPT_COMMAND='{ msg=$(history 1 | { read x y; echo $y; });logger "[euid=$(whoami)]":$(who am i):[`pwd`]"$msg";}'

修改核心參數:

[root@linux-node1 init]# cat sysctl.sls 

vm.swappiness:

  sysctl.present:

    - value: 0

net.ipv4.ip_local_port_range:                   ====================================>端口範圍

    - value: 10000 65000

fs.file-max:                                    ====================================>可以打開的最大檔案數

    - value: 100000

[root@linux-node1 init]# cat env_init.sls       ====================================>将所有需要優化的參數include到env_init.sls檔案裡面

include:

  - init.dns

  - init.history

  - init.audit

  - init.sysctl

[root@linux-node1 base]# cat /srv/salt/base/top.sls      ====================================> top file檔案 

base:

  '*':

    - init.env_init

[root@linux-node1 base]# salt '*' state.highstate test=True            =====================>test=True   此處用test=True參數,測試系統究竟修改了哪些參數,如果沒有錯誤再執行

[root@linux-node1 base]# salt '*' state.highstate 

qq:406564728

歡迎交流

     本文轉自陳繼松 51CTO部落格,原文連結:http://blog.51cto.com/chenjisong/1714330,如需轉載請自行聯系原作者