tkak's tech blog

This is my technological memo.

Linuxサーバ構築ツールまとめ

仮想化技術が進歩し、大量のサーバを管理・構築することが多くなりました。

PuppetやChefなど、サーバ構築・管理を自動化するいろんなツールがあるので、
整理しておこうと思います。

以下の3つに分類します。

  • Provisioning Tools
    • kickstart
    • cobbler
    • crowbar
    • spacewalk

BIOS設定、PXEブート、kicskstartなど、一番下のレイヤーのOSインストールまでを行うツールです。

  • Configuration Management Tools
    • puppet
    • chef
    • saltstack
    • rundeck

and more...
http://en.wikipedia.org/wiki/Comparison_of_open_source_configuration_management_software

パッケージ管理や設定ファイルの配布など、OSより上のレイヤーの管理を行うツールです。

デプロイや設定ファイルの修正など、大量のサーバに対しインタラクティブな操作を行うツールです。


以下、リンクとメモ書きです。

Provisioning Tools

kickstart

RHEL系のLinuxディストリビューションのOSインストールを自動化する機能。
http://fedoraproject.org/wiki/Anaconda/Kickstart

cobbler

Linuxの自動インストールを管理するサーバ。
http://cobbler.github.com/

crowbar

サーバプロビジョニングのプラットフォーム。ファームウェアのUPDATEやPXEブートからのOSインストールが可能。
DELLのCloudEdge Solutions Teamが、OpenStack用のインストーラとして開発したもの。
Chefサーバをラップしているので、OSから上の設定をできるのかも。
https://github.com/dellcloudedge/crowbar/wiki

spacewalk

サーバのHW設定の情報を閲覧したり、kickstartを実行したり、ブラウザからサーバの管理ができる。RHEL系のみ。
http://spacewalk.redhat.com/

Configuration Management Tools

puppet

システム自動管理ツール。rubyで書かれている。サーバ/クライアント型。
サーバ側でマニュフェストと呼ばれる設定ファイルを管理し、
クライアント側は定期的に(デフォルトで30分)サーバからマニュフェストを取得し、
クライアントサーバをあるべき姿に維持する。
http://puppetlabs.com/