無印吉澤

Site Reliability Engineering(SRE)、ソフトウェア開発、クラウドコンピューティングなどについて、吉澤が調べたり試したことを書いていくブログです。

Ansible

Ansible で文字列比較の結果を boolean 変数に代入する方法

きっかけ 今回は、時々つまづく Ansible の変数の仕様に関するメモです。 最近、Amazon Linux 1(そろそろ完全に廃止しないといけない……)と Amazon Linux 2 で処理を分岐させたいことがあり、同僚にこういう書き方でできるよと教えてもらいました。 - name:…

Playbook 側から Ansible のバージョンを指定する方法(あるいは Ansible 2.x.0 を絶対使わせない方法)

もうすぐ Ansible 2.5 がリリースされますね。僕もそろそろ Ansible 2.5 Porting Guide とか読み始めました。 ところで、僕は Ansible のバージョンが上がった最初のリリースでつまづくことが多くて、どうしてもしばらく様子見してしまいます。例えば、Ansib…

Ansible 2.4 で import_tasks/include_tasks に tags を付けるときの注意点

前提:Ansible 2.4 から include は非推奨になった Ansible 2.4 を使っていたら既に嫌というほど見てると思いますが、include を使うと以下のような警告が出るようになりました。 [DEPRECATION WARNING]: The use of 'include' for tasks has been deprecate…

ansible コマンドでのログ検索結果を TSV や Markdown 形式に変換する方法

これは Ansible Advent Calendar 2017 の13日目の記事です。 ansible コマンドでログ検索 ansible コマンドって使ってますか? Ansible と言えば普段は ansible-playbook コマンドを使うと思うので一応解説しておくと、ansible コマンドは Ansible モジュー…

Amazon Linux, RHEL, CentOS での pip のインストール方法の違い

やらかした話 Amazon Linux は Red Hat Enterprise Linux (RHEL) をベースに開発された Linux ディストリビューションです*1。しかし、古い RHEL 5〜6 をベースにして、その後の開発は分岐しているため、パッケージ管理の方法などには違いがあります。 RHEL …

Exrm を使った Phoenix アプリケーションのデプロイ方法を ansible-elixir-stack から学ぶ

これまでのあらすじ Phoenix アプリケーションの情報に関するネット上の情報 ansible-elixir-stack の使い方 ansible-elixir-stack は自動アップグレードをどうやって実現しているのか? deploy_type 変数での動作の切り替え role 内部で実行されるコマンド …

Ansible の --extra-vars 引数を安全に使うためのラッパーを書いてみた

最近は、仕事でも趣味でも、サーバ構築を自動化したいときは Ansible を使ってます。 アプリケーションのデプロイには Capistrano も使うんですが、つい最近 Ansistrano という便利な Ansible role の使い方を覚えてしまったので、そこも Ansible で済むよう…

Ansible でインベントリのホスト変数を when に渡した際の不思議な動作(Ansible 1.9/2.0 共通)

同じグループに属するホストのうち、特定のホストのみで実行したいタスクがある、ということがたまにあります。そういうとき、私はインベントリファイルでホスト変数を定義して、この変数で処理を分岐させる、ということをしていました。 今回は、そんなとき…

Ansible 2.0 で追加されたモジュールおよびオプション一覧を無理矢理作る

Ansible 2.0 の売りの一つ:新モジュールの豊富さ Ansible 2.0 Has Arrived(日本語訳:Ansible 2.0リリース!)のなかで、Ansible 2.0 は「200個以上の新モジュール」を同梱している、と謳われています。 Ansible 2.0 also continues our long “batteries i…

Ansible 2.0 から使えるようになった consul モジュールを試してみた

Ansible 2.0 になって使えるモジュールが大幅に増えましたが、その中に Consul 関係のモジュールがいくつかあります。前から気になってたので、ちょっと試してみました。

Ansible Meetup in Tokyo 2015.09レポート 〜Ansible 2.0の機能紹介、Ansible 2.0で組むKubernetesクラスタなど

イベント名: Ansible Meetup in Tokyo 2015.09 開催日時: 2015-09-14(月) 会場: 日経ビル6F 日経カンファレンスルーム(大手町) Webサイト: Ansible Meetup in Tokyo 2015.09 - connpass 最近、Ansibleを業務で使い始めて色々調べていたところに、ちょうどA…

AnsibleのGroupごと&状態ごとにServerspecのテストを書く

最近開発に参加したサービスで、サーバの構築はAnsibleのPlaybookで自動化されているのですが、構築後のテストは手作業で行っている環境がありました。それだけなら、正常にサービスが動作している状態をServerspecで定義すればテストできそうですが、このサ…