SaltStack及SaltStack WebUI安裝部署

安裝saltstack

環境:
Master:192.168.117.145 (centos7、python2.7)
Minion1:192.168.117.215 (centos7)
Minion2:192.168.117.231 (2008R2)

安裝master

關閉selinux

getenforce       ##查看selinux的狀態
setenforce 0    ##關閉selinux

關閉防火牆

Systemctl stop firewalld   ##關閉防火牆

安裝epel源

安裝master和minion都需要配置epel,官方地址:https://fedoraproject.org/wiki/EPEL

yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

安裝並啓動master

可以使用包管理器(centos:yum,ubuntu:apt-get),也可以使用pip安裝,具體可以參考此處使用yum進行安裝,其它可以參考官網說明https://docs.saltstack.com/en/latest/topics/installation/index.html

yum install -y salt-master
systemctl enable salt-master.service  ##開機自啓
systemctl start salt-master

配置/etc/hosts文件

192.168.117.145  Master
192.168.117.215  Node-1
192.168.117.167   R2

ping Node-1以驗證配置結果。

安裝minion

1.安裝
其它安裝方式參考官網說明,windows agent鏈接安裝包下載地址:
https://repo.saltstack.com/#windows

yum install -y salt-minion

2.指定master地址
修改文件/etc/salt/minion

master: 192.168.46.163
Id:Node-1  ##這裏定義後,master認證證書那裏就以這個名稱爲主,默認這裏是註釋狀態。

啓動minion

systemctl enable salt-minion.service
systemctl start salt-minion

master節點Salt-KEY認證

minion啓動完成後,master節點使用salt-key可以看到

[root@localhost ~]# salt-key
Accepted Keys:
Denied Keys:
Unaccepted Keys:  ##不合格KEY
Node-1
Rejected Keys:

配置認證
在服務端上操作

salt-key -a  Node-1

[root@localhost ~]# salt-key
Accepted Keys:  ##接受的KEY
Node-1
Denied Keys:
Unaccepted Keys:
Rejected Keys:

說明:-a :accept ,-A:accept-all,-d:delete,-D:delete-all。可以使用 salt-key 命令查看到已經簽名的客戶端。此時我們在客戶端的 /etc/salt/pki/minion 目錄下面會多出一個minion_master.pub 文件。

測試驗證
示例1: salt '*' test.ping      //檢測通訊是否正常,也可以指定其中一個 'Node-1'

SaltStack及SaltStack WebUI安裝部署

示例2:  salt '*' cmd.run   'df -h'        //遠程執行命令

SaltStack及SaltStack WebUI安裝部署

說明: 這裏的 * 必須是在 master 上已經被接受過的客戶端,可以通過 salt-key 查到,通常是我們已經設定的 id 值。

關於這部分內容,它支持通配、列表以及正則。 比如兩臺客戶端 web10、web11, 那我們可以寫成  salt 'web*'    salt 'web1[02]'  salt -L 'web10,web11'   salt -E 'web(10|11)' 等形式,使用列表,即多個機器用逗號分隔,而且需要加-L,使用正則必須要帶-E選項。

master裝web界面

下載halite 地址:https://github.com/saltstack/halite

[root@localhost ~]# cd /var/www

生成index.html文件,解壓並進入halite目錄下

[root@localhost www]# cd halite/halite/
[root@localhost www]# ./genindex.py -C

安裝salt-api

yum install salt-api

創建用戶salt-api的用戶(非root)

useradd -M -s /sbin/nologin slsapi 

echo 'slsapi' | passwd slsapi --stdin

配置master
修改文件/etc/salt/master

rest_cherrypy:
    host: 0.0.0.0
    port: 8080
    debug: true
    static: /root/halite/halite
    app: /root/halite/halite/index.html
external_auth:
   pam:
     admin:
       - .*
       - '@runner'
       - '@wheel'

重啓master

systemctl restart salt-master

配置salt-api啓動項,設置api開機自啓

systemctl enable salt-api.service

修改服務文件

vi /usr/lib/systemd/system/salt-api.service

修改ExecStart項

ExecStart=/usr/bin/python /var/www/halite/halite/server_bottle.py -d -C -l debug -s cherrypy

啓動salt-api

systemctl daemon-reload
systemctl start salt-api

登錄測試:http://127.0.0.1:8080/app/console
通過salt/salt登陸即可

SaltStack及SaltStack WebUI安裝部署

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