saltstack自动化运维工具安装部署以及常用模块

一.saltstack介绍

实现对IT基础设施批量管控

1.saltstack组件

管理服务器被称为salt-master,被管理服务器在saltstack软件中都叫做salt-minion

1.salt-master  管理端

2.salt-minion  被管理端

3.salt-syndic  salt代理

2.saltstack特性

saltstack在部署的时候支持以分布式的方式来进行部署,所以saltstack软件所支持的被管理端的数量比ansible所支持的被管理端的数量要高的多。

1.重量级工具

2.基于python开发,开源,跨平台

3.基于证书,进行身份验证【既然使用的是证书,就需要我们对minion机器的主机名进行修改。】

基于证书,在salt-minion首次启动的时候,回向salt-master发送一个证书申请,随后在salt-master签署一个证书,此时才能对salt-minion机器进行管理,当这台minion不想被master管理的时候,就在master上删除对应的证书,此时master就不会给这台minion机器进行管理操作。

4.支持分布式的部署

5.提供api接口

二.saltstack安装部署

1.添加主机名解析

1.添加主机名解析【如果不做这个添加主机名解析的操作,那么之后saltstack在执行操作的时候,速度会很慢。】

如上图所示,添加主机名解析

如上图所示,这是使用rsync工具将主机文件复制到其他的机器上。

2.安装部署slatstack软件

如上图所示,这是阿里开源镜像站的saltstack的http类型的yum源,我们使用这个yum源去下载安装slatstack软件。

如上图所示,我们去安装对应的salt-master软件。

如上图所示,这是saltstack软件的配置文件。

如上图所示,这是启动saltstack软件,并设置这个软件的开机自启动。

这个4050端口是slatstack组件内部进行通信使用的端口,4060是slatstack-master与minion进行通信使用的端口。

3.安装部署salt-minion软件,【在被控端机器】

如上图所示,这是minion的配置文件。

如上图所示,在从服务器的配置文件上写主服务器的IP地址。

如上图所示,这是给这个minion服务器设置自己的id,

我们这里使用minion服务器自己的IP地址作为自己的id

如上图所示,这是将minion启动。

4.在master端签署证书

如上图所示,这是在master服务器端去查看证书相关信息,

依次是接受的证书,

拒绝的证书

发来的证书

拒绝的证书

如上图所示,这是签署证书的操作。

5.测试使用

如上图所示,这是测试通信是否正常

6.salt-key命令的选项

管理minion的证书

如上图所示,-A选项是签署所有证书,-a选项是签署单个证书,-a后面要跟上minion的id,

如上图所示,-D是删除所有证书,-d是删除单个证书,

如上图所示,-R是拒绝所有的证书,-r是拒绝单个证书。

saltstack常用模块

saltstack软件常用的管理被控机器的方式有调用模块以及使用sls状态文件【类似于ansible中的剧本。】

如上图所示,是salt命令的使用格式,

[options]: 可选参数,用于修改 salt 命令的行为。例如,-l info 用于设置日志级别为 info。
'<target>': 指定目标 minions(客户端)。可以是具体的主机名、IP 地址或通过复杂的匹配机制(如 grains)来指定。
<function>: 要在目标 minions 上执行的功能或模块。SaltStack 提供了大量的功能模块,涵盖了文件管理、系统命令和网络操作等。
[arguments]: 可选参数,提供给功能函数的额外信息或参数。

支持使用不同的方式来匹配minion机器。

如上图所示,这是用来测试通信的,

如上图所示,这是去执行shell命令在被控机器上。

1.常用选项

以不同的方式匹配minion机器。

如上图所示,这个-L的选项支持我们以逗号隔开的方式写多个minionID

1)-L以逗号来匹配多个minion机器

如上图所示,这是使用salt命令的时候加上-L选项来匹配多个minion机器的操作。

2)-S 以网段的形式匹配minion机器

如上图所示,这是以网段的形式匹配minion机器。

3)-N 以主机组的方式匹配minion

在master配置文件中事先定义主机组

如上图所示,编辑master文件,定义一个主机组。

4)-C以多条件的方式匹配minion

5)-G 以grains数据组件中的数据匹配minion

grains数据组件【用于保存minion的状态数据(cpu,ip,主机名,操作系统等)并且所有的数据都是按照键值对的形式储存的。】

查看grains中的数据

如上图所示,使用这个grains.items可以查看到192.168.140.12的minion数据。

如上图所示,master机器上对应的grains组件中储存着minion机器的cpu信息,架构信息,完整的主机名,ipv4地址还有ipv6地址。

如上图所示,是这个minion机器的id信息,mac地址信息。

如上图所示,显示的是机器虚拟化的类型是VMware

如上图所示,这就是一个列表,当grans数据中前面显示一个-,就表示这是一个列表中的信息。

列表中的元素默认是从0开始的。

这是从字典中去查看对应的值。

如上图所示,这是通过这个centos去匹配minion机器。

如上图所示,这是对192.168.140.0/24网段中,操作系统是centos的机器进行操作。

2.常用模块

1)查看模块

如上图所示,是salt提供的模块。

2)查看模块的操作方法

如上图所示,是查看service模块的使用方法的操作。

如上图所示,是查看user模块的使用方法。

3)查看操作方法

如上图所示,这是查看操作方法。

1)cmd模块

2)pkg模块

这个命令是在使用 SaltStack 工具查询 IP 地址为 192.168.140.12 的服务器上,与包管理相关的所有可用函数。它帮助系统管理员了解在该服务器上可以执行哪些包管理操作。

3)service模块

如上图所示,这是去查看机器上的vsftpd软件的状态。

4)user/group模块

如上图所示,查看group的使用方法。

如上图所示,这是查看添加用户的方法,并查看其使用格式。

5)file模块

6.hosta模块

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值