高效运维1:SaltStack 安装配置

一、SaltStack简介

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

二、实验环境

1、版本

系统版本:CentOS 6.4 64bit
Python版本:原生版2.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 ‘[email protected]^#@@‘ /etc/yum.repos.d/epel.repo
# sed -i ‘[email protected]@#[email protected]‘ /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、修改minion配置文件

# vim /etc/salt/minion
master: 192.168.0.106
id: SaltStack_minion_01	

#master端的ip地址,注意冒号后面一定要有空格,否则语法错误
#客户端的标识 用于在salt-key显示在公钥列表中,否则就会显示ip地址;冒号后一定要有空格

2、可选参数

# vim /etc/salt/master
auto_accept: True		

#为True表示master端自动接受请求;为False需手工接受验证请求,否则一直验证

五、启动SaltStack服务

1、服务端启动salt-master服务
# /etc/init.d/salt-master start

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

六、使用SaltStack

1、在master端查看公钥列表

[[email protected] ~]# 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
#列出所有的公钥
  • -a ACCEPT, --accept=ACCEPT
#接受指定的公钥
  • -A, --accept-all
#接受所有正在请求的公钥
  • -r REJECT, --reject=REJECT
#拒绝指定的公钥
  • -R, --reject-all
#拒绝所有正在请求的公钥
  • -d DELETE, --delete=DELETE
#删除指定的公钥
  • -D, --delete-all
#删除所有的公钥

2、salt-key返回信息

  • Accepted Keys:接受的公钥列表或者是被控主机
  • Unaccepted Keys:未被接受的公钥列表
  • Rejected Keys:被拒绝的公钥列表
时间: 2024-11-04 21:44:40

高效运维1:SaltStack 安装配置的相关文章

自动化运维工具SaltStack安装配置

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

运维自动化 SaltStack 安装

运维自动化 SaltStack SaltStack介绍:(略) 设置epel源 rpm -ivh 'http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-5.noarch.rpm' yum安装master.minion Master主机安装: [[email protected]_1 yum.repos.d]# yum install salt-master 正在安装: salt-master             

自动化运维之 Ansible——安装配置

Ansible相对于其他自动化运维工具(saltstack.puppet)的优势: Ansible是一款轻量级框架,基于各个模块实现各种功能,模块可根据需要自行开发 agentless 无需安装agent,可根据具体情况建立一台操作机 支持playbook剧本 python语言开发,做运维的都比较容易接受的语言 其他等等,一百度一大堆,自行百度吧~ 环境说明: 系统环境centos6.8 操作机 192.168.1.121 客户机 192.168.1.122 基本安装 安装gcc,用于编译pyt

自动运维工具 -saltstack安装使用(实例演示!!!)

saltstack概述 在生产环境中,服务器往往不止一两台,一般都是成千上万台服务器.这对运维人员来说管理难度太大了,而saltstack是一个新的基础平台管理工具,可以支持管理上万台服务器规模,数秒钟即可完成数据传递,是现在用的比较多的自动化运维工具之一. Salt是一个基础平台管理工具.SaltStack采用 C/S模式,server端就是salt的master,client端就是minion,minion与master之间通过ZeroMQ消息队列通信.master监听4505和4506端口

自动化运维工具---SaltStack安装部署及简单案例

SaltStack原理 SaltStack由Master(服务端)和Minion(客户端)组成,Master和Minion之间通过ZeroMQ(消息队列)进行通讯,Master和Minion分别监听4505与4506端口,4505为master与minion认证通信端口,4506为master用来发送或者接受minion的命令执行返回信息. 当客户端启动后,会主动链接master端注册,然后一直保持该TCP连接,而master通过这条TCP连接对客户端进行控制,如果连接断开,master将对客户

运维工具SaltStack之一安装部署

运维工具SaltStack之一安装部署 一.概述 salt是一个异构平台基础设置管理工具,使用轻量级的通讯器ZMQ,用Python写成的批量管理工具,完全开源,遵守Apache2协议,与Puppet,Chef功能类似,有一个强大的远程执行命令引擎,也有一个强大的配置管理系统,通常叫做Salt State System. 二.基本原理 采用C/S模式,server端就是salt的master,client端就是minion,minion与master之间通过ZeroMQ消息队列通信.minion上

saltstack 安装配置详解

SaltStack是一个服务器基础架构集中化管理平台,具备配置管理.远程执行.监控等功能,一般可以理解为简化版的puppet和加强版的func.SaltStack基于Python语言实现,结合轻量级消息队列(ZeroMQ)与python第三方模块(Pyzmq.PyCrypto.Pyjinjia2.python-msgpack和PyYAML等)构建. 通过部署SaltStack环境,我们可以在成千上万台服务器上做到批量执行命令,根据不同业务特性进行配置集中化管理.分发文件.采集服务器数据.操作系统

自动化运维工具SaltStack详细部署【转】

==========================================================================================一.基础介绍==========================================================================================1.简介SaltStack是一个服务器基础架构集中化管理平台,具备配置管理.远程执行.监控等功能,一般可以理解为简化版的pupp

运维工具SaltStack之三Grains组件

运维工具SaltStack之三Grains组件 一.grains组件介绍 grains是收集Minion主机的静态.不常变化的基本信息,存储在Minion端本地,如:CPU.内核.操作系统.虚拟化等,并且服务器端可以根据这些信息进行灵活定制或个性化定制,是Saltstack最重要的组件之一,多用来做资产管理的信息收集,主要解决平台的差异性. 如可以使用以下命令: #salt 'minion01' grains.items  #获取minion01主机基本信息 二.grains组件自定义 自定义g

运维工具SaltStack之四Pillar组件

运维工具SaltStack之四Pillar组件 一.pillar组件介绍 跟grains的结构一样,存放需要提供给Minion端的信息,存储在master端.可根据各个机器环境的不同,分别定义变量,然后再sls文件里统一引用,官方表示pillar是存储敏感数据的,主要解决环境的差异性.同时与grains组件还有一个特别的区别:grains数据加载在内存里,即minion启动之后不会变,哪怕修改了grains,除非重启minion或者从master端同步.而pillar修改之后,再获取数据即生效了