基于saltstack的配置管理实战

首页    课程    运维    基于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
收藏