当前位置: 首页 > news >正文

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模块

相关文章:

  • 学透Spring Boot — 007. 七种配置方式及优先级
  • 用户模块——整合 Spring 缓存(Cacheable)
  • 系统与网络安全------Windows系统安全(7)
  • Deep Learning-Based Human Pose Estimation: A Survey【读到2d单人hpe】
  • Java For 循环全解析:从基础到增强的实战指南
  • Spring Boot项目中策略模式的应用与实现
  • 教程:如何使用 JSON 合并脚本
  • AutoDev Next:IDE 即 AI 编程服务,构建多端粪围编程
  • 接口自动化学习三:参数化parameterize
  • 多品种金融数据高效导入丨DolphinDB 希施玛历史数据自动化导入模块介绍
  • 【目标检测】【深度学习】【Pytorch版本】YOLOV3模型算法详解
  • JVM深入原理(一+二):JVM概述和JVM功能
  • 《解锁Qwen2.5-Omni:AI全模态大模型部署实战指南》
  • 企业出海如何选择全球化软件工具?Websoft9 推荐开源作为理性可行的选择
  • 写给新人的深度学习扫盲贴:向量与矩阵
  • DayDreamer: World Models forPhysical Robot Learning
  • 基于图扑 HT 技术的电缆厂 3D 可视化管控系统深度解析
  • 第3期 基于改进YOLOv8的卫星下的船舰检测算法与系统实现
  • STM32平衡车开发实战教程:从零基础到项目精通
  • 顺序容器 -forward list单链表
  • 深圳优化公司踏高粱seo/seo免费系统
  • 深圳企业网站制作中心/自己怎么开电商平台
  • 学校网站建设行业现状/太原百度网站快速优化
  • 做网站的销售话术/2021搜索引擎排名
  • 企业网站开发韵茵/常见的网络推广方式包括
  • 类似于美团的网站开发/国家域名注册服务网