自動化運維工具Saltstack學習筆記
1.Saltstack簡介
Saltstack是一個具備puppet與func功能為一身的集中化,輕量級的自動化運維管理工具,使用python編寫,功能非常強大,可以使用EPEL快速安裝。相比較puppet,安裝和配置更加容易和簡單。下面是Saltstack安裝和基礎配置文件。(官方文件:)
2.物理環境
3.安裝前準備
修改伺服器的主機名和hosts,使其能相互解析和ping通,下面以saltmaster為例。
4.安裝Saltstack
利用EPEL源安裝saltstack。
5.Saltstack配置
6.啟動Saltstack服務
7.Saltstack master認證Minion KEY
Saltstack使用公共金鑰加密來保證master和minions的安全通訊。安裝的時候Salt自動生成這些證照,但需要在master端驗證minion的證照來確認master和minion之間是授信的。
8.Saltstack測試
1)通訊測試:Saltstack證照認證透過以後,就可以進行通訊,在master透過test.ping命令來測試它們之間的連線。萬用字元"*"代表了所有minion。
2)執行命令:在Saltstack master端透過執行"salt id 系統命令"來返回minion執行結果。
9.Saltstack分組及其測試
1)為什麼要分組?線上WEB,DB,IMG等安裝配置相同或者相近的伺服器可分為一組,方便批次安裝和管理,編輯 /etc/salt/master 新增如下內容,每個組可以有N多服務,每個伺服器用逗號分隔。
2)分組測試
SaltStack安裝和基本的配置已經完成,可以透過SaltStack批次執行系統命令,包括重啟系統,重啟服務,檢視系統負載,新增/刪除使用者等等。也可以把線上WEB,DB,BBS等安裝和配置相同或相近的伺服器分為一組,透過Saltstack的group功能批次執行管理。下面透過Saltstack來實現批次安裝,解除安裝RPM軟體包,批次分發檔案,壓縮包和推送目錄到指定的minion,定期修改Apache/Nginx/Mysql等配置檔案並實施推送到minion。
1.物理環境
2.配置Saltstack master
1)編輯/etc/salt/master, 取掉下面註釋行,目錄/srv/salt是Saltstack核心配置檔案目錄。
2)檢視我規劃的Saltstack .sls和配置檔案,軟體包的目錄結構。
3)在/srv/salt目錄下面新建top.sls檔案,該檔案是Saltstack入口配置檔案。Saltstack "top.sls"檔案開頭一般用base:書寫,萬用字元'*'表示所有的minion,-conf.pack表示conf目錄下面的pack.sls檔案,在這裡我定義的是RPM軟體包管理。
3.軟體包的管理
1)建立軟體包管理的配置檔案pack.sls 檔案,httpd表示要安裝軟體包,pkg:表示Saltstack安裝包管理,-name表示安裝軟體包名稱,-installed表示安裝,-removed表示解除安裝,service:表示Saltstack服務管理,後兩行保證apache的服務是開啟的。
2)軟體包管理測試,在ID為WEB2013-10-23的伺服器上面檢視,已經安裝apache服務並啟動。
4.Nginx/apache配置檔案的分發
1)建立Nginx sls配置檔案nginx.sls ,第一表示分發到minion檔案路徑,-managed表示Saltstack檔案管理,-source:表示master端配置檔案地址,下面三行表示檔案的屬性。
2)Nginx/apache配置檔案的分發測試,在ID為WEB2013-10-23的伺服器檢視Nginx配置檔案及其屬性都是OK的。
5.Saltstack常用命令總結
透過salt '*' sys.doc | grep "salt '*'"可以檢視所有salt幫助文件的說明。
1)Saltstack透過cp.get_file可以將master檔案分發到minion,/software/Install_Centos_LAMP_v.0.1.sh表示把檔案分發到minion上的檔案路徑,makedirs=True表示如果目錄不存在自動建立,在傳輸大檔案的時候還支援壓縮傳輸,在傳輸大檔案的時候還支援壓縮傳輸gzip。
2)cp.get_dir和cp.get_file一樣,不過get_dir是用來下載整個目錄的,也支援壓縮傳輸。
3)Saltstack cmd.run 命令可以執行系統命令並把結果返回。
3)Saltstack state.highstate命令表示主動推送master和minion同步,也可以透過schedule方式讓客戶端minion定期同步master。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/9399028/viewspace-1993517/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 自動化運維工具SaltStack詳細部署運維
- 簡化IT運維工作,就要學會使用自動化運維工具!運維
- 用自動化運維工具解放IT運維運維
- 自動化運維工具 SaltStack 在雲端計算環境中的實踐運維
- Ansible自動化運維工具運維
- saltStack自動化工具
- 自動化運維工具之Puppet模組運維
- IT運維之自動化運維運維
- 自動化運維工具Ansible介紹運維
- SpringBoot運維學習筆記Spring Boot運維筆記
- Saltstack自動化操作記錄(1)-環境部署
- Saltstack自動化操作記錄(2)-配置使用
- 自動化運維工具ansible的實踐運維
- 自動化運維工具——ansible詳解(一)運維
- 自動化運維工具——ansible詳解(二)運維
- 自動化運維工具Ansible詳細部署運維
- 自動化運維 Expect運維
- 自動化運維工具之Puppet常用資源(一)運維
- 自動化運維工具之Puppet常用資源(二)運維
- 自動化運維工具之Puppet基礎入門運維
- [Linux]Ansible自動化運維② - 工具與模組Linux運維
- AC自動機學習筆記筆記
- AC 自動機學習筆記筆記
- 自動化運維 Ansible運維
- 運維自動化工具對比運維
- 自動化運維之puppet的學習(如何找到你需要的模組)運維
- UI自動化學習筆記- 日誌相關操作UI筆記
- Ansible 運維自動化 ( 配置管理工具 )運維
- 字尾自動機學習筆記筆記
- saltstack實現自動化擴容
- mysql-inception自動化運維MySql運維
- 老凡的運維筆記 | 智慧化運維知多少?運維筆記
- 什麼是自動化運維?為什麼選擇Python做自動化運維?運維Python
- UI自動化學習筆記- PO模型介紹和使用UI筆記模型
- JVM學習筆記——自動記憶體管理JVM筆記記憶體
- 自動化批量管理工具pssh - 運維小結運維
- Python自動化運維工具-Fabric部署及使用總結Python運維
- gulp自動化構建工具學習分享