目 录CONTENT

文章目录

SaltStack集群部署实战:从节点配置到自动化状态管理

Administrator
2025-08-04 / 0 评论 / 0 点赞 / 5 阅读 / 0 字
温馨提示:
部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

SaltStack集群部署实战:从节点配置到自动化状态管理

Salt-Minion节点配置

1. 基础配置

# 配置文件路径:/etc/salt/minion
vim /etc/salt/minion

# 核心配置项(约第16行)
master: 192.168.50.60  # Master节点IP地址
id: minion-1           # 自定义节点标识(不配置则默认使用hostname)

2. 服务管理

# 配置生效操作
systemctl restart salt-minion  # 修改后立即生效
systemctl enable salt-minion   # 设置开机自启

Master节点密钥管理

1. 密钥认证流程

# 查看节点认证状态
salt-key -L

# 输出示例:
Accepted Keys:
Denied Keys:
Unaccepted Keys: k8s-master1  # 未认证节点
Rejected Keys:

2. 节点管理操作

# 接受单个节点认证
salt-key -a k8s-master1

# 批量接受节点(支持正则表达式)
salt-key -a 'k8s-*'

# 删除失效节点
salt-key -d k8s-master1

3. 节点健康检查

# 全局连通性测试
salt '*' test.ping

# 输出示例:
k8s-master1: True
minion-1: True

Master服务端配置详解

1. 配置文件优化

# 创建配置备份(重要!)
cp -rp /etc/salt/master /etc/salt/master.bak

# 核心配置项(约第698行)
vim /etc/salt/master
file_roots:
  base:
    - /srv/salt  # 状态文件存储根目录

2. 目录结构初始化

# 创建工作目录
mkdir -p /srv/salt

3. 服务重启

systemctl restart salt-master

自动化状态文件开发

1. 基础状态模板

# /srv/salt/execute_htop_command.sls
# 功能:安全执行htop命令(含错误处理)

# 错误日志记录模块
log_htop_failure:
  cmd.run:
    - name: logger -t saltstack "htop exec fail: {{ grains['id'] }}"
    - runas: root

# 主执行模块
execute_htop_command:
  cmd.run:
    - name: htop
    - pty: True        # 强制分配伪终端
    - runas: root      # 指定执行用户
    - onfail:
      - log_htop_failure  # 错误处理关联
    - require:
      - pkg: install_htop  # 依赖安装状态

# 依赖安装模块
install_htop:
  pkg.installed:
    - name: htop
    - unless: htop --version  # 智能安装检测

2. 状态执行方式

# 单节点执行
salt 'k8s-master1' state.sls execute_htop_command

# 全局执行
salt '*' state.sls execute_htop_command

全局状态部署实践

1. 环境映射配置

# /srv/salt/top.sls
# 功能:定义全局状态分配策略

base:
  '*':                     # 所有节点
    - execute_htop_command       # 基础监控

2. 全局状态推送

# 执行全局配置
salt '*' state.highstate
0
  1. 支付宝打赏

    qrcode alipay
  2. 微信打赏

    qrcode weixin

评论区