state=running is deprecated with Ansible

個人サーバの構成管理にAnsibleを使っています。 ansible - ゆるふわキャンパー Ansibleをアップデートしたところ以下のWarningが出るようになりました。 [DEPRECATION WARNING]: state=running is deprecated. Please use state=started. This feature will be removed in version 2.7. Deprecation warnings »

always_run is deprecated

先日ansible-playbookを実行したら以下のようなWARNINGが出ました。 [DEPRECATION WARNING]: always_run is deprecated. Use check_mode = no instead.. This feature will be removed in version 2.4. Deprecation warnings can be disabled »

去年より個人ブログのポスト数を2倍くらい増やせたのでなぜなのか書く

この記事はfeedforceアドベントカレンダーの11日目の記事なんだからね! feedforce Advent Calendar 2016 - Adventar 昨日は@tmd45さんのターンでした。私も脂肪が増えてきた気がするので減らしていこうと思います(戒め)。まずは野菜だ!(ちなみに最初フト「れ」ない話に空目して関連する人物が3人ほど脳内サジェストされました。) フトらない話 - TMD45'β'LOG!!! さて、今回は「分散惑星間データセンター(Grid »

Send h2o log to BigQuery

h2oのアクセスログをtd-agentを使ってGoogle BigQueryに送ってみる。幾つか手順が必要。 bigqueryの設定 スキーマ定義ファイルの作成 td-agentの設定 bigqueryの設定 bigqueryへアクセスするためにapiを有効化し、アクセスキーを発行するのだが、この工程が長い…。(´・_・`) 慣れてないと混乱する。 gcpアカウントの作成 作る。 Google Cloud Computing, Hosting Services & APIs  |  Google Cloud Platform プロジェクトの作成 »

Differentiate environments with ansible

ansibleでdigitaloceanの構成管理をしている。このときvagrantを使って試しながら本番に適用しているのだが、本番にしか適用したくない設定(mackerel-agentのインストールとか)、開発環境にのみ適用したい設定が出てきた。 それっぽいワードで調べてみたら、group_varsやhost_varsとwhenステートメントを組み合わせる方法が手軽そうだった。 Multistage environments with Ansible – Ross Tuck Inventory — Ansible Documentation Conditionals — Ansible Documentation リンクを参考に以下のような感じでインベントリを設定した。 development »

To create `/var/run/h2o/` directory using systemd-tmpfiles

h2oをインストールするansibleのタスクを書いた。ついでにh2oの実行ユーザーをh2oユーザーにしてみた(デフォルトはnobody)。しかし、h2oの起動に失敗する。 ログ見ると/var/run/h2oディレクトリへ書き込みできなくて起動失敗している。 h2oインストール時(?)に/var/run/h2oが作成される(nobody:nobodyで) h2o起動直後h2oユーザーで/var/run/h2o以下にpidファイルを作成しようとするが、オーナーがnobodyなので作成失敗→起動失敗 という流れ。 予めディレクトリを作成するタスク書けば良いと思ったけど微妙感が…。h2oの起動スクリプトをいじるのも、h2oアップデート時元に戻されそうだしダメそう。 »

Using HashiCorp's Vault with Ansible

ansibleのプレイブック内にある機密情報(dbのパスワードとか)をVault by HashiCorpを使ってvaultの管理下に置いてみようと思う イメージ的には、今までプレイブックにこんな感じで平文で書かれていたものを、 password="1234abcd" こんな感じでプレイブック内に書かないようにしたい password="{{vaultからいい感じに取ってくる何か}}" 確かにこれでプレイブックには含まれなくなるけど、外部のデータストアに機密情報置くことになるけどそこは安全なのか問題がここで発生する でもvaultはそんな悩みを解決するためのツールだからいい感じに かつ安全に機密情報を管理してアプリケーションからいい感じに機密を使えるであろうことを激しく期待!禿北!! 準備 Ansible Lookup Plugin Lookup Pluginを使ってみる Lookup Pluginとは外部ソース(ローカルのファイルや外部のデータストア等) »

Idempotence shell in Ansible

nodejsをインストールするプレイブックを書いたんだけど、epelから入れると古いnodejsがインストールされてしまう問題があった。 そこで最新のnodejsをcentos7に入れるプレイブックに書きなおした。nodejs公式に案内されてるやり方で、まずcurl叩いてnodejs5系が入るリポジトリをインストールした。 こんな感じ。 - name: setup_5.x is downloaded get_url: url=https://rpm.nodesource.com/setup_5.x dest=/tmp/setup_ »