(1/2)エンタープライズ向け機能が充実してきたChefを使って高速かつ精度の高いサーバーインフラを構築/管理する方法について解説する連載。Server、Chef-Zero、Knife-Solo、Knife-Zeroの概要と、Chef-ZeroをKnife-Zero経由で利用するCookbook開発環境の構築について解説します。Code」を実現するためのツールの一つです。Code」とは、手順書を元に手動で行うITインフラの構成管理を、定められたコードの形式として記述し、自動で実行する仕組みのことです。従来、サーバー環境の構築は「コマンド」や「スクリプト」を駆使して、それらを「手順書」という形で残す方が多かったかと思いますが、それには、以下のようなさまざまな問題があります。Code」の適用によって問題の解決が期待できます。構築手順書通りに構築しても動作しない→Chefにはプラットフォームごとの差分を埋めてくれる機能が実装されている。サーバー設定を必ずツールを用いて行う運用を徹底することで、手順書の更新漏れを防ぐことができる本番環境と開発環境で設定の差分が生じる→開発環境を構築する際にもChefを用いて構成管理を行っていれば、全く同じ設定を本番環境に適用することができる管理するサーバー台数が増加し、構築や設定変更に時間がかかる→手順がコード化されているので、複数台に一括適用することが可能。Serverは、大量のサーバーを管理することを容易にすることを念頭に置いて開発されている本連載では、従来型のサーバーインフラ構築/管理手法からサーバー構成管理ツール「Chef」に移行するに当たって、つまずきやすいポイントについて集中的に取り扱い、高速かつ精度の高いサーバーインフラの構築/管理の手助けをすることを目的とします。12がリリースされました。その主な特徴について説明します。12時点では廃止されておりませんし、現時点では明確な廃止時期も提示されておりません)。Serverを中心とした「大規模環境のインフラ管理にフォーカスしたシステム」と位置付けてより進化させようとしていることがうかがえます。12のアップデートにおいても、サブスクリプションモデル・VMware対応などエンタープライズ向けの機能が充実してきたという印象を受けます。Server、Chef-Zero、Knife-Solo、Knife-ZeroChefはその実行形式により何種類かのプログラムに分かれます。それぞれのアーキテクチャについて解説します。以降はCookbookを適用する対象のコンピューターを「ノード」と記載します。SoloChef-ServerなしでノードにCookbookを適用します。Serverとの互換性はなく別のプログラムとして存在しています。Client」から構成されるクライアント・サーバー形式のChefアーキテクチャです。Serverについては以下記事で詳説されていますので、ご参照ください。ServerなしでローカルサーバーにCookbookを適用します。Clientがスタンドアロンで動作しています。上記アーキテクチャのコマンドラインインターフェースとして提供されているのが「knife」と呼ばれるプログラム群です。Knife-Soloレシピ一式をリモートサーバーへ転送し、Chef-Soloをリモートサーバー上で実行しCookbookを適用するものです。SoloではノードにChefのインストールおよびCookbookの配置を手動で実施する必要がありましたが、Knife-Soloを使用することで、Cookbookの開発環境からノードへのChefインストールおよびCookbookの実行が行えるようになっています。LocalMode)に変更されています。LocalModeをノード上で実行させCookbookを適用するものです。手順と評価検証、Puppetの基礎知識サーバー構築の自動化で利用される技術、自動化ツールとして「Kickstart」「Puppet」を紹介し、構築から運用まで、システムライフサイクル全体にわたる運用管理の自動化についても解説する連載。“抽象化”が実現する「究極の自動化」とは前回はOpenStackの活用ポイントと、今後のシステム開発・運用に与える影響——特に自動化にフォーカスして紹介した。会長の中島倫明氏が、「OpenStackによる自動化の仕組みと実施法」を分かりやすく解説する。OSの設定や構成を変更する場合、GUIの管理ツールを使うのが一般的である。台数が多かったり、構成変更や以前の構成への復旧などが頻繁だったりするとGUIでは非常に面倒だし、間違いもしやすくなる。DSCを使ってインフラ構築作業を自動化するとよい。ハイパーバイザー型とコンテナー型の仮想化の違いも解説します。メールマガジンをご購読ください。申し込みページへITmediaはアイティメディア株式会社の登録商標です。