天天看點

Saltstack (modules、傳回值cache、syndic、salt-ssh、API)

接上篇内容

redhat6.5

server1 172.25.29.1 salt-master  

server2 172.25.29.2 salt-minion 

server3 172.25.29.3 salt-minion 

server4 172.25.29.4 salt-master  syndic

server5 172.25.29.5 salt-minion 

一.Salt modules

1.建立_modules,my_disk.py子產品

Saltstack (modules、傳回值cache、syndic、salt-ssh、API)

2.同步子產品

Saltstack (modules、傳回值cache、syndic、salt-ssh、API)

server5的緩存已經有了my_disk

Saltstack (modules、傳回值cache、syndic、salt-ssh、API)

3.使用disk子產品查詢server5

Saltstack (modules、傳回值cache、syndic、salt-ssh、API)

二.salt采集資料的傳回值儲存到資料庫裡

采集資料的傳回值事件在jobs下面,以檔案顯示

Saltstack (modules、傳回值cache、syndic、salt-ssh、API)

外部緩存

Saltstack (modules、傳回值cache、syndic、salt-ssh、API)

1.安裝mysql-python子產品

Saltstack (modules、傳回值cache、syndic、salt-ssh、API)

在minion server5上遠端安裝mysql-python子產品

Saltstack (modules、傳回值cache、syndic、salt-ssh、API)
Saltstack (modules、傳回值cache、syndic、salt-ssh、API)

2.在master server1上安裝mysql-server,初始化設定密碼

Saltstack (modules、傳回值cache、syndic、salt-ssh、API)
Saltstack (modules、傳回值cache、syndic、salt-ssh、API)

3.建立salt資料,并導入mysql

Saltstack (modules、傳回值cache、syndic、salt-ssh、API)
Saltstack (modules、傳回值cache、syndic、salt-ssh、API)
Saltstack (modules、傳回值cache、syndic、salt-ssh、API)

導入出現的錯誤需要注釋資料内容

Saltstack (modules、傳回值cache、syndic、salt-ssh、API)
Saltstack (modules、傳回值cache、syndic、salt-ssh、API)

4.在server5上安裝mysql,建立salt使用者

Saltstack (modules、傳回值cache、syndic、salt-ssh、API)
Saltstack (modules、傳回值cache、syndic、salt-ssh、API)

5.修改配置/etc/salt/master檔案,資料庫位址為master server1

添加資料庫配置

Saltstack (modules、傳回值cache、syndic、salt-ssh、API)
Saltstack (modules、傳回值cache、syndic、salt-ssh、API)

6.測試采集的資料是否儲存到master的資料庫上

Saltstack (modules、傳回值cache、syndic、salt-ssh、API)

遠端登陸master server1的資料庫

Saltstack (modules、傳回值cache、syndic、salt-ssh、API)
Saltstack (modules、傳回值cache、syndic、salt-ssh、API)

資料已經儲存

Saltstack (modules、傳回值cache、syndic、salt-ssh、API)

三.salt采集資料的傳回值儲存到資料庫裡

主緩存

Saltstack (modules、傳回值cache、syndic、salt-ssh、API)

1.在sevrer1上安裝mysql-python子產品

Saltstack (modules、傳回值cache、syndic、salt-ssh、API)

2.注釋之間server5上配置的外部緩存mysql設定,以免影響主緩存設定

Saltstack (modules、傳回值cache、syndic、salt-ssh、API)
Saltstack (modules、傳回值cache、syndic、salt-ssh、API)

3.修改server1上的master設定

設定為主緩存

Saltstack (modules、傳回值cache、syndic、salt-ssh、API)
Saltstack (modules、傳回值cache、syndic、salt-ssh、API)

4.采集資料

采集server5的所有項目

Saltstack (modules、傳回值cache、syndic、salt-ssh、API)

登陸資料庫資料已經生成

Saltstack (modules、傳回值cache、syndic、salt-ssh、API)
Saltstack (modules、傳回值cache、syndic、salt-ssh、API)

四.salt syndic

salt的基本設定是一個salt master指揮一組salt

minion。syndic允許建立salt指令拓撲結構,它運作在一個master上,并且連接配接到另一個master。syndic所連接配接的master可以控制syndic和syndic下的minions

注意事項:各個 syndic 必須提供自己的file_roots目錄,檔案不會在 master-master 之間自動分發

                syndic下邊的minion執行的指令會執行syndic top裡邊的指令。

                Syndic 必須運作在master上,并且連接配接到另一個master(比他更進階)

1.salt syndic配置

需要将server4變為master

Saltstack (modules、傳回值cache、syndic、salt-ssh、API)

在server1上安裝salt-syndic

Saltstack (modules、傳回值cache、syndic、salt-ssh、API)
Saltstack (modules、傳回值cache、syndic、salt-ssh、API)

2.配置server4上的master檔案

Saltstack (modules、傳回值cache、syndic、salt-ssh、API)

開啟base目錄

Saltstack (modules、傳回值cache、syndic、salt-ssh、API)

開啟pillar目錄

Saltstack (modules、傳回值cache、syndic、salt-ssh、API)
Saltstack (modules、傳回值cache、syndic、salt-ssh、API)

3.設定server1上的syndic master

Saltstack (modules、傳回值cache、syndic、salt-ssh、API)
Saltstack (modules、傳回值cache、syndic、salt-ssh、API)

4.在server4上添加server1的salt-key

Saltstack (modules、傳回值cache、syndic、salt-ssh、API)

5.測試配置成功

Saltstack (modules、傳回值cache、syndic、salt-ssh、API)

五.salt ssh遠端連接配接

      salt需要安裝和啟動minion,這樣master才能控制minion。

對于遠端執行指令,最常見的方法是用ssh,因為直接啟動遠端的sshd服務即可。salt ssh可以內建兩者的優點,同時免安裝minion又同時可以使用saltstack的功能特點。

1.安裝salt-ssh

Saltstack (modules、傳回值cache、syndic、salt-ssh、API)

2.将原先的其他服務關閉

Saltstack (modules、傳回值cache、syndic、salt-ssh、API)
Saltstack (modules、傳回值cache、syndic、salt-ssh、API)

3.編輯roster檔案

Saltstack (modules、傳回值cache、syndic、salt-ssh、API)
Saltstack (modules、傳回值cache、syndic、salt-ssh、API)

4.測試salt ssh成功

Saltstack (modules、傳回值cache、syndic、salt-ssh、API)

六.salt api 安裝

1.安裝python-cherrypy子產品和salt-api

Saltstack (modules、傳回值cache、syndic、salt-ssh、API)
Saltstack (modules、傳回值cache、syndic、salt-ssh、API)

2.生成生成自簽名證書

Saltstack (modules、傳回值cache、syndic、salt-ssh、API)

報錯,需要用openssl生成rsa私鑰檔案

Saltstack (modules、傳回值cache、syndic、salt-ssh、API)

生成自簽名證書

Saltstack (modules、傳回值cache、syndic、salt-ssh、API)

3.配置salt-api   ,配置eauth

Saltstack (modules、傳回值cache、syndic、salt-ssh、API)

vim    /etc/salt/master.d/api.conf

Saltstack (modules、傳回值cache、syndic、salt-ssh、API)

vim    /etc/salt/master.d/eauth.conf

Saltstack (modules、傳回值cache、syndic、salt-ssh、API)

4.建立saltapi使用者,設定密碼

Saltstack (modules、傳回值cache、syndic、salt-ssh、API)
Saltstack (modules、傳回值cache、syndic、salt-ssh、API)

5.啟動服務

Saltstack (modules、傳回值cache、syndic、salt-ssh、API)

6.測試使用api

測試工具為作業系統自帶的  

   curl

擷取 token 後邊的串為認證成功後擷取的token串,之後可以不用再次輸入密碼,直接使用本Token即可

Saltstack (modules、傳回值cache、syndic、salt-ssh、API)

遠端執行指令

Saltstack (modules、傳回值cache、syndic、salt-ssh、API)
Saltstack (modules、傳回值cache、syndic、salt-ssh、API)

7.利用網上的寫好的py腳本測試api,需要自己寫界面

列出key值

Saltstack (modules、傳回值cache、syndic、salt-ssh、API)
Saltstack (modules、傳回值cache、syndic、salt-ssh、API)

遠端server5安裝httpd

Saltstack (modules、傳回值cache、syndic、salt-ssh、API)
Saltstack (modules、傳回值cache、syndic、salt-ssh、API)

遠端server5安裝nginx

Saltstack (modules、傳回值cache、syndic、salt-ssh、API)
Saltstack (modules、傳回值cache、syndic、salt-ssh、API)
Saltstack (modules、傳回值cache、syndic、salt-ssh、API)

繼續閱讀