首页 > 代码库 > Saltstack自动化运维

Saltstack自动化运维

Saltstack三大功能

1,远程执行

2,配置管理(状态)

3,云管理

 

四种运行方式:

  Local            本地

  Minion/Master   C/S 

  Syndic       代理模式

  Salt SSH

 

安装仓库

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

安装master和minion

 yum -y install salt-master salt-minion

 

客户端安装minion

 

不修改master配置文件就可以先启动master

systemctl start salt-master

 

修改minion配置文件

vim /etc/salt/minion

16行填写master地址

技术分享

103号配置ID(也可以不配置默认使用主机名为ID这里我没有配置)

技术分享

启动

systemctl start salt-minion

会在/etc/salt文件夹下面生成一个id文件就是主机名(不要随意修改,因为启动需要读取minion_id,如果修改需要先把这个文件删除然后在启动的时候又自动生成)

技术分享

修改两个个客户端的配置文件然后启动(分别为我的web服务器和ios服务器)

 

需要经过master认证以后才能使用

minion第一次启动会生成一个pki目录

技术分享

技术分享

pem是私钥 pub为公钥

master下面也有一个pki文件夹

技术分享

pre下是客户端发送的ID但是还没有经过master的认证

可以查看服务器端文件和客户端文件的MD5来看是不是同一个文件

技术分享

技术分享

通过salt-key可以查看key

技术分享

同意的 拒绝的 没有同意的

同意

技术分享

salt-key -A 同意所有

同意以后

技术分享

同时在客户端生成一个公钥

minion_master.pub

技术分享

实际上认证过程就是交换公钥的过程,实现了加密通信。

 

远程执行

 salt ‘*‘ test.ping

技术分享

这里的ping不是发送ping包而是检测客户端是否通信正常

 

批量执行创建文件夹的命令

salt ‘*‘ cmd.run ‘mkdir /tmp/hehe‘

 

Saltstack自动化运维