CentOS 6.5安装SaltStack管理服务器

SaltStack介绍
SaltStack是一个基于python开发的服务器管理工具。允许管理员在Master端控制Minion端。与同类工具Ansible不一样的是,SaltStack不是采用ssh通信的。它需要在被管理的服务器上安装客户端Minion。因此速度非常快。

场景
目前有700多台阿里云ecs服务器,使用python+paramiko远程ssh管理的。每次远程连接子服务器都很耗时、开销很大。并且管理起来不方便。因为脚本只是针对某种特定场合开发,当出现新的项目需要部署时,还得写新的脚本代码。于是想试试SaltStack。


SaltStack安装配置

EPEL源配置

rpm -ivh https://mirrors.tuna.tsinghua.edu.cn/epel/epel-release-latest-6.noarch.rpm

安装并启动管理端

yum -y install salt-master
service salt-master start

如果提示权限问题,请使用root用户或者sudo提权。

在被管理的服务器上安装客户端

yum -y install salt-minion
# 修改配置文件将 /etc/salt/minion
#master: salt
# 改成
master: 服务端ip
# 也可以直接用sed命令替换,将master_ip改成ip地址
sed -i 's/#master: salt/master: master_ip/' /etc/salt/minion
# 在将本机ip写入minion_id文件
echo 10.170.164.22 > /etc/salt/minion_id
# 启动客户端
service salt-minion start

在yum前同样需要配置EPEL源

关于认证

minion在第一次启动的时候会在/etc/salt/pkl/minion目录生成minion_master.pub、minion.pem、minion.pub三个文件,然后会将pub文件发送给服务端master。master在收到minion的public key后,通过salt-key命令accept minion public key,此时master的/etc/salt/pki/master/minions目录下会生成以minion id命令的public key。minion id就是/etc/salt/minion_id文件中指定的。这样master就可以对minion发送指令了。

查看证书签证情况

salt-key -L
Accepted Keys:
Denied Keys:
Unaccepted Keys:
10.170.164.22
Rejected Keys:

这里显示10.170.164.22未认证。

同意签证所有没有接受的签证

sudo salt-key -A -y
The following keys are going to be accepted:
Unaccepted Keys:
10.170.164.22
Key for minion 10.170.164.22 accepted.

再次查看签证情况,就可以看到10.170.164.22到Accepted Keys下面去了。

执行远程命令

salt '*' cmd.run 'ls /home -al'
salt '*' test.ping

本文未完待后续学习及补充.....

本博客采用 知识共享署名-禁止演绎 4.0 国际许可协议 进行许可

本文标题:CentOS 6.5安装SaltStack管理服务器

本文地址:https://jizhong.plus/post/2018/01/centos-install-saltstack.html