概要
SoftLayer上のサーバーで、WordPressを約1分で設定するクックブック(GitHub https://github.com/takara9/wordpress01) の紹介です。
CHEFをできるだけ簡単に利用する方向で見直すと、こんな事が出来ました。 knife や chef server も使っていません。curl と git で取得して、chefコマンドを実行するだけの超簡単作業で、プロビジョニング完了後、約3分でWordPressを使い始める事が出来ます。
作業手順と実績時間
仮想サーバーをオーダーして、プロビジョニングが完了したら、root でログインして、以下のコマンドを実行します。
# apt-get install -y curl git
# curl -L https://www.opscode.com/chef/install.sh | bash
# knife cookbook create dummy -o /var/chef/cookbooks
# git -C /var/chef/cookbooks clone https://github.com/takara9/wordpress01
# chef-solo -o wordpress01
<中略>
Running handlers complete
Chef Client finished, 34/43 resources updated in 01 minutes 00 seconds
このクックブックを利用した場合、sshでログインしてから、CHEFで設定して、WordPressのページが利用出来るまでの実績時間は、約3分でした。
このクックブックの適用が完了すると、以下のページにアクセスする事ができます。
http://サーバーのIPアドレス/wordpress/
前提条件
最小実行条件を次の表に書きます。 最初は最小条件で稼働させておき、アクセス量などの負荷に応じてCPUコア数やメモリ量など増設すると良いでしょう。
項目 | 数量/種類 | 備考 |
---|---|---|
CPUコア数 | 1 x 2.0 GHz Core | |
メモリ(RAM) | 1GB | |
First Disk | 25GB (LOCAL) | |
OS | Ubuntu Linux 14.04 LTS Trusty Tahr - Minimal Install (64 bit) |
クックブックの説明
レシピ (https://github.com/takara9/wordpress01/tree/master/recipes) を読まないで、概要を知りたい方のために、箇条書きでご紹介します。
- リポジトリから最新状態に更新
- Nginx と php-fpm の導入とWordPressの実行用設定
- MySQL の導入とユーザー作成、アクセス権作成、DB作成などの設定
- Wordpressの最新版の導入
これだけの設定を実施するには、Linuxに慣れていても数時間は必要かもしれません。しかし、このレシピは、約1分で作業を間違いなく完了させるものです。
ファイアウォール設定も含めて早くする方法
サーバーのオーダー時に、ファイアウォール設定、日本語環境設定、日本時間のタイムゾーン設定を実施して、WordPressまでを導入する便利なプロビジョニング・スクリプトの例を用意しました。 このスクリプトは、https://github.com/takara9/ProvisioningScript/blob/master/ubuntu_chef_config においてあります。
サーバーのオーダー時に、プロビジョニング・スクリプトを実行する方法は、ソフトレイヤー活用ガイドの 1.2.2 設定スクリプトの自動実行 (https://www.change-makers.jp/post/10294) を参照願います。
https://github.com/takara9/ProvisioningScript の "ubuntu_chef_config" では、プロビジョニング・スクリプトの中から、CHEFを実行して、WordPressの実行環境を設定する方法を紹介しています。