SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine(コードジン) DeveloperZine(デベロッパージン)- エンジニアの意思決定を支える技術情報メディア ProductZine

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

サーバ/アプリケーションの構築自動化&構成管理ツール「Chef」入門

構成管理ツール「Chef」の概要とインストール手順

サーバ/アプリケーションの構成管理ツール「Chef」入門 (1)


Chefインストール手順

1. Chef 11 Serverのインストール

 2013年10月現在、Opscode社より、次のバージョンのRHELとUbuntu用にChef 11 Serverのインストーラが提供されています。

  • RHEL 5, 6(x86_64)
  • Ubuntu 10.04, 10.10, 11.04, 11.10, 12.04, 12.10(x86_64)

 今回はUbuntu Server 12.04(x86_64)を使用し、Chef Server11.0.8(2013年10月最新版)とClientを別々のホストにインストールします。バージョンは適宜最新のものに読み替えてください。

ホスト名 用途
chef11 Chef Server
Workstation Workstation(Clientインストール)

 事前にChef Serverとなるホストのホスト名、FQDNを適切に設定します。

 また、WorkstationやNodeとなるホストから名前解決できる必要があります。

 DNSサーバを使用しない場合、/etc/hostsにChef Serverのホスト名とIPアドレスを記載しておきます。

 Chef 11 Serverのパッケージをインストールすると、NginxやPostgreSQLなどが別途インストールされ標準的なポート番号を占有します。そのためこれらのポートを専用に利用できる環境にChef 11 Serverをインストールします。

 必要なパッケージは、Opscode社のサイトよりダウンロードできます。

 「Chef Server」タブに移動し、プルダウンメニューより対象のOSとバージョンを選ぶと、ダウンロード可能なパッケージが1つ表示されます。このダウンロードしたパッケージをインストールするだけでChef 11 Serverの環境が準備できます。

 まず、必要なパッケージをホストへダウンロードします。

 次に、ダウンロードしたパッケージをインストールします。必要なパッケージがすべてインストールされるために時間がかかる場合があります。

chef-sv@chef11:~$ sudo dpkg -i chef-server_11.0.8-1.ubuntu.12.04_amd64.deb
[sudo] password for (ユーザ名):
Selecting previously unselected package chef-server.
(Reading database ...
(Reading database ... 5%
(Reading database ... 10%
     	:   	
    	:   	
    	:
(Reading database ... 100%
(Reading database ... 73750
files and directories currently installed.)
Unpacking chef-server (from chef-server_11.0.8-1.ubuntu.12.04_amd64.deb) ...
Setting up chef-server (11.0.8-1.ubuntu.12.04) ...
Thank you for installing Chef Server!
 
The next step in the install process is to run:
 
sudo chef-server-ctl reconfigure

 「Thank you for installing Chef Server!」とメッセージが表示されたらパッケージのインストールは成功です。

 しかし、このままではパッケージがインストールされただけで実際には使用できないため、メッセージにあるコマンドを実行します。

chef-sv@chef11:~$ sudo chef-server-ctl reconfigure
Starting Chef Client, version 11.4.0
Compiling Cookbooks...
Recipe: chef-server::default
    	:   	
    	:   	
    	:
Chef Client finished, 270 resources updated
chef-server Reconfigured!

 上記のコマンドは、名前解決ができていないと失敗します。次のコマンドを実行すると、Chef Serverが適切に設定されたかどうかを確認することができます。

chef-sv@chef11:~$ sudo chef-server-ctl test
Configuring logging...
Creating platform...
Starting Pedant Run: 2013-10-04 03:53:24 UTC
setting up rspec config for #<Pedant::OpenSourcePlatform:0x00000003b3bf98>
Configuring RSpec for Open-Source Tests
    	:   	
    	:   	
    	:
Finished in 2 minutes 7.29 seconds
70 examples, 0 failures

 「0 failures」が表示されれば問題なくインストールができています。

 chef-server-ctlコマンドは、Chef Serverの起動や停止などが実施できます。

chef-server-ctl [OPTION]

 上記のコマンドについては、Opscode社のサイトに詳細があります。

 Chef 11 Serverのファイル自体のインストールは/opt/chef-server以下に行われますが、設定を行うことで/etcや/varなどのOS領域に変更が加えられることに注意してください。

chef-sv@chef11:~$ dpkg -L chef-server | cut -d/ -f1-4 | uniq
/opt
/opt/chef-server
/opt/chef-server/version-manifest.txt
/opt/chef-server/embedded
/opt/chef-server/service
/opt/chef-server/bin
/opt/chef-server/init
/opt/chef-server/sv
/opt/chef-server/embedded

 パッケージのインストールが完了すると、ブラウザよりWeb UIへアクセス可能です。

  • https://[ホスト名orホストのIPアドレス]

 この際、443番ポートが使用されます。また、ユーザ名とデフォルトパスワードは画面右側に表示されます。

次のページ
2. Chef Clientインストール

この記事は参考になりましたか?

この記事の著者

須藤 法子(クリエーションライン株式会社)(ストウ ノリコ(クリエーションラインカブシキガイシャ))

クリエーションライン株式会社 エンジニア。インフラエンジニアとして、大規模クラウドサービスのインフラ構築を担当。その際に Chefと出会う。現在は、主にクラウド基盤の運用/サポートと教育、技術支援を担当。 クリエーションライン株式会社クラウド基盤に関する設計・構築に関して多数の実績を持ち、ハイブリ...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

CodeZine(コードジン)
https://codezine.jp/article/detail/7484 2013/11/20 17:42

おすすめ

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー