一、SaltStack 安装

SaltStack 是基于 Python 开发的,也是基于 C/S 架构,通过服务端 ( master ) 控制多台客户端 ( minion ) 实现批量操作
这里我们使用 CentOS 7 安装一个服务端 ( 192.168.119.138 ) ,两个客户端 ( 192.168.119.140,192.168.119.142 ) 来进行实验

安装服务端:

[root@localhost ~]$ yum install -y https://repo.saltstack.com/yum/redhat/salt-repo-latest-2.el7.noarch.rpm    # 安装 SaltStack yum 源
[root@localhost ~]$ yum install -y salt-master # 安装 SaltStack 服务端
[root@localhost ~]$ systemctl start salt-master # 启动 SaltStack 服务端

安装客户端:

[root@localhost ~]$ yum install -y https://repo.saltstack.com/yum/redhat/salt-repo-latest-2.el7.noarch.rpm    # 安装 SaltStack yum 源
[root@localhost ~]$ yum install -y salt-minion # 安装 SaltStack 客户端
[root@localhost ~]$ vim /etc/salt/minion # 编辑配置文件,指定 SaltStack 服务端地址
master: 192.168.119.138
[root@localhost ~]$ systemctl start salt-minion # 启动 SaltStack 客户端

二、SaltStack 配置认证

(1) 上面我们已经安装好了 SaltStack 服务端和客户端,但是服务端和客户端之间相互通信,还需要配置认证,通信过程是通过密钥对来进行加解密的
(2) minion 在第一次启动时,会在 /etc/salt/pki/minion/ 目录下生成密钥对,其中 minion.pem 是私钥,minion.pub 是公钥,会把公钥传给 master
(3) master 接收到 minion 发来的公钥后,我们可以通过 salt-key 命令来查看有哪些 minion 公钥过来进行认证;
(4) 如果我们把该公钥视为可信的,认证通过,那么就会存放在 /etc/salt/pki/master/minions 目录中,然后 master 会把自身的公钥发送给 minion
(5) minion 接收到 master 发来的公钥后,会存储为 /etc/salt/pki/minion/minion_master.pub,实现服务端和客户端之间相互通信

[root@localhost ~]$ salt-key -L    # 查看有哪些minion公钥过来进行认证
Accepted Keys:
Denied Keys: # Accepted Keys 表示已经接受的公钥
Unaccepted Keys: # Denied Keys 表示已经拒绝的公钥
192.168.119.140 # Unaccepted Keys 表示还没有被接受的公钥
192.168.119.142 # Rejected Keys 表示已经被拒绝的公钥
Rejected Keys: # Deny 是直接把包丢掉,不会有任何回应,相对粗暴点,而 Reject 则是会通知对方你的包被我拒绝了
[root@localhost ~]$ salt-key -a 192.168.119.*    # 设置通过认证(Accept)

salt-key 常用参数:

-L    # 列出所有未被接受的公钥
-a # 接受(Accept)指定的主机公钥,后面接主机名
-r # 拒绝(Reject)指定的主机公钥,后面接主机名
-d # 拒绝(Deny)指定的主机公钥,后面接主机名
-A # 接受(Accept)所有的主机公钥
-R # 拒绝(Reject)所有的主机公钥
-D # 拒绝(Deny)所有的主机公钥
-y # 我们在接受主机公钥时需要按y确认,加上该参数可以省略交互

三、SaltStack 远程执行命令

设置认证通过后,就可以使用 master 对多个 minion 远程执行命令了:

[root@localhost ~]$ salt '*' test.ping             # 检查所有主机是否存活
[root@localhost ~]$ salt '*' cmd.run "hostname" # 对所有主机执行hostname命令

SaltStack 安装及配置认证的更多相关文章

  1. SaltStack安装及配置

    1.简介SaltStack是一个服务器基础架构集中化管理平台,具备配置管理.远程执行.监控等功能,一般可以理解为简化版的puppet和加强版的func.SaltStack基于Python语言实现,结合 ...

  2. saltstack安装和配置

    [root@web9 salt]# vi filetest.sls //ADD file_test: file.managed: - name: /tmp/lulu.com - source: sal ...

  3. saltstack安装与配置

    Saltstack是基于Python开发的一套C/S架构,具备Puppet.Ansible功能于一身的配置管理工具,功能十分强大,各模块融合度及复用性极高:使用号称世界上最快的消息队列ZeroMQ使得 ...

  4. Saltstack的安装和配置

    1.安装salt 因为系统自带的yum源不支持saltstack安装包的支持,所以需要安装第三方yum源(epel) # yum -y install epel-release salt分为主服务器( ...

  5. Saltstack 安装配置详解

    下面这篇文章主要介绍另外一个运维自动化工具 Saltstack . 一.简介 Saltstack 比 Puppet 出来晚几年,是基于Python 开发的,也是基于 C/S 架构,服务端 master ...

  6. Linux centosVMware 自动化运维认识自动化运维、启动salt相关服务、saltstack配置认证、salt-key命令用法、saltstack远程执行命令、saltstack - grains、saltstack – pillar

    一.认识自动化运维 传统运维效率低,大多工作人为完成 传统运维工作繁琐,容易出错 传统运维每日重复做相同的事情 传统运维没有标准化流程 传统运维的脚本繁多,不能方便管理 自动化运维就是要解决上面所有问 ...

  7. SaltStack 安装配置 centos7

    参考文档 http://docs.saltstack.cn/contents.html 快速安装 初始配置 控制端master配置 # vim /etc/salt/master interface: ...

  8. saltstack安装配置及常用命令

    1.salt安装及配置详解 https://www.cnblogs.com/lgeng/p/6567424.html centos7配置: https://www.jianshu.com/p/4c91 ...

  9. saltstack安装配置(yum)

    主机规划: (主)master:192.168.25.130 (从)minion:192.168.25.131     192.168.25.132 1.yum安装: 服务端:安装master yum ...

随机推荐

  1. A SIMPLE LIBRARY TO BUILD A DEEP ZOOM IMAGE

    My current project requires a lot of work with Deep Zoom images. We recently received some very high ...

  2. selenium操作浏览器-窗口切换

    package seleniumLearn1; import java.util.Set; import java.util.concurrent.TimeUnit; import org.openq ...

  3. 【吉比特】G-bits2017技术类岗位编程题

    求素数 输入M.N,1 < M < N < 1000000,求区间[M,N]内的所有素数的个数.素数定义:除了1以外,只能被1和自己整除的自然数称为素数 输入描述: 两个整数M,N ...

  4. ubuntu 14.04安装 DevStack的脚本配置文件——localrc

    本文ubuntu 14.04安装 DevStack的脚本配置文件——localrc,本文件名已经逐渐被取代,但是出于后向兼容性,使用该文件仍然可以为stack.sh安装脚本指定安装DevStack时的 ...

  5. MySQL ERROR 1045 (28000): Access denied for user 'root'@'localhost'解决

    MySQL ERROR 1045 (28000): Access denied for user 'root'@'localhost'解决: # /etc/init.d/mysql stop # my ...

  6. memcached监控工具

    最简单和最直接的方式是在启动memcached的时候加入-vv参数,从而在控制台打印每次客户端的请求和相应,这非常适合开发.另外一种较为直接的方式是通过telnet进行查看,例如:若server为本机 ...

  7. RTC教程

    Tutorial: Get started with Rational Team Concert Getting Started with Jazz Source Control RTC入门教程及冲突 ...

  8. Fedora26 tftp-server设置

    安装tftp-server yum install -y  tftp-server 启动软件 systemctl start tftp.socket systemctl enable tftp.soc ...

  9. .net网站建设页面提交后css失效的问题

    问题描述:.net网站建设在提交后出现css部分失效,如div位置,字体大小. 问题解决:原因是,过去的提示语句我们一律使用了Response.write("<script>al ...

  10. 【WP8】自定义配置存储类

    之前在WP7升级到WP8的时候遇到配置不兼容的问题 情景:之前只有一个WP7版本,现在需要发布WP8版本,让用户可以从原来的WP7版本升级到WP8版本 一般情况下从WP7升级到WP8没什么问题 但是在 ...