1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
|
我的博客已迁移到xdoujiang.com请去那边和我交流
SaltStack是(C
/S
)架构的集中化管理平台,SaltStack基于Python语言,
采用zeromq消息队列进行通信(tcp,ipc)。
一、基础环境
1、角色、ip、版本、内核
masterA 10.1.10.117 3.2.0-4-amd64 7.8 master
minionB 10.1.10.185 3.2.0-4-amd64 7.8 minion
2、安装依赖包
apt-get -y
install
python python-dateutil python-jinja2 python-apt python-yaml python-pkg-resources python-six ca-certificates python-chardet openssl python-m2crypto python-crypto msgpack-python python-zmq python-support libgmp10 python-git python-gitdb git libjs-jquery libzmq1 libcurl3-gnutls perl-modules liberror-perl git-
man
dctrl-tools
二、安装saltstack(masterA)
1、安装salt-master
dpkg -i python-urllib3_1.7.1-1~bpo70+1_all.deb
dpkg -i python-requests_2.0.0-1~bpo70+1_all.deb
dpkg -i salt-common_2015.5.3+ds-1~bpo70+2_all.deb
dpkg -i libzmq3_3.2.3+dfsg-1~bpo70~dst+1_amd64.deb
dpkg -i python-zmq_13.1.0-1~bpo70~dst+1_amd64.deb
dpkg -i salt-master_2015.5.3+ds-1~bpo70+2_all.deb
PS:我这里是通过其他机器先添加源下载deb包
deb http:
//debian
.saltstack.com
/debian
wheezy-saltstack main
wget -q -O -
"http://debian.saltstack.com/debian-salt-team-joehealy.gpg.key"
| apt-key add -
2、配置
1)备份下配置
cp
/etc/salt/master
/etc/salt/master
.bak
2)
echo
"default_include: master.d/*.conf"
>>
/etc/salt/master
3)添加以下内容
cat
/etc/salt/master
.d
/master
.conf
interface: 10.1.10.117
publish_port: 4505
ret_port: 4506
pidfile:
/var/run/salt-master
.pid
sock_dir:
/var/run/salt/master
log_file:
/var/log/salt/master
key_logfile:
/var/log/salt/key
3、重启服务
/etc/init
.d
/salt-master
restart
[ ok ] Restarting salt master control daemon: salt-master.
4、查看端口和进程
1)查看进程
ps
-ef |
grep
salt
root 9078 1 0 14:18 ? 00:00:00
/usr/bin/python
/usr/bin/salt-master
-d
root 9079 9078 3 14:18 ? 00:00:00
/usr/bin/python
/usr/bin/salt-master
-d
root 9080 9078 0 14:18 ? 00:00:00
/usr/bin/python
/usr/bin/salt-master
-d
root 9081 9078 0 14:18 ? 00:00:00
/usr/bin/python
/usr/bin/salt-master
-d
root 9086 9078 0 14:18 ? 00:00:00
/usr/bin/python
/usr/bin/salt-master
-d
root 9087 9086 5 14:18 ? 00:00:00
/usr/bin/python
/usr/bin/salt-master
-d
root 9088 9086 4 14:18 ? 00:00:00
/usr/bin/python
/usr/bin/salt-master
-d
root 9093 9086 5 14:18 ? 00:00:00
/usr/bin/python
/usr/bin/salt-master
-d
root 9094 9086 5 14:18 ? 00:00:00
/usr/bin/python
/usr/bin/salt-master
-d
root 9099 9086 4 14:18 ? 00:00:00
/usr/bin/python
/usr/bin/salt-master
-d
root 9100 9086 0 14:18 ? 00:00:00
/usr/bin/python
/usr/bin/salt-master
-d
2)查看端口
netstat
-tupnl |
grep
python
tcp 0 0 10.1.10.117:4505 0.0.0.0:* LISTEN 9517
/python
tcp 0 0 10.1.10.117:4506 0.0.0.0:* LISTEN 9539
/python
三、安装saltstack(minionB)
1、安装salt-minion包
dpkg -i python-urllib3_1.7.1-1~bpo70+1_all.deb
dpkg -i python-requests_2.0.0-1~bpo70+1_all.deb
dpkg -i salt-common_2015.5.3+ds-1~bpo70+2_all.deb
dpkg -i libzmq3_3.2.3+dfsg-1~bpo70~dst+1_amd64.deb
dpkg -i python-zmq_13.1.0-1~bpo70~dst+1_amd64.deb
dpkg -i salt-minion_2015.5.3+ds-1~bpo70+2_all.deb
2、配置
1)备份下配置
cp
/etc/salt/minion
/etc/salt/minion
.bak
2)
echo
"default_include: minion.d/*.conf"
>>
/etc/salt/minion
3)添加以下内容
cat
/etc/salt/minion
.d
/minion
.conf
master: 10.1.10.117
id
: 10.1.10.185
3、重启服务
/etc/init
.d
/salt-minion
restart
[ ok ] Restarting salt minion control daemon: salt-minion.
4、查看进程
ps
-ef |
grep
min
root 8135 1 0 14:27 ? 00:00:00
/usr/bin/python
/usr/bin/salt-minion
-d
5、使用salt-minion命令测试
salt-minion -l debug
[DEBUG ] Reading configuration from
/etc/salt/minion
[DEBUG ] Including configuration from
'/etc/salt/minion.d/minion.conf'
[DEBUG ] Reading configuration from
/etc/salt/minion
.d
/minion
.conf
[DEBUG ] Configuration
file
path:
/etc/salt/minion
[INFO ] Setting up the Salt Minion
"10.1.10.185"
[DEBUG ] Created pidfile:
/var/run/salt-minion
.pid
[DEBUG ] Reading configuration from
/etc/salt/minion
[DEBUG ] Including configuration from
'/etc/salt/minion.d/minion.conf'
[DEBUG ] Reading configuration from
/etc/salt/minion
.d
/minion
.conf
[DEBUG ] Attempting to authenticate with the Salt Master at 10.1.10.117
[DEBUG ] Initializing new SAuth
for
(
'/etc/salt/pki/minion'
,
'10.1.10.185'
,
'tcp://10.1.10.117:4506'
)
[ERROR ] The Salt Master has cached the public key
for
this node, this salt minion will wait
for
10 seconds before attempting to re-authenticate
[INFO ] Waiting 10 seconds before retry.
[ERROR ] The Salt Master has cached the public key
for
this node, this salt minion will wait
for
10 seconds before attempting to re-authenticate
[INFO ] Waiting 10 seconds before retry.
[ERROR ] The Salt Master has cached the public key
for
this node, this salt minion will wait
for
10 seconds before attempting to re-authenticate
[INFO ] Waiting 10 seconds before retry.
四、签名并测试
1、查看到10.1.10.185还没验证通过
salt-key list
Accepted Keys:
Denied Keys:
Unaccepted Keys:
10.1.10.185
Rejected Keys:
2、验证通过
salt-key -a 10.1.10.185
The following keys are going to be accepted:
Unaccepted Keys:
10.1.10.185
Proceed? [n
/Y
] y
Key
for
minion 10.1.10.185 accepted.
3、查看下,已经通过验证
salt-key list
Accepted Keys:
10.1.10.185
Denied Keys:
Unaccepted Keys:
Rejected Keys:
五、测试
1、
cat
1.txt
10.1.10.185
2、salt `
cat
1.txt` cmd.run
'uptime'
10.1.10.185:
16:07:42 up 36 min, 2
users
, load average: 0.00, 0.01, 0.05
已经能看到minion端的uptime信息了
六、参考文章
https:
//docs
.saltstack.com
/en/latest/topics/installation/index
.html
http:
//docs
.saltstack.com/
https:
//pypi
.python.org
/pypi/salt
http:
//debian
.saltstack.com/
|