监控大户 Etsy 最近有公布了一个全新的监控分析系统,叫 Kale,博客地址:http://codeascraft.com/2013/06/11/introducing-kale/。 继续阅读……
18 Jun 2013 Posted in monitor
监控大户 Etsy 最近有公布了一个全新的监控分析系统,叫 Kale,博客地址:http://codeascraft.com/2013/06/11/introducing-kale/。 继续阅读……
12 Jun 2013 Posted in
2007 年,时任虚拟世界游戏公司 Vivaty 运维副总裁的 Jon Prall 在他的个人博客上发表过一篇《运维的85条规则》。2010 年他跳槽到视频电话公司 Tango 之初,做了两处更新,兹翻译如下: 继续阅读……
28 May 2013 Posted in devops
首先要申明,rex 和 puppet 本质上是不同的,puppet 追求的是状态,rex 追求的是操作。puppet 用户经常关心的是 agent 运行了没,而 rex 用户关心的是怎么写 Rexfile 能让中控运行 rex 时的命令参数更简洁漂亮(个人感受==!)。所以哪怕在本文中列举的这些资源写法很类似,也请读者们注意:rex 的资源关键词命名,都是带有动作性的,比如 create
,add
,install
,upload
,download
,sync
等等。甚至精确的说,rex 里这些不是资源(Puppet::Types::***
),他们是 Rex::Commands::***
。
继续阅读……
27 May 2013 Posted in devops
Vagrant 是近来 devops 界内非常流行和火爆的工具,它和 puppet/chef 的结合,成为运维开发和测试,甚至预热部署的重要手段。比如在 cloudfoundry 官方放弃使用 vcap_setup
脚本部署后,社区大多对其 BOSH
不买账,转而研究使用 vagrant 部署了。
继续阅读……
14 May 2013 Posted in perl
现在的网站越来越狡猾,连招聘网站的信息都懂的把公司的联系方式动态图片化了。还好为了观看方便,没加什么干扰。所以写个脚本来识别还是可以的。虽然到目前为止没发现比较好的 OCR 工具——我指的是可以直接apt-get安装的,有朋友知道哪个比较好的话,欢迎告诉我~ 继续阅读……
19 Apr 2013 Posted in perl
通过 Newbie::Gift 项目的开发过程,学习和深入了解了不少 Perl 知识,虽然这个模块估计短期内不会再继续开发和更新了,不过还是值得记录一下这段过程中的心得。 继续阅读……
16 Apr 2013 Posted in devops
foreman 是社区比较推荐的一款 puppet 辅助工具。可以用来实现 ENC 控制,class 编写,Facts 变量统计和 reports 分析查询等等。 继续阅读……
02 Apr 2013 Posted in perl
前段时间看到报道说,puppet 的作者本来是用 perl 完成的原型设计,后来改用的 ruby。所以我想,目前这个 puppet 的 DSL 设计,用 perl 来完成的话,应该如何做。 继续阅读……
01 Apr 2013 Posted in perl
我一直很喜欢 Dancer
里的 keyword 方式,所以很少使用 Mojolicious
框架来写网站,不过 Mojo::UserAgent
和 Mojo::DOM
在一起作为爬虫工具使用,真是太方便了。这两天需要自己打包 tengine
,考虑自动化因素,需要从 tengine
和 其他第三方模块的 github
托管网页上定期查询其更新,都是一行代码就搞定了。整个 Build.PL
如下:
继续阅读……
28 Mar 2013 Posted in
Haml 是 Ruby 社区的一种 HTML 标记语言,它利用强制缩进和类似 jQuery 属性标签的风格,简化书写 HTML 的工作。文档见:http://haml.info/docs.html。 继续阅读……
18 Mar 2013 Posted in linux
在一次包更新后,发现 Nginx 服务器的每晚日志切割不再进行了。找遍了各种地方,最后在一次偶然的ls -l
中发现:
继续阅读……
15 Mar 2013 Posted in devops
Puppet 默认提供了相当多的资源类型,不过我们还可以更进一步的扩展这个庞大的阵营。比如在 package
类型的资源里,我们看到 puppet 除了系统级别的yum
,apt
之类意外,还提供了 gem
,pip
来管理 ruby 和 python 的 package。那么很自然的,我们就可以进一步扩充 package
来管理 perl 的 package 。只需要新加一个 provider 就可以了。
继续阅读……
14 Mar 2013 Posted in monitor
之前已经陆续写过很多种告警的方式。今天再稍微试验一种更新潮一些的 —— 手机推送通知。原先我的想法是移植 HTML5 的 websocket + notification 页面到手机上。但是发现手机上的浏览器都还没有 notification 功能。即便是用 PhoneGap 包装 HTML5 应用,PhoneGap 的 notification API 也不是我想象中的状态栏通知,而是类似 js 的 alert 对话框。 继续阅读……
25 Feb 2013 Posted in testing
22 Feb 2013 Posted in perl
STF 更新到 2.0 版本,支持使用 redis 队列做任务分发,比原先的 Q4M 容易上手多了;新增了 cluster 概念,虽然目前看没什么用,不过估计以后肯定要在这方面做文章的。 继续阅读……
31 Jan 2013 Posted in devops
Puppet 除了原有 DSL 以外,还提供了不少接口方便大家开发插件来更简单的完成一些高级功能。 继续阅读……
11 Jan 2013 Posted in monitor
google 之前推出了一个 netoops 的 patch,可以让 linux kernel 在崩溃的时候通过 udp 协议把信息发送到远端主机上。我之前在 CentOS6.2 的内核上做过测试,详细做法可以参见淘宝内核组 wiki 的编译使用淘宝内核和 netoops 使用指南。唯一有区别的地方就是淘宝使用的 RedHat6 的内核在 CentOS6 上有签名问题,需要自己从 CentOS 官网 ftp 下载 src.rpm 来用 —— 当然如果要自己搞定编译那步,少不了就要自己修改 config-genaric 和 kernel.spc 文件了。 继续阅读……
10 Jan 2013 Posted in devops
今天把 puppet 从2.7 升级到了 3.0。同时放弃了之前通过 ENC 定义所有 top scope variable 的做法,改成只定义一个 role 变量,然后在各个 module 里根据 $role 加载不同的module::role ,把变量都写在 module::role 里。 继续阅读……
10 Jan 2013 Posted in devops
上文提到 github 给 puppet 开发的几个附件。其中有扩展 rspec 的 rubygems 模块叫做 rspec-puppet。官网见:http://rspec-puppet.com 继续阅读……
06 Jan 2013 Posted in linux
限制带宽简直就是系统管理员的永恒话题之一。当然我这里就不讨论端口限速什么的了,百度一下一大把。但如果要的是限制某个特定进程的带宽,事情就有趣多了。 继续阅读……
30 Dec 2012 Posted in perl
Perl 社区并不是所有的东西都发布在 CPAN 上。甚至专门有一个 Module::ThirdParty
模块记录这些非 CPAN 的 perl 项目列表。其中最有名的应该就属写博客的 Movable Type
和做监控的 SmokePing
了。
继续阅读……
22 Dec 2012 Posted in perl
一年一度的 advent 集合中,除了 perl 的部分,还有 sysadmin 的也很吸引我等运维的眼球。不过 sysadmin 的一直是发表在blogspot 上,光荣的被 GFW 认证了。虽然说翻墙应该是这年头越来越普及的技能,但是能提供免墙的办法,想来那真真是极好的。 继续阅读……