Saltstack基本環境部署
基本環境
角色 系統 主機名 IP
Master/Minion Centos 7 Master 192.168.1.107
Minion Centos 7 Minion 192.168.1.128
以下操作在所有節點執行
修改主機名(以Master為例)
[[email protected] ~]# vim /etc/hostname
Master
關閉防火墻
[[email protected] ~]# systemctl stop firewalld.service [[email protected] ~]# systemctl disable firewalld.service
關閉selinux
[[email protected] ~]# vim /etc/sysconfig/selinux
修改
SELINUX=disabled
配置解析
[[email protected] ~]# vim /etc/hosts
添加
Master 192.168.1.107
Minion 192.168.1.128
安裝源
[[email protected] ~]# wget http://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm [[email protected] ~]# rpm -ivh epel-release-latest-7.noarch.rpm
在Master端安裝包
[[email protected] ~]# yum -y install salt-master salt-minion
啟動程序並設置為開機自啟動
[[email protected] ~]# systemctl start salt-master [[email protected] ~]# systemctl start salt-minion [[email protected] ~]# systemctl enable salt-master [[email protected] ~]# systemctl enable salt-minion
修改配置文件(將客戶端指向Master)
[[email protected] ~]# vim /etc/salt/minion
修改(第16行)
master: 192.168.1.107
重啟minion服務
[[email protected] ~]# systemctl restart salt-minion
在Minion端安裝包
[[email protected] ~]# yum -y install salt-minion
啟動程序並設置為開機自啟動
[[email protected] ~]# systemctl start salt-minion [[email protected] ~]# systemctl enable salt-minion
修改配置文件(將客戶端指向Master)
[[email protected] ~]# vim /etc/salt/minion
修改(第16行)
master: 192.168.1.107
重啟minion服務
[[email protected] ~]# systemctl restart salt-minion
客戶端連接服務端
首先Minion會發送一個請求(key)到服務端,服務端需要同意Minion才可以控制
Master端同意Minion端請求
同意所有
[[email protected] ~]# salt-key -A
The following keys are going to be accepted:
Unaccepted Keys:
Master
Minion
Proceed? [n/Y] y
Key for minion Master accepted.
Key for minion Minion accepted.
查看當前的key
[[email protected] ~]# salt-key
Accepted Keys:
Master
Minion
Denied Keys:
Unaccepted Keys:
Rejected Keys:
相關命令
支持通配符 salt-key -a linux*
刪除所有salt-key -D
通配符刪除單個 salt-key -d
功能
遠程功能
[[email protected] ~]# salt ‘*‘ test.ping
Master:
True
Minion:
True
詳解: salt語法,test是模塊,ping是模塊的方法
[[email protected] ~]# salt ‘*‘ cmd.run ‘uptime‘
Master:
15:54:33 up 1:26, 3 users, load average: 0.00, 0.14, 0.24
Minion:
15:54:33 up 1:26, 3 users, load average: 0.08, 0.03, 0.06
詳解:run模塊萬能模塊,執行所有命令可以
Hppd配置管理
創建salt配置文件存放文路徑
[[email protected] ~]# mkdir -p /srv/salt
修改master主配置文件(設置salt配置文件存放)
[[email protected] ~]# vim /etc/salt/master
(去註釋#,註意格式)
file_roots:
base:
- /srv/salt/
重啟master服務
[[email protected] ~]# systemctl restart salt-master
編輯apache.sls文件
[[email protected] ~]# cd /srv/salt/ [[email protected] salt]# vim apache.sls
apache-install:
pkg.installed:
- names:
- httpd
- httpd-devel
apache-server:
service.running:
- name: httpd
- enable: Ture
- reload: Ture
註意:千萬要註意格式尤其空格!!!
執行
[[email protected] salt]# salt ‘*‘ state.sls apache
設置高級狀態(可以指定哪個主機執行哪個狀態)
[[email protected] salt]# vim top.sls
base:
‘*‘:
- apache
執行高級狀態
[[email protected] salt]# salt ‘*‘ state.highstate
本文出自 “duyuheng” 博客,謝絕轉載!
Saltstack基本環境部署