製作簡單初始化模組(在minion主機安裝軟體):
1.定義master配置檔案file_roots
[root@localhost~]# cat /etc/salt/masterfile_roots:
base:
- /etc/salt/states
prod:
- /etc/salt/states/prod
建立目錄:
mkdir -p /etc/salt/statesmkdir -p /etc/salt/states/prod
mkdir -p /etc/salt/states/init
重啟salt服務:
/etc/init.d/salt-master restart
salt-master目錄結構如下圖:
[root@localhost states]# pwd/etc/salt/states
[root@localhost states]# ll
總用量 12
drwxr-xr-x 2 root root 4096 2月 10 11:52 init
drwxr-xr-x 2 root root 4096 2月 10 10:44 prod
-rw-r--r-- 1 root root 43 2月 10 11:08 top.sls
[root@localhost states]# tree
.├── init
│?? └── package.sls
├── prod
└── top.sls
2 directories, 2 files
定義top.sls檔案。
[root@localhost states]# cat top.sls 定義了執行環境以及需要執行的slsbase: //基礎環境
'sn100-128': //主機,如果全部主機可以用'*'
- init.package //使用init目錄下,乙個叫做package的狀態檔案.
定義package.sls 檔案.
[root@localhost states]# cat init/package.slspackage.init: //定義名字,id的宣告(名字可以隨意定義).
pkg.installed: //pkg模組名.方法
#pkg.removed:
- names:
- lrzsz
- mtr
- nmap
- nc
執行(在sn100-128主機安裝lrzsz,mtr,nmap,nc軟體):
[root@localhost states]# salt 'sn100-128' state.sls init.package
2.管理檔案(統一管理/etc/security/limits.conf檔案,是各minion保持配置檔案的一致性.)
定義top.sls檔案
[root@localhost states]# cat /etc/salt/states/top.sls 定義了執行環境以及需要執行的slsbase:
#'sn100-128':
'*':
- init.package
- init.limit #在top.sls檔案中增加limit.
定義limit.sls 檔案
[root@localhost init]# cat /etc/salt/states/init/limit.slslimit-conf-config:
file.managed:
- name: /etc/security/limits.conf //節點需要管理的檔案
- source: salt://init/files/limits.conf //要載入到節點的原始檔,原始檔路徑可以有多個,以第乙個為主,如果第乙個不存在則嘗試第二個.
- user: root //子節點上檔案屬主
- group: root //子節點上檔案屬組
- mode: 644 //檔案屬性
執行(配置檔案limits.conf會同步到各minion中):
[root@localhost states]#salt '*' state.highstate
saltstack配置管理
簡單配置 srv salt top.sls base ding ding.sls touch tmp foo cmd.run creates tmp foo結果 執行 當一切都準備好後,只需要 salt state.highstate 即可將sls應用到minion中。使用 salt state.h...
Saltstack配置管理
製作簡單初始化模組 在minion主機安裝軟體 1.定義master配置檔案file roots root localhost cat etc salt master file roots base etc salt states prod etc salt states prod 建立目錄 mkd...
SaltStack配置管理
配置管理使用yaml標記語言 yaml yaml是 yaml不是一種記語言 的外語縮寫 1 見前方參考資料原文內容 但為了強調這種語言以資料做為中心,而不是以置標語言為重點,而用返璞詞重新命名。它是一種直觀的能夠被電腦識別的資料序列化格式,是乙個可讀性高並且容易被人類閱讀,容易和指令碼語言互動,用來...