連載
AWS OpsWorksって何? から、運用しやすくなる下準備のポイントまで:AWS OpsWorksアプリケーション運用の勘所(1)(5/5 ページ)
ChefをベースにしたAWS OpsWorks。実際に使ってみるとどんな感じ? 筆者が体当たりで検証。運用面でのハウツーも紹介していきます。
アプリケーションインストール後の注意点は?
ここまでで、EC−CUBEのインストールまでが終了しました。ここからは、インストール終了後の作業の注意点を紹介していきます。
データベースの設定はハードコーディングしない
インストーラからのインストールが終わったら、データベースの設定などをAWS OpsWorksのための設定に変更します。
AWS OpsWorksでデプロイするとデプロイされたディレクトリに、opsworks.phpというファイルが置かれています。このファイルにはデータベースに接続に関する情報や、ロードバランサの情報など、他のLayerも含めたstackの情報が書かれています。このファイルはデプロイのたびに新しいものに書き換えられます。データベース側ではなくこちらのファイルを使って設定を書き換えていきましょう。
実際に書き換えたファイルは次の通りです。
<?php require_once(dirname(__FILE__).'/../../opsworks.php'); $ow = new OpsWorks(); define('ECCUBE_INSTALL', 'ON'); $lbhosts = $ow->hosts('lb'); //define('HTTP_URL', 'http://'.$lbhosts[0].'/'); //define('HTTPS_URL', 'http://'.$lbhosts[0].'/'); define('HTTP_URL', 'http://example.com/'); define('HTTPS_URL', 'https://example.com/'); define('ROOT_URLPATH', '/'); define('DOMAIN_NAME', ''); define('DB_TYPE', 'mysql'); define('DB_USER', $ow->db->username); define('DB_PASSWORD', $ow->db->password); define('DB_SERVER', $ow->db->host); define('DB_NAME', $ow->db->database); define('DB_PORT', ''); define('ADMIN_DIR', 'admin/'); define('ADMIN_FORCE_SSL', FALSE); define('ADMIN_ALLOW_HOSTS', 'a:0:{}'); define('AUTH_MAGIC', 'frajeapiagouwathiotijusaphouclotaiwebouj'); define('PASSWORD_HASH_ALGOS', 'sha256'); define('MAIL_BACKEND', 'mail'); define('SMTP_HOST', ''); define('SMTP_PORT', ''); define('SMTP_USER', ''); define('SMTP_PASSWORD', '');
インストール後の状態をrepositoryと同期
AWS OpsWorksではgithubからのデプロイをすると、ローカルにdeployというbranchが作成されます。これをそのままgithubにpushしてしまいましょう。
$ git push origin deploy
これでEC-CUBEをAWS OpsWorksで運用する準備が整いました。
次回は実際に運用で起こりそうな作業をAWS OpsWorksでやる場合どうなるのかを見ていきます。続く第3回では、AWS OpsWorksでのトラブルシューティングを予定していますのでお楽しみに。
Copyright © ITmedia, Inc. All Rights Reserved.