Categories
common

subcon使用笔记

在温习flickr的ppt时,看到里面提到了一个叫subcon的工具。由于这个工具已经在google code上开源,所以我毫不客气的下载回来细细端详:

    • 这工具用python写的
    • 用svn保存配置文件,用subcon比较容易的部署到多台服务器上
    • 既然是用svn保存,那么回滚到指定版本也是支持的
    • SystemImager工具的集成是做为添头附送的,理论上你可以利用这个工具做到一步安装服务器

初印象就是如此,实际的使用时,你首先要在svn上创建两个目录

    • base
    • roles

然后可以试着提交一些服务器配置文件例如/etc/hosts到base下,再通过简单命令把配置同步到服务器上

subcon -n

也可以指定别的类型的配置文件例如www或者memcache,以服务器apache配置文件/etc/httpd为例:

    • 创建目录roles/www
    • 提交/etc/httpd目录到roles/www目录下
    • 十来个字符就可以部署这些文件到服务器上
      subcon -n -owww

同样的道理,只要在roles路径下新增各种类型的配置文件,就能比较快捷的部署到服务器上。还有些小功能,需要使用中自己挖掘了:

    • 更改某个配置文件之后,自动执行指定的命令行,参看/etc/subcon.conf
    • 回滚配置文件到指定版本的功能,这功能一般是在悲剧发生时才会使用吧?所以这个功能也很悲剧的有bug,手工hack一下才能使用。提示:在代码中找到revision字样,用int转换一下类型,命令行参数到了python里面估计都算string了。
    • 如果有多个服务器共用部分配置文件,可以利用svn:externals属性创建一个链接
    • subcon实际上是python的svn客户端 + rsync

工具很简单,也有些bug,但是足够用了。

One reply on “subcon使用笔记”

Leave a Reply

Your email address will not be published.