系统环境:
1
2
3
4
5
6
7
|
[root@salt_server home]
# ifconfig eth0 | grep "inet addr:" | awk -F: '{print $2}' | awk '{print $1}'
192.168.100.228
[root@salt_server home]
# cat /etc/redhat-release
CentOS release 6.3 (Final)
[root@salt_server home]
# uname -r
2.6.32-279.el6.x86_64
[root@salt_server home]
#
|
下载地址
http://ftp.linux.ncsu.edu/pub/epel/6/x86_64/
参考文章
http://docs.saltstack.cn/topics/installation/rhel.html
在安装之前需要注意几个包
1
2
3
4
5
6
7
8
9
|
Python 不用说大家都知道 这玩意就python写的
ZeroMQ 消息中间件相当于puppet的rabbitMQ、activeMQ
PyCrypto Python密码工具包
M2Crypto 加密模块 是Python OpenSSL封装
msgpack-python 高性能的消息交换格式
YAML 不说大家都知道 文件格式
Jinja2 解析Salt States (在master配置文件中配置)
MarkupSafe Implements a XML
/HTML/XHTML
Markup safe string
for
Python
apache-libcloud 与大量的主流云服务提供者进行交互时统一API的Python类
|
在安装之前我们需要设置防火墙的端口
1
|
lokkit -p 4505:tcp -p 4506:tcp
|
一、安装master salt-master 2014.1.1版本
下载安装
记住路径下次直接安装不需要下载
如果想本地保存需要缓存
vim /etc/yum.conf
keepcache=1 修改成1
安装master 17.0.5版本,首先要安装好本地源码
1
2
|
[root@salt_server mnt]
# yum install python-jinja2
[root@salt_server mnt]
# yum install salt-master
|
安装minion 17.0.5版本
1
2
|
[root@salt_client1 ~]
# yum install python-jinja2
[root@salt_client1 ~]
# yum install salt-minion
|
三、启动master
[root@salt_server ~]# vim /etc/salt/master 如下是正确写法不然会报错
1
2
3
4
5
6
|
#interface: 0.0.0.0
interface: 192.168.100.228
[root@salt_server ~]
# /etc/rc.d/init.d/salt-master start
Starting salt-master daemon: [ OK ]
[root@salt_server ~]
# chkconfig --level 35 salt-master on
[root@salt_server ~]
#
|
四、修改minion然后启动
1
2
3
|
[root@salt_client1 ~]
# cat /etc/salt/minion | grep 100.228
master: 192.168.100.228 这个maste可以填写maste的主机名也可以使ip地址
[root@salt_client1 ~]
#
|
还需要修改id 这个ID是服务器标识客户端的东西,如果配置ID 服务端将是以ID的 名字为标准,需要注意
id: salt_client1
1
2
3
4
|
[root@salt_client1 ~]
# /etc/rc.d/init.d/salt-minion start
Starting salt-minion daemon: [ OK ]
[root@salt_client1 ~]
# chkconfig --level 35 salt-minion on
[root@salt_client1 ~]
#
|
五、在master上查看是否有客户端key的请求
1
2
3
4
5
6
|
[root@salt_server ~]
# salt-key -L
Accepted Keys:
Unaccepted Keys:
salt_client1
Rejected Keys:
[root@salt_server ~]
#
|
六、master来批准客户端的请求文件
---------------A是通过客户端全部的请求文件
---------------d是这个选项是删除证书请求文件
1
2
3
4
5
6
7
|
[root@salt_server ~]
# salt-key -a salt_client1
The following keys are going to be accepted:
Unaccepted Keys:
salt_client1
Proceed? [n
/Y
] Y
Key
for
minion salt_client1 accepted.
[root@salt_server ~]
#
|
如果不想去手动确认,那么我们修改配置文件就可以自动确认
修改配置文件vim /etc/salt/master
#auto_accept: False
去掉其中的#号 把False修改成True就可以
查看key
1
2
3
4
5
6
7
8
|
[root@salt_server base]
# salt-key -f salt_client1
Accepted Keys:
salt_client1: 20:a6:2d:6b:24:4a:a9:
bc
:77:72:ba:6f:30:22:20:7f
[root@salt_server base]
# salt 'salt_client1' cmd.run 'salt-call key.finger --local'
salt_client1:
local
:
20:a6:2d:6b:24:4a:a9:
bc
:77:72:ba:6f:30:22:20:7f
[root@salt_server base]
#
|
测试:
1
2
3
4
5
6
|
[root@salt_server ~]
# salt 'salt*' test.ping
salt_client1:
True
salt_client2:
True
[root@salt_server ~]
#
|
本文转自devilangel 51CTO博客,原文链接:http://blog.51cto.com/devliangel/1431186,如需转载请自行联系原作者