基于saltstack的配置管理实战
课程长度:
2 天/12 小时
适用人群:运维工程师,系统工程师,DevOps 工程师,想掌握自动化运维的 IT 工程师。
学员基础:熟练使用 Linux,至少一年实际工作经验,对自动化运维有基础了解。
培训环境:电脑一台,内存>=8G,可用磁盘空间大于 80G;安装 VMware Workstation Pro 虚拟机软件,用于创建虚拟机;创建两台虚拟机,安装 CentOS-7.x-x86_64 系统。
课程大纲:
第一章 SaltStack 快速入门
1.SaltStack 介绍
♦ Linux 下部署 SaltStack
- ♦Windows 下部署 Salt Minion
- ♦SaltStack 配置
- ♦SaltStack 认证详解
- 2.SaltStack 远程执行
- ♦远程执行三大要素
- ♦cmd.run 超级模块
- 3.SaltStack 配置管理
- ♦YAML 编写技巧
- ♦第一个状态管理
- ♦配置管理中的 top.sls
- ♦配置管理中的 highstate
- 4.SaltStack 与 ZeroMQ
- ♦ZeroMQ 简介
- ♦发布与订阅
- ♦请求与响应
- 第二章 无 Agent 运行方式 Salt SSH
- 5.Salt-SSH 部署
- ♦Salt Rosters
- 6.使用 Salt SSH
- ♦Salt SSH Target
- ♦命令执行
- ♦状态管理
- 第三章 SaltStack 数据系统
- 7.Salt Grains
- ♦什么是 Grains?
- ♦Grains 应用场景
- ♦自定义 Grains
- ♦Grains 使用案例
- 8.Salt Pillar
- ♦什么是 Pillar?
- ♦Pillar 应用创建
- ♦定义 Pillar 数据
- ♦Pillar 使用案例
- 9.Grains vs Pillar
- 第四章 深入理解 SaltStack 远程执行
10.指定目标(Targeting)
♦Minion ID
- ♦Globbing
- ♦列表
- ♦正则表达式
- ♦子网/IP 地址
- ♦Grains
- ♦Pillar
- ♦混合匹配
- ♦节点组
- ♦批处理执行
- 11.执行模块(Execution Modules)
- ♦模块列表
- ♦network 模块
- ♦service 模块
- ♦state 模块
- 12.返回程序(Returners)
- ♦Returners 列表
- ♦使用 MySQL Returners
- 第五章 深入理解 SaltStack 配置管理
- 13.状态(States)
- ♦什么是 SLS?
- ♦SLS 的 ID 声明
- ♦Names 声明
- 14.状态模块(State Modules)
- ♦LAMP 状态管理案例分析
- ♦State 模块:pkg
- ♦State 模块:file
- ♦State 模块:service
- 15.LAMP 状态实现
- ♦编写 apache 状态
- ♦编写 php 状态
- ♦编写 mysql 状态
- ♦Top File 里设置状态
- 16.状态间关系
- ♦include
- ♦require
- ♦require_in
- ♦一个实际需求
- ♦watch
- ♦watch_in
- 17.States 条件判断
- ♦一个实际需求
- ♦State 模块:cmd
- ♦Unless
- ♦Onlyif
- 18.使用 Jinja 模版
- ♦一个实际需求
- ♦Jinja 模版介绍
- ♦Jinja 基本使用
- ♦Jinja 逻辑关系
- ♦在配置文件中使用 Jinja 模版
- ♦Jinja 模版中 SaltStack 组件使用
- 第六章 SaltStack 日常管理
- 19.SaltStack 生产技巧
- ♦Salt Formulas
- ♦SLS 测试
- 20.Salt Runners
- ♦manage
- 21.SaltStack Job 管理
- ♦什么是 Job?
- ♦使用 saltutil 管理 Job
- ♦使用 salt runner 管理 Job
- ♦Job Cache 存储
- 第七章 SaltStack 生产项目案例
- 22.需求分解与环境规划
- ♦实验环境设置
- ♦SaltStack 环境设置
- 23.系统初始化实现
- ♦DNS 配置
- ♦History 记录时间
- ♦命令操作审计
- ♦内核参数优化
- ♦设置系统 limits
- ♦epel 仓库
- ♦关闭防火墙
- ♦关闭 SELinux
- ♦修改 TTY 提示效果
- ♦修改 TTY 提示符
- ♦修改 TTY 超时时间
- ♦SSHD 服务调整
- ♦基础软件包
- ♦NTP 客户端
- ♦应用用户 www
- ♦初始化环境引用
- 23.基础模块实现
- ♦目录规划设计
- ♦Tomcat 配置
- ♦Redis 主从集群配置管理
- ♦MySQL 主从集群配置管理
- ♦Haproxy 配置管理
- ♦Keepalived 配置管理
- ♦Nginx 配置管理
- 24.应用模块实现
- ♦负载均衡引用
- ♦Keepalived 引用
- ♦Redis 集群
- ♦bbs 论坛案例
- 第八章 SaltStack 高可用和分布式
- 25.Masterless 架构
- ♦设置无 Master 运行
- ♦关闭 salt-minion
- ♦使用 salt-call 执行模块
- ♦使用 salt-call 执行状态
- 26.Multi-Master 架构
- ♦配置 Multi-Master
- ♦Master 数据存储
- 27.Salt Syndic 分布式架构
- ♦Syndic 配置
- ♦高级 Master 配置
- 第九章 Salt Cloud 云管理
- 28.salt-cloud 介绍
- 29.salt-cloud 与 OpenStack
- ♦salt-cloud 介绍
- ♦测试与 OpenStack 的通信
- ♦创建云主机配置文件
- ♦创建云主机
- ♦Salt Bootstrap
- ♦删除云主机
- 第十章 基于 SaltStack 自动化扩容设计与实现
- 30.自动化扩容流程设计
- ♦自动化扩容决策树
- ♦自动化扩容流程
- ♦自动化缩容流程
- 31.自动化应用服务部署
- 32.自动化代码部署
- 33.自动化测试
- 34.基于 Etcd 做服务发现
- ♦etcd 和 Saltstack 集成
- ♦测试 etcd_pillar 使用
- 35.自动化加入集群
- ♦Haproxy 状态更新
- 第十一章 SaltStack 二次开发
- 36.编写 Grains
- 37.编写执行 Module
- 38.Salt API
- ♦Salt API 部署
- ♦login
- ♦查询 minions 信息
- ♦运行 Runner
- ♦远程执行模块
- ♦Job 管理
- ♦执行 wheel
- ♦使用 Targeting
ꄘ浏览量:0