Saltstack是一个具备puppet与func功能为一身的集中化,轻量级的自动化运维管理工具,使用python编写,功能非常强大,可以使用EPEL快速安装。相比较puppet,安装和配置更加容易和简单。
EPEL Install
[root@ipython ~]# rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
###CentOS 5.x###
rpm -Uvh https://dl.fedoraproject.org/pub/epel/5/x86_64/epel-release-5-4.noarch.rpm
1、安装salt-master(仅安装于Master主机)
[root@ipython ~]# yum -y install salt-master salt
####salt-minmion 被管理机器###
[root@ipython ~]# yum -y install salt-minion
2、配置Saltstack
##############salt-Master##################
[root@ipython ~]# awk ‘!/^[\ ]$/‘ /etc/salt/master
# salt运行的用户,影响到salt的执行权限 #
user: root
#s alt的运行线程,开的线程越多一般处理的速度越快,但一般不要超过CPU的个数 #
worker_threads: 10
# master的管理端口 #
publish_port : 4505
# master跟minion的通讯端口,用于文件服务,认证,接受返回结果等 #
ret_port : 4506
# 如果这个master运行的salt-syndic连接到了一个更高层级的master,那么这个参数需要配置成连接到的这个高层级master的监听端口 #
syndic_master_port : 4506
# 指定pid文件位置 #
pidfile: /var/run/salt-master.pid
# saltstack 可以控制的文件系统的开始位置 #
root_dir: /
# 日志文件地址 #
log_file: /var/log/salt_master.log
# 分组设置 #
nodegroups:
group_all: ‘*‘
# salt state执行时候的根目录 #
file_roots:
base:
- /etc/salt/file
# 设置pillar 的根目录 #
pillar_roots:
base:
- /etc/salt/pillar
##############salt-Minion##################
[root@ipython ~]# awk ‘!/^[\ ]$/‘ /etc/salt/minion
# minion的识别ID,可以是IP,域名,或是可以通过DNS解析的字符串 #
id: 192.168.1.99
# salt运行的用户权限 #
user: root
# master的识别ID,可以是IP,域名,或是可以通过DNS解析的字符串 #
master : 192.168.1.99
# master通讯端口 #
master_port: 4506
# 备份模式,minion是本地备份,当进行文件管理时的文件备份模式 #
backup_mode: minion
# 执行salt-call时候的输出方式 #
output: nested
# minion等待master接受认证的时间 #
acceptance_wait_time: 10
# 失败重连次数,0表示无限次,非零会不断尝试到设置值后停止尝试 #
acceptance_wait_time_max: 0
# 重新认证延迟时间,可以避免因为master的key改变导致minion需要重新认证的syn风暴 #
random_reauth_delay: 60
# 日志文件位置 #
log_file: /var/logs/salt_minion.log
# 文件路径基本位置 #
file_roots:
base:
- /etc/salt/minion/file
# pillar基本位置 #
pillar_roots:
base:
- /data/salt/minion/pillar
#####启动SaltStack#####
[root@ipython ~]# service salt-master start
Starting salt-master daemon: [ OK ]
[root@ipython ~]# service salt-minion start
Starting salt-minion daemon: [ OK ]
OR
[root@ipython ~]# python2.