Saltstack 基礎詳細介紹

1.saltstack 基礎詳細介紹

 Saltstack使用Python開發,是一個很是簡單易用和輕量級的管理工具。由Master和Minion構成,經過ZeroMQ進行通訊
 
 Saltstack的master端監聽4505與4506端口,4505爲salt的消息發佈系統,4506爲salt客戶端與服務端通訊的端口;salt客戶端程序不監聽端口,客戶端啓動後,會主動鏈接master端註冊,而後一直保持該TCP鏈接,master經過這條TCP鏈接對客戶端控制,若是鏈接斷開,master對客戶端就無能爲力了。固然,客戶端若檢查到斷開後會按期的一直鏈接master端的
 
 
 Salt使用大名鼎鼎的ZeroMQ做爲通信協議,性能極高。能夠在數秒鐘以內完成數據的傳遞
 
 基於ZeroMQ通訊,具有很強的擴展性;能夠進行分級管理,可以管理分佈在廣域網的上萬臺服務器
 
 
 
 1. master: 老大,管理端
2. minion: 馬仔,被管理端
3. syndic: 頭目,對於老大來講是馬仔,對於馬仔來講是老大
 
 
 節點信息(grains)
 grains: 記錄了minions中包括了os,cpu等相對靜態的k/v鍵值對的數據,一般是來自salt-minion上報的信息
 
 pillar:我們能夠定義一些自定義的參數供salt的sls文件來引用,這個一般是在salt-master上爲minions而定義的
 
 
 
 
 top.sls
 
 這個是一個環境的入口,能夠匹配target,指定以「.sls」爲後綴來定義的salt state文件,例如:
[root@tvm-saltmaster salt]# cat base/top.sls 
base:
  'tvm-yum':
    - dnsmasq
    - crontab
    - web
 
  '*':
    - abc
    - monit
    - postfix
    - salt.minion
    - ssh
    - vim

    
    配置管理(state)
    Salt使用SLS文件(SaLt State file)描述狀態。SLS使用YAML格式進行數據序列化,所以簡單明瞭,可讀性也很高
    state可使用jinja模板引擎進行擴展
    
    
默認:通配符(globbing))
* E:正則表達式(Regular Expression)
* L:列表
* N: 分組(group)
* C:複合匹配
    
    
    
    入口文件
file_roots中必須指定「base」環境的路徑,由於該路徑中存在Salt state的入口文件: top.sls
相關文章
相關標籤/搜索