ansible ってなに?
全然知りませんよね!? 僕も知りませんw
ちょっとここから、簡単に今日知り得た部分を簡単に書いて行こうとと思います。ansibleってとりあえずは、ssh経由で自動構築して品質の向上と毎回同じserverを作る事が出来き、コード管理する事で変更管理等など出来るツールである。基本的には、AWSでいうならシェフ的なツールと同じ役割だが、シェフはエージェントを介して制御するのに対して、ansibleは、エージェントレスでsshでつないでコマンドを投げて構築出来る差があります。
では、実際に書いてみましょうか。
って気軽に言える代物ではありません・・・。取れ合えず、色々とお作法を覚えないとまず使おうと思っても使えないので、お作法を覚える所からスタートですね。
まずはdirectory構成はこんな感じで書くみたい
ansible—- ■hostsファイル
| inventory ファイルと呼ばれる、対象ホストや、グループを定義するファイルです。
|
| – ■vars(group_vars)ディレクトリ
| 変数を別ファイルに外出しして、値を変更しやすくします。
|
| — role ■サーバの役割による分岐点です。
| |
| | – ■tasksディレクトリ
| | 各role毎に何を実施するかが具体的に書かれています。
| | 例えば、サーバの設定やサービスのインストールなどはtasks ディレクトリ以下の main.yml に記載します。
| |
| | – ■handlersディレクトリ
| | handlers 以下には基本的にサービス再起動の main.yml を置いています。
| | taskディレクトリ以下の main.yml でサーバの設定変更を行い、
| | 設定反映のために handlers で再起動するイメージです。
| |
| | – ■templatesディレクトリ
| | サービスの設定ファイルのテンプレートを、j2形式で置いています。
| | 設定ファイルの中身を全部Playbookで書くよりも、テンプレートファイルを用意して、
| | これを使用するとした方が簡単です。
ほーらどんどん、出来そうな気がしてきましたよね?
まったく、それはまやかしですよ!出来る別け無いんです。現に私が全くできなくて困っている位なので、とっととお作法を覚えてガリガリVPS契約したら、速攻SSHキーペつくってansibleをJenkinsから流して終わりにしたいのです。それが一番早く毎回同じ構成のserverが作れる最善ではないかと考えます。まずは、そのなんていうか!?ansibleをとっととやらないと駄目だって事です。それに、どんな現場に行っても、それくらい出来るでしょ?的な感じになっちゃってますので、ここのうちのブログで私と共にがんばって行きませんか!?とりあえず、今日は第1回目なので、この辺りで終わりにしますが、第2回目は、ansibleをserverに入れて実際に動作を確認してみようと思います。
準備する物
- VM Playerが動くPCの準備 (64Bit PC)
- CentOS6 or CentOS7 のISOファイル
- VM Player上にインスタンスを立ててCentOS6かCentOS7をインストールしてください
- 検証には最低2台のインスタンスが必要ですので、1台をインスタンスしたら複製を!
最後に!
では、準備だけお願いしますねw 今日は、これで寝ますけど。明日また別件の記事を書きますので、見失い用にしてくださいね。ではでは、今日はこれにておやすみなさいませ。