NECモバイルバックエンド基盤サーバをセットアップする Ansible Playbook です。
ターゲットホスト
制御ホスト(Ansible を実行するホスト): Ansible 2.0 以上
Playbook 実行中に Internet 上のサイトから必要なソフトウェアをダウンロードするため、ターゲットホストは Internet に対して HTTP/HTTPS で通信できるようになっている必要があります。
制御ホスト側に Ansible 2.0 以上をインストールしてください。
制御ホストからターゲットホストに同一ユーザ・パスワードなしで ssh でログインできるよう、ssh 鍵認証の設定を行ってください。 具体的には制御ホストの ssh 公開鍵を制御ホストの ~/.ssh/authorized_keys に追記してください。
ssh パスワードが必要な場合は、以降 ansible-playbook を実行する際に -k オプションが必要になります。 また、ユーザ名が異なる場合は -u オプションも必要です。
ターゲットホスト側は、sudo でスーパーユーザ権限でコマンドを実行できるように設定してください。 sudo はパスワードなしで実行できるようにすることを推奨します。 sudo 時にパスワードが必要な場合は、以降 ansible-playbook を実行する際に -K オプションが必要になります。
パラメータ(Variable)設定は group_vars 内の各ファイルに記述してください。 各パラメータ値の詳細は、各 Role (role/*) 内の README.md を参照してください。
Ansible 実行前に Git submodule を更新してください。
$ git submodule init
$ git submodule update
ansible-playbook を実行します
$ ansible-playbook -i [inventory_file] site.yml
inventory file にはデプロイ先のホスト名を指定してください。サンプルは hosts.sample ファイルにあります。
グループに設定したサーバに対し、各サーバソフトのインストールが実行されます。
Ansible Playbook でデプロイした Vagrant Box の作成と利用手順は、 vm/vagrantbox/README.md を参照してください。
Ansible Playbook でデプロイした Vagrant Box から、 VirtualBox VM 用イメージへの作成と利用手順は、 vm/virtualbox/README.md を参照してください。