课程信息
  • 课程首页
  • 拼团活动
  • 专业套餐
  • 优惠活动
  • 我的课程
  • 站内消息
  • 站内提醒
  • 我的钱包
  • 道具 | 抵价券
  • 登录


【快班】Puppet 运维自动化

大数据运维

10周

7人

此课程所属【hadoop大数据工程师职业方向】专业,专业内有不少于15门推荐课程,目前平台推出【专业课程0元学】活动,只需0元即可在所有的专业课程中任选5门学习,超值优惠,助您快速成长!点击这里了解

讲师
adam
李强: 有6-7年运维工作经验,有BBS/SNS, 游戏, CDN, 虚拟化与云计算, SQL-SQL,Big-Data等多个行业以及相关领域的运维工作经验。对各种前沿技术有较为深入的了解和研究。
课程简介

随着互联网行业发展,运维工程师(ops/devops)的职位也变的越来越具挑战性,作为一个运维工程师要照顾到从硬件到软件,从基础架构到应用层业务的方方面面。日常运维工作纷繁复杂,占用了大量工作时间,大量重复性劳动严重打击运维工程师的积极性,而且极易出错。如何实现对日常工作的自动化变的越来越迫在眉睫。 本课程主要讲解自动化配置管理软件Puppet及其相关的组件,希望能帮助陷于沉重日常重复劳动的运维工程师们解放出来,把精力在更有价值,更有挑战的工作上面。

课程章节
  • 第1课 Puppet 入门介绍
    • 1-1 目前存在多个不同的配置管理软件,各有优劣,本届课程做简要介绍对比,讲解puppet基本原理和入门知识。
    • 1-2 运维自动化软件简要介绍和对比
    • 1-3 Puppet安装(master/agent,standalone模式),升级,主要配置选项简要介绍,支持系统和平台,Ruby环境依赖(RVM简要介绍)。
    • 1-4 基本工作原理,编译和catalogs。
    • 1-5 核心配置文件。
    • 1-6 puppet的第一个基本配置文件。
  • 第2课 Puppet基本命令和语法
    • 2-1 puppet实现了自己的DSL,本节课讲解puppet的语法。
    • 2-2 puppet基本命令
    • 2-3 语法风格。
    • 2-4 保留关键字,命名规范
    • 2-5 变量(作用域),数据类型
    • 2-6 表达式,条件语句
    • 2-7 functions(函数/方法)
    • 2-8 检查puppet配置的命令。
  • 第3课 资源和资源类型
    • 3-1 puppet的资源是整个puppet配置最为核心的地方,puppet对整个系统的管理主要依赖于资源实现。本节课程讲解puppet资源和资源类型。
    • 3-2 介绍RAL(Puppet’s resource abstraction layer),types和providers。
    • 3-3 讲解puppet资源和资源类型,核心资源类型。
    • 3-4 获取当前系统的存在资源和资源类型,manifest,并创建自己的puppet资源配置文件。
    • 3-5 资源顺序 ordering(元参数,order关键字, stage,auto-order)。
    • 3-6 资源默认值。
    • 3-7 资源标签。
    • 3-8 虚拟资源,导出资源。
  • 第4课 Puppet 类,模块,模版
    • 4-1 puppet通过一定的抽象实现来对某一类特定资源进行管理,比如ssh,会包括配置管理和服务管理,软件包管理几个部分,如何抽象出成为一个‘组合’(module),如何适应不同的操作系统,如何抽象配置文件,实现代码重用。
    • 4-2 无参数类,有参数类,命名空间。
    • 4-3 资源收集器。
    • 4-4 puppet模块。
    • 4-5 文件和ERB模版,ERB模版语法。
    • 4-6 defined types。
  • 第5课 Facts和Hiera
    • 5-1 facts为puppet提供了节点级别的metadata,使得puppet可以根据 facts进行个性化的配置,比如是否是云服务器,就可以针对性的对主机进行配置变更优化和升级等等操作。除了puppet自带核心facts,也会涉及到如何自定义facts,来进一步增强puppet的功能。 如何重用已有的Puppet代码,如何隔离敏感数据和配置(Hiera)。
    • 5-2 facts(内置变量)
    • 5-3 自定义facts
    • 5-4 hiera介绍和使用
    • 5-5 结合hire和facts以及环境变量。
  • 第6课 节点管理
    • 6-1 日常工作中会有不同类型的服务器,有的是物理服务器,有的是云服务器;有的是db服务器,有的是web服务器;那么如何进行有效节点管理/分类也成为我们眼前的一个难题,本节课讲解节点分类的常见方法。如何有效的进行不同维度的节点管理。 比如,如何巧用环境变量来区分开发和测试环境,不同服务器的角色。
    • 6-2 fqdn节点匹配,正则表达式匹配
    • 6-3 外部节点分类器(ENC)
    • 6-4 结合puppet环境变量和hiera,custom facts,自定义节点分类器(self-classifier)
  • 第7课 大规模部署 和 版本控制
    • 7-1 实际工作中可能有成百上千,成千上万台服务器需要管理维护,比如由于安全漏洞,要升级openssl到特定版本,本节课如何大规模部署puppet,同时在大规模集群环境下如何提高puppet的性能,puppet的架构如何扩展。
    • 7-2 如何结合版本控制,环境变量,管理puppet的代码。
    • 7-3 puppet master节点瓶颈和扩展。
    • 7-4 自动签名。
    • 7-5 文件资源管理优化。
  • 第8课 Puppet 其它组件介绍
    • 8-1 有些时候我们并不需要每一个模块都自己编写,我们也可以借鉴已有的代码,如何迅速高效高质量完成工作是我们的目标,本节课讲解如何借助已有的代码迅速增加自己的puppet模块。 有些时候我们需要不同agent节点共享其它节点的数据,比如db服务器的需要添加web节点ip作为白名单。 有些时候我们需要一些额外的功能,比如facts里面的某些配置是true 或者 false,但是是字符串变量,如何转换成为bo
    • 8-2 Puppet DB 和导出资源。
    • 8-3 Puppet Dashboard。
    • 8-4 Puppet Forge。
    • 8-5 Puppet stdlib。
  • 第9课 puppet整合实战
    • 9-1 以具体业务系统讲解实际环境puppet配置管理。本节课内容会包含多个模块设计和编码。
  • 第10课 Mcollective
    • 10-1 并行作业执行系统,运维工程需要经常临时执行一些命令以便检查所有服务器特定文件内容,或者特定运行指标,甚至是下载特定文件等等,使用mco可以根据预定义的factor甚至是自定的特征批量执行任务命令。
    • 10-2 mco 配置和使用。
课程环境

Ubuntu-14.04 (Trusty)

授课对象

熟悉Linux系统,有一定脚本语言基础,希望在自动化方面深入研究和学习的IT从业人员。

收获预期

可以使用Puppet及其相关组件,实现运维业务系统自动化,提升运维自动化水平。

学费

学费: ¥400 ( 固定学费: ¥300, 逆向学费: ¥100 )

新颖的课程收费形式:“逆向收费”约等于免费学习,仅收取300元固定收费+100元逆向学费,学习圆满则逆向学费全额返还给学员!

炼数成金移动版 v2.0