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

特性:
(1)、部署简单、方便;
(2)、支持大部分UNIX/Linux及Windows环境;
(3)、主从集中化管理;
(4)、配置简单、功能强大、扩展性强;
(5)、主控端(master)和被控端(minion)基于证书认证,安全可靠;
(6)、支持API及自定义模块,可通过Python轻松扩展。

一、安装:
Salt-master: 192.168.12.22   soft:salt-master
Salt-minion01:192.168.12.25  soft:salt-minion

12.22操作

1、此次安装SaltStack采用yum安装方式,所以需要借助第三方yum源(epel和rpmforge)
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.reporpm -Uvh
http://apt.sw.be/redhat/el6/en/x86_64/rpmforge/RPMS/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm

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

3、将以上操作在12.25上操作一遍

4、12.22安装SaltStack包
yum -y install salt-master

5、12.25安装yum -y install salt-minion

二、配置SaltStack
1、vim /etc/salt/master
interface: 192.168.12.22    绑定Master通信IP
auto_accept: True            自动认证,避免手动运行salt-key来确认证书信任
file_roots:                    指定saltstack文件根目录位置
   base:
     - /srv/salt/

2、更新被控端配置(12.25)
vim /etc/salt/minion
master: 192.168.12.22
id: lvs-web1

三、启动SaltStack服务

1、服务端启动salt-master服务(12.22)
chkconfig salt-master on
/etc/init.d/salt-master start

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

四、在master端查看公钥列表
1、12.22操作
salt-key -L

Accepted Keys:
lvs-web1
Denied Keys:
Unaccepted Keys:
Rejected Keys:

2、测试被控主机的连通性、硬盘的使用率、网络接口地址
测试被控主机(12.25)的连通性、硬盘的使用率、网络接口地址
salt '*' test.ping
lvs-web1:
    True

salt '*' disk.usage
lvs-web1:
    ----------
    /:
        ----------
        1K-blocks:
            10190136
        available:
            7409352
        capacity:
            24%
        filesystem:
            /dev/sda2
        used:
            2256496
    /boot:
        ----------
        1K-blocks:
            514760
        available:
            456932
        capacity:
            7%
        filesystem:
            /dev/sda1
        used:
            30848
    /cacti:
        ----------
        1K-blocks:
            20026236
        available:
            17443668
        capacity:
            9%
        filesystem:
            /dev/sda5
        used:
            1558620
    /dev/shm:
        ----------
        1K-blocks:
            1962184
        available:
            1962172
        capacity:
            1%
        filesystem:
            tmpfs
        used:
            12

salt '*' network.interfaces
lvs-web1:
    ----------
    eth1:
        ----------
        hwaddr:
            a6:95:ca:8a:6b:42
        inet:
            |_
              ----------
              address:
                  192.168.12.25
              broadcast:
                  192.168.12.255
              label:
                  eth1
              netmask:
                  255.255.255.0
        inet6:
            |_
              ----------
              address:
                  fe80::a495:caff:fe8a:6b42
              prefixlen:
                  64
              scope:
                  link
        up:
            True
    lo:
        ----------
        hwaddr:
            00:00:00:00:00:00
        inet:
            |_
              ----------
              address:
                  127.0.0.1
              broadcast:
                  None
              label:
                  lo
              netmask:
                  255.0.0.0
        inet6:
            |_
              ----------
              address:
                  ::1
              prefixlen:
                  128
              scope:
                  host
        up:
            True

3、远程执行命令测试
(1)cmd模块包含的shell的输出在被控端,比如cmd.run and cmd.run_all

salt '*' cmd.run date
lvs-web1:
    Mon Dec  7 10:39:23 CST 2015

salt '*' cmd.run uptime
lvs-web1:
     10:39:56 up 18 days, 20:02,  4 users,  load average: 0.00, 0.00, 0.00

alt '*' cmd.run 'df -h'
lvs-web1:
    Filesystem      Size  Used Avail Use% Mounted on
    /dev/sda2       9.8G  2.2G  7.1G  24% /
    tmpfs           1.9G   12K  1.9G   1% /dev/shm
    /dev/sda1       503M   31M  447M   7% /boot
    /dev/sda5        20G  1.5G   17G   9% /cacti

cmd.run 'ls -l /etc'
lvs-web1:
    total 1552
    drwxr-xr-x.  5 root  root    4096 May 20  2015 ConsoleKit
    -rw-r--r--.  1 root  root    4439 Jul 16  2014 DIR_COLORS
    。。。。。。。    
    
(2)pkg函数自动映射本地系统的包管理到salt函数
salt '*' pkg.install vim
lvs-web1:
    ----------
    vim-common:
        ----------
        new:
            7.4.629-5.el6
        old:
            7.2.411-1.8.el6
    vim-enhanced:
        ----------
        new:
            7.4.629-5.el6
        old:
            7.2.411-1.8.el6
    vim-filesystem:
        ----------
        new:
            7.4.629-5.el6
        old:

五、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:被拒绝的公钥列表

自动化运维工具SaltStack安装配置的更多相关文章

  1. 自动化运维工具 SaltStack 搭建

    原文地址:https://www.ibm.com/developerworks/cn/opensource/os-devops-saltstack-in-cloud/index.html#N10072 ...

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

    ==========================================================================================一.基础介绍==== ...

  3. 自动化运维工具SaltStack详细部署

    ==========================================================================================一.基础介绍==== ...

  4. 自动化运维工具——ansible安装入门(一)

    一.简介 现如今有很多运维自动化的工具,如:Ansible.Puppet.saltStack.Fabric.chef.Cfengine 1. Ansible介绍 Ansible 是由 Cobbler与 ...

  5. Ansible自动化运维笔记1(安装配置)

    1.Ansible的安装 pip install ansible==1.9.1 ansible1.9.1版本依赖的软件有 Python2.6以上版本 paramiko模块 PyYAML Jinja2 ...

  6. ansible自动化运维工具的安装与使用

    运行环境 centOS6.6 ansible ansible的功能还是比较多的,博主只用它在集群上进行批量部署软件和维护的功能,其他不多做研究,有需要的话这篇文章会慢慢补充. ansible特点 轻量 ...

  7. 自动化运维工具SaltStack - 多环境(使用记录【state.sls 与 state.highstate】)

    转自:https://segmentfault.com/a/1190000000513137 今天在进行 saltstack 多环境的时候,遇到一个问题,最终得到解决,好记性不如烂笔头,记录. 首先, ...

  8. 自动化运维工具 SaltStack 在云计算环境中的实践

    http://www.talkwithtrend.com/Article/218473

  9. 自动化运维工具Ansible详细部署 (转载)

    自动化运维工具Ansible详细部署 标签:ansible 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://sofar.blog. ...

随机推荐

  1. VC++ 6.0创建MFC工程时的初级备要点(二)

        在看到一个MFC工程时,可能根据上一篇文章已经知道了哪些是重要的,那些是在创建工程的时候已经被初始化的!!下面介绍一下在看代码的过程的策略!!这里假设创建的基于多对话框的MFC工程名为test ...

  2. hadoop 2.2.0集群安装详细步骤(简单配置,无HA)

    安装环境操作系统:CentOS 6.5 i586(32位)java环境:JDK 1.7.0.51hadoop版本:社区版本2.2.0,hadoop-2.2.0.tar.gz 安装准备设置集群的host ...

  3. 代码片段,使用TIKA来解析PDF,WORD和EMAIL

    /** * com.jiaoyiping.pdstest.TestTika.java * Copyright (c) 2009 Hewlett-Packard Development Company, ...

  4. Flash 用FLASH遮罩效果做图片切换效果

    本教程是关于FLASH应用遮罩效果制作好看的图片切换效果.该教程选用FLASH遮罩中最简单的一种作为例子,当然你可以用自己的想象力来做出更多更好的图片动画.希望本教程能带你带来帮助. 让我们先看看效果 ...

  5. angular -- ng-ui-route路由及其传递参数?page页面版

    前面有说过 ng-ui-route 使用 script 标签来做,但是很多时候,会通过引入模板页面的方式来实现: 具体代码: <!DOCTYPE html> <html lang=& ...

  6. Java导出Excel表,POI 实现合并单元格以及列自适应宽度(转载)

    POI是apache提供的一个读写Excel文档的开源组件,在操作excel时常要合并单元格,合并单元格的方法是: sheet.addMergedRegion(new CellRangeAddress ...

  7. CodeForces 25C(Floyed 最短路)

    F - Roads in Berland Time Limit:2000MS     Memory Limit:262144KB     64bit IO Format:%I64d & %I6 ...

  8. MySQL数据的查询注意

    mysql数据库的查询结果输出的是一个记录,这一个记录是以字典的形式存储的,所以获取字段时要用字典提取数据的形式获取字段信息: 查询的代码: def query(self): # sql语句 sql ...

  9. 【mlflow】打包:npm run build + python setup.py sdist

    mlflow是一个开源机器学习平台 最近需要使用一个它的最新版本,但是这个最新版本没有git包,无法通过pip install安装,需要打包安装. 打包完之后在项目的dist文件夹中有打包后的压缩包, ...

  10. Python开发【Django】:分页、Cookie和Session

    分页 1.简单分页 涉及xss攻击,需要用到mark_safe方法,使用此方法字符串传输到后端后,已html形式显示,而非字符串 HTML文件: <!DOCTYPE html> <h ...