togatttiのエンジニアメモ

過度な期待はしないでください.

UbuntuにChefでLAMP環境構築する

前回作成したUbuntu環境に合わせる。

まず、Chefやknife-soloは事前にインストールしておく。

Chefは公式サイトのInstall Chef | Chefから下記コマンドでインストールする。

curl -L https://www.opscode.com/chef/install.sh | sudo bash

knife-soloはgemでインストールする。

sudo gem i knife-solo

また、ソフトウェアの各バージョンは以下のようにしてある。

MacOS 10.9.1
Ruby 2.0.0
gem 2.0.3
VirtualBox 4.3.6
Vagrant 1.4.3
Chef 11.10.0
knife-solo 0.4.1
仮想のUbuntu 13.04

Chefとknife-soloのバージョンの組み合わせでうまくいかないことがある。

そのときは最新版ではなく、Chefのバージョンをダウングレードしたりするといいかもしれない。

今回はUbuntuに下記を自動で入れることにした。

apache2 mysql-server php5 php5-mysql

基本的な手順は下記のようになる。

  • knife-soloの初期設定を行う。

  • 仮想サーバーにChefをインストールする。

  • ローカルにChef用のリポジトリを作る。

  • レシピ(仮想サーバーに自動インストールするソフトウェアの設定など)を作る。

  • レシピを実行する。

各コマンドの詳細な説明は他の記事に譲り、スクリプトを作成したので、実行する。

また、Ubuntuは一番はじめにパッケージを更新する必要がある。

sudo apt-key update; sudo apt-get update

実行しないと、怒られる。

ERROR: RuntimeError: chef-solo failed. See output above.

cookbookの書式にも慣れる。