> CentOS > CentOS教程 >

CentOS安装配置SaltStack

一、SaltStack简介
SaltStack是一种全新的基础设置管理方式,部署轻松,在几分钟内可运作起来,扩展性好,很容易管理上万台服务器,速度够快,服务器之间秒级通讯。通过部署SaltStack环境,我们可以在成千上万台服务器上做到批量执行命令,根据不同业务特性进行配置集中化管理、分发文件、采集服务器数据、操作系统基础及软件包管理等,SaltStack是运维人员提高工作效率、规范业务配置与操作的利器。

二、实验环境   
1、版本
系统版本:CentOS 6.4 64bit
Python版本:原生版2.6.6
Salt版本:2014.7.1
2、实验架构

Salt-master: 192.168.1.225   soft:salt-master
Salt-minion01:192.168.1.226  soft:salt-minion
Salt-minion02:192.168.1.228  soft:salt-minion
三、开始安装Salt
此次安装SaltStack采用yum安装方式,所以需要借助第三方yum源(epel和rpmforge)
1、安装epel源
# rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
# sed -i 's@^#@@' /etc/yum.repos.d/epel.repo
# sed -i 's@mirrorlist@#mirrorlist@' /etc/yum.repos.d/epel.repo
2、安装rpmforge源
  # rpm -Uvh http://apt.sw.be/redhat/el6/en/x86_64/rpmforge/RPMS/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm

3、安装依赖包
  # yum -y install python-jinja2

4、安装SaltStack包
服务器安装salt-master包
# yum -y install salt-master

其余被控端安装salt-minion包
# yum -y install salt-minion
四、着手配置SaltStack
1、master主控端关键项配置
# vim /etc/salt/master
interface: 0.0.0.0    //绑定Master通信IP
auto_accept: True     //自动认证,避免手动运行salt-key来确认证书信任
file_roots:           //指定saltstack文件根目录位置
  base:
    - /srv/salt
2、更新被控端配置
# vim /etc/salt/minion
master: 192.168.0.106     //指定Master主机IP地址
id: SaltStack_minion_01   //修改被控端主机识别id,建议使用操作系统主机名来设置
五、启动SaltStack服务
1、服务端启动salt-master服务
# /etc/init.d/salt-master start
# chkconfig salt-master on

2、被控端启动salt-minion服务
# /etc/init.d/salt-minion start
# chkconfig salt-minion on

六、使用SaltStack

1、在master端查看公钥列表
[root@localhost ~]# salt-key -L
Accepted Keys:           
SaltStack_minion_01      
SaltStack_minion_02       
Unaccepted Keys:         
Rejected Keys:
2、测试被控主机的连通性、硬盘的使用率、网络接口地址
# salt '*' test.ping
# salt '*' disk.usage
# salt '*' network.interfaces
3、远程执行命令测试
cmd模块包含的shell的输出在被控端,比如cmd.run and cmd.run_all

# salt '*' cmd.run date
# salt '*' cmd.run uptime
# salt '*' cmd.run 'df -h'
# salt '*' cmd.run 'ls -l /etc'
pkg函数自动映射本地系统的包管理到salt函数

  # salt '*' pkg.install vim

七、salt-key参数
1、salt-key常用选项
-L, --list-all

  #显示已经或未认证的被控端id,Accepted Keys为已认证清单;Unaccepted Keys为未认证清单

-a ACCEPT, --accept=ACCEPT

  #接受单个id证书请求

-A, --accept-all

  #接受所有id证书请求

-r REJECT, --reject=REJECT

#拒绝指定的公钥
-R, --reject-all

  #拒绝所有正在请求的公钥

-d DELETE, --delete=DELETE

  #删除指定的公钥

-D, --delete-all

  #删除所有的公钥

2、salt-key返回信息
Accepted Keys:接受的公钥列表或者是被控主机

Unaccepted Keys:未被接受的公钥列表

Rejected Keys:被拒绝的公钥列表

(责任编辑:IT)