SaltStack 學習筆記 - 第一篇: 安裝SaltStack

實際環境的設定:

系統環境:centos6 或centos5
實驗機器:192.168.1.100
軟件需求:
salt 套件,及其需求環境
實驗目的:成功安裝salt,並實現salt主從間通訊
特殊設置:
其它目的:


安裝SaltStack(下面簡稱爲salt)

    

epel安裝:salt安裝需要epel源支持,所以在安裝salt前需要先安裝epel包

# centos5 下載下面rpm
 wget -O    epel.rpm https://dl.fedoraproject.org/pub/epel/5/x86_64/epel-release-5-4.noarch.rpm
 
# centos 6 下載下面rpm
 wget -O epel.rpm http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
## 安裝epel
rpm -Uvh epel.rpm


salt-master 安裝 : 僅需要在salt的master主機上安裝

yum -y install salt-master


salt-minion 安裝 :監控管理的機器上面安裝該控制端

yum -y install salt-minion


配置SaltStack


備註:根據需要選擇配置下面的配置文件,這裏因爲是一個機器上面配置測試,所以兩個文件都要配置。


配置salt-master : /etc/salt/master

# salt運行的用戶,影響到salt的執行權限
user: root

#s alt的運行線程,開的線程越多一般處理的速度越快,但一般不要超過CPU的個數
worker_threads: 10

# master的管理端口
publish_port : 4505

# master跟minion的通訊端口,用於文件服務,認證,接受返回結果等
ret_port : 4506

# 如果這個master運行的salt-syndic連接到了一個更高層級的master,那麼這個參數需要配置成連接到的這個高層級master的監聽端口
syndic_master_port : 4506

# 指定pid文件位置
pidfile: /var/run/salt-master.pid

# saltstack 可以控制的文件系統的開始位置
root_dir: /

# 日誌文件地址
log_file: /var/log/salt_master.log

# 分組設置
nodegroups:
  group_all: '*'

# salt state執行時候的根目錄
file_roots:
  base:
    - /etc/salt/file

# 設置pillar 的根目錄
pillar_roots:
  base:
    - /etc/salt/pillar


配置salt-minion : /etc/salt/minion

# minion的識別ID,可以是IP,域名,或是可以通過DNS解析的字符串
id: 192.168.0.100

# salt運行的用戶權限
user: root

# master的識別ID,可以是IP,域名,或是可以通過DNS解析的字符串
master : 192.168.0.100

# master通訊端口
master_port: 4506

# 備份模式,minion是本地備份,當進行文件管理時的文件備份模式
backup_mode: minion

# 執行salt-call時候的輸出方式
output: nested

# minion等待master接受認證的時間
acceptance_wait_time: 10

# 失敗重連次數,0表示無限次,非零會不斷嘗試到設置值後停止嘗試
acceptance_wait_time_max: 0

# 重新認證延遲時間,可以避免因爲master的key改變導致minion需要重新認證的syn風暴
random_reauth_delay: 60

# 日誌文件位置
log_file: /var/logs/salt_minion.log

# 文件路徑基本位置
file_roots:
  base:
    - /etc/salt/minion/file
   

# pillar基本位置
pillar_roots:
  base:
    - /data/salt/minion/pillar



啓動SaltStack

# 啓動master
service salt-master restart

# 啓動minion
service salt-minion restart

#------------------------------------------
# 也可以使用下面的啓動方式
/usr/bin/python2.6 /usr/bin/salt-master -d
/usr/bin/python2.6 /usr/bin/salt-minion -d


注意: saltstack 是使用python2的語言編寫,對python3的兼容性不好,請使用python2的環境



測試SaltStack


接受salt-minion的認證請求

[root@yw_home salt]# salt-key
Accepted Keys:
Unaccepted Keys:
192.168.0.100

[root@yw_home salt]# salt-key -y -a 192.168.0.100
The following keys are going to be accepted:
Unaccepted Keys:
192.168.0.100
Key for minion 192.168.0.100 accepted.


去除salt-minion的認證

## 如果覺得該minion不需要了,可以***
[root@yw_home salt]# salt-key -y -d  192.168.0.100
Deleting the following keys:
Accepted Keys:
192.168.0.100
Key for minion 192.168.0.100 deleted.


備註: 更多的salt-key操作,會在另一個文章中說明


開始測試saltstack

[root@yw_home salt]# salt '192.168.0.100' test.ping   --show-timeout            
192.168.0.100:
    True


備註:如果返回true則成功,如果無結果,則說明連接爲失敗,可以檢查防火牆是否開放了4506,4505端口,或是重啓salt-minion再試試,有時候master跟minion版本不同的問題,也會導致連接失敗





發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章