log > ドットインストールのAnsibleやった

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