SaltStack自动化运维实战(CentOS SaltStack配置完整教程)

简介: 本文详细介绍如何在CentOS系统上配置SaltStack,涵盖安装、主从节点设置、密钥认证及通信测试,助你快速实现自动化运维,适合初学者入门。

在现代 IT 运维中,自动化是提升效率、减少人为错误的关键。SaltStack 是一款开源的配置管理与远程执行工具,特别适合大规模服务器集群的统一管理。本文将手把手教你如何在 CentOS 系统上完成 SaltStack 配置,即使是零基础的小白也能轻松上手。

一、SaltStack 基础概念

SaltStack 采用 C/S 架构:

  • Master(主控节点):负责下发指令、管理配置文件。
  • Minion(被控节点):接收 Master 指令并执行任务。

本教程将以一台 CentOS 7 服务器作为 Master,另一台作为 Minion 进行演示。

二、准备工作

确保两台 CentOS 服务器满足以下条件:

  • 操作系统为 CentOS 7 或 CentOS 8
  • 网络互通,能互相 ping 通
  • 关闭防火墙或开放 SaltStack 默认端口(4505 和 4506)

临时关闭防火墙命令(仅用于测试环境):

# 在 Master 和 Minion 上都执行sudo systemctl stop firewalldsudo systemctl disable firewalld

三、安装 SaltStack

SaltStack 官方提供了 EPEL 仓库支持,我们通过 yum 安装。

1. 在 Master 节点安装 salt-master

# 安装 EPEL 仓库sudo yum install -y epel-release# 安装 salt-mastersudo yum install -y salt-master# 启动并设置开机自启sudo systemctl start salt-mastersudo systemctl enable salt-master

2. 在 Minion 节点安装 salt-minion

# 安装 EPEL 仓库sudo yum install -y epel-release# 安装 salt-minionsudo yum install -y salt-minion

四、配置 SaltStack

1. 配置 Minion

编辑 Minion 配置文件,指定 Master 的 IP 地址:

sudo vi /etc/salt/minion

找到 #master: salt 行,取消注释并修改为 Master 的实际 IP,例如:

master: 192.168.1.100

保存后启动 Minion 并设置开机自启:

sudo systemctl start salt-minionsudo systemctl enable salt-minion

2. 在 Master 上接受 Minion 的密钥

Minion 首次连接会发送公钥给 Master,需手动接受:

# 查看待接受的密钥sudo salt-key -L# 接受所有密钥(生产环境建议按需接受)sudo salt-key -A# 再次查看确认sudo salt-key -L

五、测试 SaltStack 是否正常工作

使用 test.ping 模块测试通信:

sudo salt '*' test.ping

如果返回如下内容,说明配置成功:

minion-hostname:    True

六、常见问题与优化建议

  • 无法连接? 检查 Master IP 是否正确、网络是否通畅、端口是否开放。
  • 密钥未接受? 使用 salt-key -L 确认 Minion ID 是否出现在 unaccepted 列表。
  • 生产环境建议:启用防火墙规则,仅允许特定 IP 访问 4505/4506 端口。

结语

通过本教程,你已经掌握了在 CentOS 系统上完成 SaltStack 配置 的完整流程。SaltStack 不仅可用于远程命令执行,还能实现配置文件分发、服务状态监控、软件包批量安装等高级功能,是 SaltStack 自动化运维 的核心工具之一。后续可深入学习 State 文件、Grains、Pillar 等高级特性,构建更强大的自动化运维体系。

希望这篇 CentOS SaltStack 配置 教程对你有所帮助!如有疑问,欢迎在评论区交流。

来源:https://www.vpshk.cn/

相关文章
|
7月前
|
运维 Linux 网络安全
CentOS7中Ansible安装与配置全攻略(小白也能看懂的详细教程)
本文详细介绍在CentOS7系统中安装与配置Ansible的完整步骤。从更新系统、添加EPEL源、安装Ansible,到配置主机清单和SSH连接测试,每一步都清晰易懂,适合初学者快速上手自动化运维工具Ansible,实现高效的配置管理和批量操作。
|
Kubernetes 容器 Perl
【kubernetes】解决: kubelet Failed to create pod sandbox: rpc error: code = Unknown desc = faile...
【kubernetes】解决: kubelet Failed to create pod sandbox: rpc error: code = Unknown desc = faile...
18797 0
|
人工智能 编解码 语音技术
SpeechGPT 2.0:复旦大学开源端到端 AI 实时语音交互模型,实现 200ms 以内延迟的实时交互
SpeechGPT 2.0 是复旦大学 OpenMOSS 团队推出的端到端实时语音交互模型,具备拟人口语化表达、低延迟响应和多情感控制等功能。
3653 21
SpeechGPT 2.0:复旦大学开源端到端 AI 实时语音交互模型,实现 200ms 以内延迟的实时交互
|
存储 监控 网络安全
saltStack自动化工具
saltStack自动化工具
1272 7
|
存储 Java 开发者
成功优化!Java 基础 Docker 镜像从 674MB 缩减到 58MB 的经验分享
本文分享了如何通过 jlink 和 jdeps 工具将 Java 基础 Docker 镜像从 674MB 优化至 58MB 的经验。首先介绍了选择合适的基础镜像的重要性,然后详细讲解了使用 jlink 构建自定义 JRE 镜像的方法,并通过 jdeps 自动化模块依赖分析,最终实现了镜像的大幅缩减。此外,文章还提供了实用的 .dockerignore 文件技巧和选择安全、兼容的基础镜像的建议,帮助开发者提升镜像优化的效果。
|
云安全 人工智能 安全
用AI来做云安全是怎样一种体验?阿里云安全AI能力大曝光
用AI来做云安全是怎样一种体验?阿里云安全AI能力大曝光
|
存储 应用服务中间件 nginx
saltstack配置
SaltStack是一种新的基础设施管理方法开发软件,简单易部署,可伸缩的足以管理成千上万的服务器,和足够快的速度控制,与他们交流,以毫秒为单位。SaltStack提供了一个动态基础设施通信总线用于编排,远程执行、配置管理等等。
675 0
|
消息中间件 运维 网络协议