什么是Advanced

在网络上,你能找到大量关于Puppet的安装,配置以及基础用法的文章和博客。你在通过一段时间的实战后,熟练掌握了Puppet基础用法,随着你管理的集群日益扩大,你的部署逻辑越来越复杂,当你打算使用到一些Puppet高级用法时,当你想要对puppet代码写测试用例时,当你希望对Puppet进行性能调优时,当你想构建中心化的Puppet集群时,当你计划使用puppet构建完整的开发时,测试和线上环境,当你思考Puppet能否实现线上服务的灰度发布时...却发现几乎找不到这样的资料。

这些经验是需要时间去积累和摸索的,恰巧我学习puppet的时间较早,一直在负责管理线上复杂的业务逻辑,并且持续参与开源社区的开发工作,这也是我计划写一个关于Puppet进阶使用系列,希望通过这个Advanced Puppet系列来分享我在Puppet领域上的一点经验,当然我的水平有限,若有疏漏之处,恳请指正。

克服惰性

每个人都有惰性,我也不例外,过去看过我博客的同学会发现我是一个经常会把文章变成太监的人 LOL。从最早协作导师编写的用于南方科大CS课程的MIT&Pudure的Python编程系列,到研二时突然着迷的自然语言处理NLTK学习笔记,到在新浪实习时Openstack对象存储项目Swift的学习笔记都无一善始善终。曾经答应给图灵编辑写的Puppet文章,也只交了一篇稿之后就没有下文了。

我把最主要的原因归结为太忙,每逢老大催写博客或者编辑催稿,我就以忙为理由推卸,这招很管用,因为我确实很忙:内部持续交付系统需要不断地完善和维护,Openstack服务和UOS服务地部署逻辑在不断更新,开发环境和测试环境需要持续维护,同僚的代码审查,包维护,新版本的频繁发布和大版本升级,服务切换,故障处理,新region的上线,还有开源社区的开发,讨论和代码审查...每天到公司里就一直忙到下班,晚上走出健身房的时候已经是华灯初上了,回到家中洗完澡躺在床上,浏览一会一直关注的摄影网站,接着继续工作,因为手头永远有做不完的活,稍有空闲的时候打开自己一直参与的开源社区邮件列表,社区的代码审查系统,每周一的深夜还要在IRC上参加例会到凌晨。

每次睡觉前,我一躺下就能看到墙上的那张便签:每天坚持写blog。我一直是10000小时定律的拥甭,曾在毕业时写了一篇文章来鼓励自己,待到2015年7月份,我能在某个小领域内略有小成,现在14年都已过去一半,可今年写的博客屈指可数,艾,惭愧得无地自容。

经过几天的思考后,我打算就从Advanced Puppet系列开始,争取定期交付数篇高质量的文章,给过去的这段时光里自己在Puppet上所积累的经验做一个总结。

废话不多说,诸君骇视而拭目。

Advanced Puppet 系列的前言的更多相关文章

  1. “Ceph浅析”系列之一——前言

    开源技术专家章宇同学(@一棹凌烟)在C3沙龙分享过Ceph之后,最近来了劲头,一口气写了一系列<Ceph浅析>的博文,共8篇: "Ceph浅析"系列之一--前言 &qu ...

  2. [转]C#中基于GDI+(Graphics)图像处理系列之前言

    直接给出原文链接吧: C#中基于GDI+(Graphics)图像处理系列之前言 链接:https://pan.baidu.com/s/1zm5TCOHqkqEfiLZuqO0UMA 提取码:qz0h

  3. webpack4 系列教程: 前言

    1. 什么是webpack? 前端目前最主流的javascript打包工具,在它的帮助下,开发者可以轻松地实现加密代码.多平台兼容.而最重要的是,它为前端工程化提供了最好支持.vue.react等大型 ...

  4. Java工程师之SpringBoot系列教程前言&目录

    前言 与时俱进是每一个程序员都应该有的意识,当一个Java程序员在当代步遍布的时候,你就行该想到我能多学点什么.可观的是后端的框架是稳定的,它们能够维持更久的时间在应用中,而不用担心技术的更新换代.但 ...

  5. Java工程师之Redis实战系列教程前言&目录

    系列前言 Java工程师之Redis实战系列教程,同其他教程一样,均是在下学习笔记,本系列主要参考自<Redis-in-action>,将书本中的有趣的例子转化为能解决特定问题的示例程序, ...

  6. Java开发之上帝之眼系列教程前言&目录

    前言 如果您正在为Java后端庞大的体系所困扰,如果您正在为各种繁出不穷的技术和各种框架所迷茫,那么本系列文章将带您窥探Java庞大的体系.本系列教程希望您能站在上帝的角度去观察(了解)Java体系. ...

  7. .net工作准备系列--01前言

    注:学习参考朱毅编著的进入IT名企必读200题. 内容重在自我学习与巩固. 前言: 章节划分 01应聘须知 02基础知识(重点) 03进阶知识 04重点应用(aspnet第一部分) 04重点应用(as ...

  8. 【Appnium+C#+Winform自动化测试系列】前言

    目录(后期持续更新) 一.前言  1.为什么选择Appnium 最近这些年APP保持着持续的火热,对应的APP测试行业也是跟着水涨船高.由于市场的需求,APP测试平台也涌出大量的自动化测试工具. 在对 ...

  9. SLAM+语音机器人DIY系列:前言

    ------SLAM+语音机器人DIY系列[目录]快速导览------ 第1章:Linux基础 1.Linux简介 2.安装Linux发行版ubuntu系统 3.Linux命令行基础操作 第2章:RO ...

随机推荐

  1. rm: Argument list too long

    rm -rf  /testdir/* -bash: /bin/rm: Argument list too long 解决: cd /testdir/; ls | xargs rm -rf

  2. Pig Hive对比(zz)

    Pig Latin:数据流编程语言 一个Pig Latin程序是相对于输入的一步步操作.其中每一步都是对数据的一个简单的变换. 用Pig Latin编程更像在RDBMS中“查询规划器”(query p ...

  3. HDU2243_考研路茫茫――单词情结

    给出一些词根,问你有多少种长度为L的串包含至少一个词根. 去年就在敲这个题了,今年才敲出来,还是内牛满面之中... 要求包含至少一个的情况,需要求出所有的情况,减去一个都没有的情况就可以了. 对于给出 ...

  4. Exception in thread “main” com.google.gson.JsonSyntaxException: java.lang.NumberFormatException: empty String

    String json="A valid json"; Job job = new Gson().fromJson(json, Job.class); Exception in t ...

  5. MySql自动分区

    自动分区需要开启MySql中的事件调度器,可以通过如下命令查看是否开启了调度器 show variables like '%scheduler%'; 如果没开启的话通过如下指令开启 ; 1.创建一个分 ...

  6. Java 入门 代码2浮点数据类型

    /** * 基本数据类型之浮点类型 */ public class DataTypeDemo2 { public static void main(String[] args) { double d1 ...

  7. 关于在xml文件中的 error: invalid symbol: 'switch' 错误

    在xml布局文件中使用Switch控件时,出现error: invalid symbol: 'switch'报错,代码如下: <Switch android:id="@+id/swit ...

  8. google hack 之 查询语法

    google hack 之 查询语法 文/玄魂   前言 谷歌网页搜索技术,大部分在百度等搜索引擎中也适用.同样,这些搜索技术是来源于传统数据库检索技术,因而,对这部分的学习,能为后续章节的数据库检索 ...

  9. UnicodeDecodeError while using json.dumps()

    UnicodeDecodeError 系统.文件.vim全部设置为utf-8 export LANG=zh_CN.UTF8 # coding:utf-8 json.dumps(content, ens ...

  10. [ACM_模拟] ACM - Draw Something Cheat [n个长12的大写字母串,找出交集,按字母序输出]

    Description Have you played Draw Something? It's currently one of the hottest social drawing games o ...