首页 > 代码库 > SaltStack 入门到精通 - 第一篇: 安装SaltStack

SaltStack 入门到精通 - 第一篇: 安装SaltStack

实际环境的设定:

系统环境:centos6 或centos5
实验机器:192.168.1.100
软件需求:
salt 套件,及其需求环境
实验目的:成功安装salt,并实现salt主从间通讯
特殊设置:
其它目的:


安装SaltStack(下面简称为salt)

    

epel安装:salt安装需要epel源支持,所以在安装salt前需要先安装epel包

# centos5 下载下面rpm
 wget -O    epel.rpm https://dl.fedoraproject.org/pub/epel/5/x86_64/epel-release-5-4.noarch.rpm
 
# centos 6 下载下面rpm
 wget -O epel.rpm http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
## 安装epel
rpm -Uvh epel.rpm


salt-master 安装 : 仅需要在salt的master主机上安装

yum -y install salt-master


salt-minion 安装 :监控管理的机器上面安装该控制端

yum -y install salt-minion


配置SaltStack


备注:根据需要选择配置下面的配置文件,这里因为是一个机器上面配置测试,所以两个文件都要配置。


配置salt-master : /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 : /etc/salt/minion

# minion的识别ID,可以是IP,域名,或是可以通过DNS解析的字符串
id: 192.168.0.100

# salt运行的用户权限
user: root

# master的识别ID,可以是IP,域名,或是可以通过DNS解析的字符串
master : 192.168.0.100

# 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

# 启动master
service salt-master restart

# 启动minion
service salt-minion restart

#------------------------------------------
# 也可以使用下面的启动方式
/usr/bin/python2.6 /usr/bin/salt-master -d
/usr/bin/python2.6 /usr/bin/salt-minion -d


注意: saltstack 是使用python2的语言编写,对python3的兼容性不好,请使用python2的环境



测试SaltStack


接受salt-minion的认证请求

[root@yw_home salt]# salt-key
Accepted Keys:
Unaccepted Keys:
192.168.0.100

[root@yw_home salt]# salt-key -y -a 192.168.0.100
The following keys are going to be accepted:
Unaccepted Keys:
192.168.0.100
Key for minion 192.168.0.100 accepted.


去除salt-minion的认证

## 如果觉得该minion不需要了,可以***
[root@yw_home salt]# salt-key -y -d  192.168.0.100
Deleting the following keys:
Accepted Keys:
192.168.0.100
Key for minion 192.168.0.100 deleted.


备注: 更多的salt-key操作,会在另一个文章中说明


开始测试saltstack

[root@yw_home salt]# salt ‘192.168.0.100‘ test.ping   --show-timeout            
192.168.0.100:
    True


备注:如果返回true则成功,如果无结果,则说明连接为失败,可以检查防火墙是否开放了4506,4505端口,或是重启salt-minion再试试,有时候master跟minion版本不同的问题,也会导致连接失败





本文出自 “纳米龙” 博客,请务必保留此出处http://arlen.blog.51cto.com/7175583/1423978