- ドットインストールのAnsibleやった 参考:ドットインストール
- Vagrant 立ち上げ
- VagrantCloudを使う
- vagrant initでVagrantFile作る
- VagrantFileを編集(box,hostname,networkを設定)
- vagrant up
- hostを設定
- vagrant ssh host
- epelをインストール(epel-release-6-8.noarch.rpm)
- ansibleをyumでインストール
- .ssh/configを設定しPermissionを600にする(webとdbに使う)
- ssh-keygenで公開鍵を作成
- ssh-copy-idでwebとdbにidをコピー
- 参考:OpenSSH 日本語マニュアルページ
- 参考:インフラエンジニアじゃなくても押さえておきたいSSHの基礎知識 - Qiita
- Ansibleの設定
- Inventory ファイル(hosts)を作成
- 参考
- Inventoryが正しいか、pingを打って確認
- デフォルトのInventoryファイルを設定
- 参考
- playbookの作成
- 書き上げる
- hosts,sudo,tasksなど、公式ドキュメント見ながら
- 変数を使うvar
- ユーザ入力を変数にするvars_prompt
- yum Moduleとかaptでインストール
- service Moduleで状態を設定
- file Moduleでファイルownerやmodeを変更(chmodやchown,touchなど)
- copy Moduleでファイルをコピーする()
- with_itemsで複数のitemを指定する(その他のLoop処理: Loops)
- with_random_choiceってどんな需要があって作られたんだろ……
- notifyとhandlerで、changedの時だけ最後に実行する 参考
- Database関連は専用のModuleがあるので、そちらを使う。
--syntax-check
オプションで文法チェック
--check
で実行した場合のテスト
- 参考
ansible-playbook playbook.yml
とかで実行
- 感想
- あとは、whenとか、エラーハンドリングとか、Roleで切り分けるのとか、ファイルからvarsをincludeとか、実際に使ったときのはまりポイントとかがわからん。
- ググったら出てきそうだし、前半はマニュアルにも書いてあるからそれで。
- WindowsでAnsibleサポートしてないからhost用にcentosのvm作ってそこから操作してたのか。納得した。
- Windowsをサポートって、Windowsサーバをセットアップできるよってことか。