20191226笔记

24.1 自动化运维介绍
24.2 saltstack安装
24.3 启动saltstack服务
24.4 saltstack配置认证
24.5 saltstack远程执行命令

一、自动化运维介绍

传统运维效率低,大多工作人为完成

传统运维工作繁琐,容易出错

传统运维每日重复做相同的事情

传统运维没有标准化流程

传统运维的脚本繁多,不能方便管理

自动化运维就是要解决上面所有问题

常见自动化运维工具

Puppet (www.puppetlabs.com)
基于rubby开发,c/s架构,支持多平台,可管理配置文件、用户、cron任务、软件包、系统服务等。 分为社区版(免费)和企业版(收费),企业版支持图形化配置。

Saltstack(官网 https://saltstack.com,文档docs.saltstack.com )
基于python开发,c/s架构,支持多平台,比puppet轻量,在远程执行命令时非常快捷,配置和使用比puppet容易,能实现puppet几乎所有的功能。

Ansible (www.ansible.com )
更加简洁的自动化运维工具,不需要在客户端上安装agent,基于python开发。可以实现批量操作系统配置、批量程序的部署、批量运行命令。

二、saltstack安装

saltstack介绍https://docs.saltstack.com/en/latest/topics/index.html

可以使用salt-ssh远程执行,类似ansible,

也支持c/s模式,下面我们将讲述该种模式的使用,需要准备两台机器

133.130为服务端,133.132为客户端

设置hostname以及hosts,aming-01,aming-02

两台机器全部安装saltstack yum源

yum install -y https://repo.saltstack.com/yum/redhat/salt-repo-latest-2.el7.noarch.rpm

130上执行 yum install -y salt-master salt-minion

132上执行 yum install -y salt-minion

三、启动saltstack服务

130上编辑配置文件

vi /etc/salt/minion //增加

master: aming-01

启动服务systemctl start salt-master; systemctl start salt-minion

132上编辑配置文件

vi /etc/salt/minion //增加

master: aming-01

启动服务systemctl start salt-minion

服务端监听4505和4506两个端口,4505为消息发布的端口,4506为和客户端通信的端口

四、saltstack配置认证

master端和minion端通信需要建立一个安全通道,传输过程需要加密,所以得配置认证,也是通过密钥对来加密解密的

minion在第一次启动时会在/etc/salt/pki/minion/下生成minion.pem和minion.pub,其中.pub为公钥,它会把公钥传输给master

master第一次启动时也会在/etc/salt/pki/master下生成密钥对,当master接收到minion传过来的公钥后,通过salt-key工具接受这个公钥,一旦接受后就会在/etc/salt/pki/master/minions/目录里存放刚刚接受的公钥,同时客户端也会接受master传过去的公钥,把它放在/etc/salt/pki/minion目录下,并命名为minion_master.pub

以上过程需要借助salt-key工具来实现

执行如下命令 salt-key -a aming-01// -a后面跟主机名,可以认证指定主机

salt-key -a aming-02

salt-key命令用法

-a 后面跟主机名,认证指定主机
-A 认证所有主机
-r 跟主机名,拒绝指定主机
-R 拒绝所有主机
-d 跟主机名,删除指定主机认证
-D 删除全部主机认证
-y 省略掉交互,相当于直接按了y

五、saltstack远程执行命令

salt '’ test.ping //这里的表示所有已经签名的minion端,也可以指定一个

salt ‘aming-01’ test.ping

salt ‘*’ cmd.run “hostname”

说明: 这里的必须是在master上已经被接受过认证的客户端,可以通过salt-key查到,通常是我们已经设定的id值。关于这部分内容,它支持通配、列表以及正则。 比如两台客户端aming-01,aming-02, 那我们可以写成salt 'aming-’, salt ‘aming-0[12]’ salt -L ‘aming-01,aming-02’ salt -E 'aming-(01|02)'等形式,使用列表,即多个机器用逗号分隔,而且需要加-L,使用正则必须要带-E选项。 它还支持grains,加-G选项,pillar 加-I选项,下面会介绍到。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值