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

作者:纳米龙  发布日期:2014-06-09 17:50:36
 

实际环境的设定:

系统环境: 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版本不同的问题,也会导致连接失败

SaltStack入门到精通第一篇:安装SaltStack的更多相关文章

  1. SaltStack 入门到精通第二篇:Salt-master配置文件详解

    SaltStack 入门到精通第二篇:Salt-master配置文件详解     转自(coocla):http://blog.coocla.org/301.html 原本想要重新翻译salt-mas ...

  2. 【OpenCV入门指南】第一篇 安装OpenCV

    http://blog.csdn.net/morewindows/article/details/8225783/ win10下vs2015配置Opencv3.1.0过程详解(转) http://ww ...

  3. js教程--从入门到精通 第一篇 js的前世今生以及js中基本数据类型和引入方式

    1.Javascript前世今生   1.1.什么是Javascript       Javascript运行于Javascript [解释器/引擎]中的解释性脚本语言      Javascript ...

  4. SaltStack 入门到精通第三篇:Salt-Minion配置文件详解

    SaltStack 入门到精通第三篇:Salt-Minion配置文件详解 作者:ArlenJ  发布日期:2014-06-09 17:52:16   ##### 主要配置设置 ##### 配置 默认值 ...

  5. Java入门到精通——基础篇之多线程实现简单的PV操作的进程同步

    Java入门到精通——基础篇之多线程实现简单的PV操作的进程同步 一.概述     PV操作是对信号量进行的操作.     进程同步是指在并发进程之间存在一种制约关系,一个进程的执行依赖另一个进程的消 ...

  6. Promise入门到精通(初级篇)-附代码详细讲解

    Promise入门到精通(初级篇)-附代码详细讲解 ​     Promise,中文翻译为承诺,约定,契约,从字面意思来看,这应该是类似某种协议,规定了什么事件发生的条件和触发方法. ​     Pr ...

  7. Egret入门学习日记 --- 第一篇 (引擎的选择)

    第一篇 (引擎的选择) 我人比较笨,得慢慢学,我就一点一点来好了. 首先,我个人喜欢游戏.网页开发相对游戏开发来说,网页开发实在太枯燥了,没劲.所以打算转游戏开发了. 游戏开发要选择游戏引擎,我去看了 ...

  8. Jmeter(四十四) - 从入门到精通高级篇 - Jmeter远程启动(本地运行+远程运行)(详解教程)

    1.简介 这篇文章其实很简单,就是为下一篇文章做一个铺垫,所以宏哥给小伙伴或童鞋们提前热身一下. 2.什么是远程运行? 远程执行,就是脚本放在本地,执行却在另一台电脑上执行,当然,可以是远程多台电脑一 ...

  9. saltstack入门至放弃之salt安装部署

    学习了一段时间的saltstack,是时候记录下了.友提:学习环境是两台centos_7.2_x64机器 系统初始化: 两台机器执行以下脚本即可(友提:两台服务器的主机名配置在/etc/hosts中, ...

随机推荐

  1. ML、DL相关资源

    1. http://x-algo.cn/index.php/category/nlp/

  2. String 转化Calendar

    SimpleDateFormat sdf = new SimpleDateFormat( "yyyy-MM-dd HH:mm:ss" ); Date dateExecute = s ...

  3. Kafka:ZK+Kafka+Spark Streaming集群环境搭建(二十六)Structured Streaming:WARN clients.NetworkClient: Error while fetching metadata with correlation id 1 : {my-topic=LEADER_NOT_AVAILABLE}

    问题描述: 我之前使用kafka的命令删除了改topic: ./kafka-topics.sh --delete --zookeeper [zookeeper server]  --topic [to ...

  4. Robotframework(4):创建变量的类型和使用

    转载:http://www.cnblogs.com/CCGGAAG/p/7800321.html 实际的测试过程中,编写脚本时,我们需要创建一些变量来暂时或者永久性的存储数据,那么在Robotfram ...

  5. 【python】安装bencode

    C:\Users\horn1\Desktop\python\35-pytorrent>pip install bencodeCollecting bencode Downloading http ...

  6. ngularJs项目实战!05: 不同controller作用域之间通信的方式

    最近在做d3js + angularjs项目中,经常遇到d3组件与angularjs模块间通信的问题,以及angularjs多个作用域之间互相通信的问题.关于angularjs的作用域概念及其继承模式 ...

  7. .net部署时常见问题

    站点提示“不允许的父路径”怎么办 error: 40 - Could not open a connection to SQL Server解决办法 无法识别的属性“targetFramework”. ...

  8. Transaction And Lock--READ COMMITTED隔离级别下的"脏读"

    在READ UNCOMMITTED事务隔离级别下或使用WITH(NOLOCK)来查询数据时,会出现脏读情况,因此对于一些比较"关键"的业务,会要求不能使用WITH(NOLOCK)或 ...

  9. git ingore添加忽略文件无较的解决方法

    一.启动Git Bash并切换到项目目录下 二.执行下列语句: git rm -r --cached . git add . git commit -m 'update .gitignore' 三.O ...

  10. ubuntu iptables设置【转】

    root@qustdjx-K42JZ:/home/qustdjx# iptables -L -nChain INPUT (policy ACCEPT)target     prot opt sourc ...