skillup

技術ブログ

サーバー・ネットワーク

ansible template,tag,yeditなど

投稿日:2017年4月3日 更新日:

template

今まで設定ファイルを使うときは基本ini_fileを使って置換したり、ローカルでファイルを作ってcopyしておりましたが、ansibleにはtemplateという機能があります。

簡単に言えばWebアプリケーションのようにHTMLテンプレートを用意し、その中に変数を埋め込むことができます。

例えばnginxをインストールするときは通常nginx自体もそうですが、それとともに/etc/nginx/conf.d/以下に設定ファイルも追加することが一般的だと思います。

templateタグをみていただければsrcがテンプレート自体 destがコピー先ということはわかるかと思います。

ここで.nginx.j2というテンプレートを用意する必要があります。

pythonでかかれていますが、設定ファイルに書くような情報は基本的には変数の置換ぐらいしか私はないため、ほとんどpythonがわからなくても行けます。

ちなみに私が書いたのは次のようなものです。ほとんどnginxの設定ファイルをそのまま持ってきて、動的な部分だけ変数にしました。

Ansible ~templateモジュール~

tags

一つのymlファイルの中でも特定のタスクだけを実行させたい or 逆に実行させたくないということはあるかと思います。

そんな時に使えるのがtagです。

上記のnginxの設定ファイル作成時に書いていますがtags: タグ名をつけておくことで、実行時に–tags タグ名でそのタスクだけを実行させることができます。飛ばす場合は–skip-tagsで飛ばせます。

Ansibleでタグを使ってみる

yedit

ymlファイルを書くときに最初はvimで書いてたんですが、eclipseでもプラグインを入れることで書けます。

  1. ウィンドウタブから新規ソフトウェアのインストール選択
  2. 名前 yedit、ロケーション http://dadacoalition.org/yedit
  3. YEditをチェック、インストール
  4. 再起動後、設定でYEdit Referenceが入っていることを確認
  5. ymlファイルを開くときに右クリックで次で開くの時にYEdit  YAML Editorを選択すればOK

yml最初書いていた時は構文のルールとかよくわからないで実行されずイライラしていたんでこれでsyntaxチェックとかしてくれるのがありがたいです。

-サーバー・ネットワーク
-, ,

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

ログ抽出コマンド特集 その1 cat+grep+sort

先日、メモリ使用率の調査に関して記事をかいたのですが、今度はそのログの収集や抽出をおこなってみようかと思います。 やりたいこと yyyy/MM/dd-HH:mm:ss  メモリ使用率(少数2桁まで)  …

no image

vagrantでサーバーの状態を保存(snapshot)

上司がAnsible(構成管理ツール)のサンプルをくれたのですが、試そうにもまっさらなサーバーを用意しないといけません。 サーバー環境を新規に契約するのは面倒なのでvagrantで当然考えています。 …

no image

ロードアベレージ監視シェルスクリプト

ロードアベレージの監視シェルスクリプトについて Contents1 使用コマンド1.1 uptime1.2 /proc/cpuinfo1.3 bc2 ソース3 他参考リンク 使用コマンド uptime …

no image

クロスドメインがらみのajax

ajaxで別ドメインに対して、プログラムを実行したい時に注意すべきことなどを。 Contents1 ログ、レスポンスヘッダをとにかく追う2 特定ドメインからの許可3 フレームワーク側での認証ロジック( …

no image

webサーバーがどのように動いているか(GETとPOST)

webがリクエストを受け取って画面に表示するまでの流れをおさらい。基本です。 Contents1 全体の流れ2 参考文献 全体の流れ 1 ユーザーがブラウザのURL欄に[crayon-6511648d …

アーカイブ