かべぎわブログ

技術的なことについてかけたらいいな…

インフラ構成管理ツールの各レイヤーについて

インフラ構成管理ツールにおける代表的な役割というか各レイヤーというか、機能をとか役割とかによって以下のように呼び方がちょっと違うらしい。

調子に乗ってオーケストレーションがーー云々などとのたまっていたので戒めの意味を込めてまとめる。

Bootstrapping

OSの起動を自動化するツール

物理環境やクラウド環境でサーバOSをインストールしたり、仮想化ツール(VMなど)をインストール/設定を自動化することができる。
物理環境においては、ベンダが提供する管理ツール(iLoなど)を連携することで実現が可能。

VagrantやRHELで利用できるKickStartなどがこれにあたる。

Configuration

OSやミドルウェアの設定を自動化するツール

ミドルウェアのインストールや設定を行うことができる。
OSインストール後の各種設定を自動化することができる。

ChefやAnsible、Puppetなどがこれにあたる。

Orchestration

複数サーバ感での連携/管理を自動化するツール

大規模なシステムを構成するサーバ群を監視し、障害が発生したノードを取り除いたりなどをすることが可能。
サービスの連携を調整することもできるため、バックエンドの準備が完了したらフロントを起動するなどの連携が容易になる。

SerfやCapistrano、Kubernetesがこれにあたる。
つかいかたによってはAnsibleもここかも。

おわりに

Infrastructures as Codeはいいぞ

Infrastructure as Code ―クラウドにおけるサーバ管理の原則とプラクティス

Infrastructure as Code ―クラウドにおけるサーバ管理の原則とプラクティス