ec2.py で Authentication error retrieving ec2 inventory.

Ansible の ec2.py 実行時に、AWS の認証情報設定は合っているはずなのに以下の認証エラーが出る。しかも Vagrant サーバでだけ。

ERROR: "Authentication error retrieving ec2 inventory.
 - AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY environment vars found but may not be correct
 - Boto configs found at '~/.aws/credentials', but the credentials contained may not be correct", while: getting EC2 instances

なんでやねん!と調べていたところ、AWS の API へのアクセス時にはホスト上の時間がズレているとダメみたいな話を見つけ(ソースとなるページは分からなくなってしまったが)、date コマンドで Vagrant サーバの時間を調べてみると確かに大きくズレていた。

ntpd もインストールされていなかったので、これをインストールして時間を合わせると認証エラーは起きなくなり解決した!

Last updated on August 15, 2016