有没有人有进行生产更改时使用的行事历的好例子?

我一直对IT团队如何计划生产更改感兴趣。 通常我们使用Runbook来布局变更的关键步骤以及退出计划。 我很想看看我们能否从别人那里学习,如何最好地logging运行手册。

我做的事:

所有需要从已安装的操作系统基线进行更改的服务器configuration由Chefpipe理,Chef将其存储在模块(称为cookbooks)中,然后通过Git将其存储在版本控制中。

大多数configuration是在testing系统(通常是VM映像或简单的EC2实例)上手动完成的,然后编写configuration配方以涵盖所有这些更改的各个组件。 更新环境工作stream程如下所示:

  • 在适当的系统中创build需要更改的票据。
  • logging所有的变化和变化。
  • 编辑在目标系统或系统上进行更改所需的configuration配方,模板,文件等。
  • 将更改提交到本地存储库并推送到主版本控制服务器。
  • 更新票据以进行同行评审。
  • 更改签名,并将更改部署到Chef服务器,以便知道更新的位。
  • 在客户端手动运行Chef,或根据更改的要求自动运行Chef。 (我不会用超过6个系统手动运行)。

如果运行客户端时出现问题,比如软件包不存在,或者找不到模板文件,或者其他许多问题,则厨师的操作模式将失败。 解决问题,在票证文件,然后重新运行客户端。

有变更业务要求的人证实它是成功的,他们closures票。

厨师特定,因为这是我使用的。 为适合你的环境而select合适的工具,如果你不使用configurationpipe理工具,你需要看一些东西,因为它使整个过程更健壮和可靠。 更不用说可扩展。

我更喜欢有评论和打印的脚本。
他们有logging和自动化的双重优势。

但是,采取更全面的方法,通常有很多事情要跟踪,
脚本只适用于需要按顺序完成的事情。

当涉及很多笔记时,我更喜欢本地托pipe的Wiki( 个人或团体 )。
它可以用来

  1. 用链接引用你的工具,并写下快速的笔记
    • 枚举联系人和升级引用
    • 根据关键字logging紧急步骤
    • 备份位置和恢复序列
    • 提供常规需求和解决scheme的可searchlogging; 所以人们在检查完之后来找你

但是,只要保持位置安全 – 您不希望紧急情况下的数据无法访问。

这是一个旧的Microsoft Technet SQL Server Runbook页面,用于捕捉通用想法。

对于真正的关键和敏感的变化,我将通常有一个文本文件与我将用#comments解释正在发生的实际命令。 这样,我可以快速地将它们粘贴到terminal中。

我会把第二个基本想法抛在jtimberman的post上,傀儡是我select的工具。