LoginSignup
1
1

More than 5 years have passed since last update.

ansible ec2の挙動が変わっていた話

Posted at

ansible ec2とは

ec2上のインスタンスをansibleのinventoryとして扱えるようにしてくれる便利なものです。

例えば、

- name: do something
  hosts: 'tag_Name_{{tag}}'
  ...

のようにすると、特定のタグがついたインスタンスに対し同じ操作を行う、という設定が用意にできます。
auto scalingなどしているときはとても便利です。

しかしansibleをupdate(1.8.4 -> 1.9.4)し、上記のinventory scriptも更新したところ軒並み動かなくなりました。

ec2のtagを確認

ec2のコンソールから確認したところ想定したタグはちゃんとついていたのですが、

PLAY [hogehoge] ******************************************* 
skipping: no hosts matched

PLAY RECAP ******************************************************************** 

というように、そんなタグついたインスタンスないよという返事でした。

ec2インスタンスを全部取得

下記コマンドで、管理下のインスタンスリストが取得できます。

 inventory/ec2.py --list

このリストを眺めていて気付いたのですが、ec2上では"hoge-fuga-piyo"というタグが付いている場合、ansible ec2インベントリ的には"tag_Name_hoge_fuga_piyo"というふうに、ハイフンが全てアンスコになっていました。

そこで、先ほどのymlで指定していたタグもアンスコに変更することで、ちゃんとec2インスタンスが取得できるようになりました。

自分が関わるリリースが近いときに、気軽にバージョンを上げてはいけないという教訓を新たにしました。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1