34rwefd 发表于 2014-12-10 08:20:20

saltsatck安装

实在是厌倦了对大量服务器日复一日的重复操作。尤其是在虚拟化的时代,系统的每个组件都有很多个相同的节点在运行,更让重复的次数再乘以N。 当我发现Salt的时候,我的眼前一亮:这正是我所需要的东西。
安装管理端(master)

# 安装EPEL,注意选择合适的版本
rpm -ivh http://mirrors.sohu.com/fedora-epel/6/x86_64/epel-release-6-8.noarch.rpm
yum update

# 安装master
yum install salt-master      

# 修改配置
vim /etc/salt/master

# 最基本的设定服务端监听的IP(比如使用VIP做master的高可用时):
# interface: 服务端监听IP
# 其他配置参考 http://docs.saltstack.com/ref/configuration/master.html

# 启动服务(以下命令等效)
salt-master -d
/etc/init.d/salt-master start
service salt-master start

安装被管理端(minion)

# 安装EPEL,注意选择合适的版本
rpm -ivh http://mirrors.sohu.com/fedora-epel/6/x86_64/epel-release-6-8.noarch.rpm
yum update

# 安装minion
yum install salt-minion   

# 修改配置
vim /etc/salt/minion

# 最基本的设定是指定master地址,以及本机标识符:
# master: master的主机名或IP地址
# id: 本机标识符
# 添加ID时注意中间需要有空格

# 启动服务(以下命令等效)
salt-minion -d
/etc/init.d/salt-minion start
service salt-minion start


接受minion的托管请求

minion向master投诚后,还需要master接受才行。这个过程叫做“授信”。

Salt底层使用公钥-私钥证书来保证通信信道的安全。具体的机制可以参考ZeroMQ的相关内容。Salt已经屏蔽了底层的细节,只需要使用封装好的命令:

# 在master上运行
# 查看所有minion
salt-key -L



Accepted Keys:
windows
bond_app_server_main
mac_os_vm
salt-master
Unaccepted Keys:
minion1
minion2
Rejected Keys:

其中Unaccepted Keys是未许可的minion。可以使用下面的命令通过认证:

salt-key -a minion1

测试

安装配置好之后,首先要测试一下联通性:salt '*' test.ping。salt会列出每个认证过的minion的联通状态(true 或 false)。

再举一些例子:

# 查询主机运行了多长时间
sudo salt '*' cmd.run "uptime"

# 批量重启服务
salt '*' cmd.run "service httpd restart"

# 让多台机器一起,使用Apache Bench进行压力测试
salt '*' cmd.run "ab -n 10 -c 2 http://www.google.com/"

注意,默认情况下master和minion之间使用以下端口进行通信:

    4505(publish_port): salt的消息发布系统

    4506(ret_port):salt客户端与服务端通信的端口

网络的设置需要保证这些端口可以访问。



页: [1]
查看完整版本: saltsatck安装