AWS OpsWorks のデバグ
AWS OpsWorks のデバグ:
チラ裏。AWS OpsWorks を使ってインスタンスへの chef (または puppet) 適用を自動で行うことができる。できるのは良いのだが、失敗した時に理由を追うのに困るのでログ場所、および簡単な再実行方法をメモ。
いきなり蛇足: OpsWorks だけでなく、cloud-init (UserData) を使って起動時になにか処理をしている場合、cloud-init のログも見るべし。
cloud-init の再実行ついては以前 cloud-init のスクリプトを reboot せずに再実行するには に書いた。
OpsWorks のログは、終われば AWS コンソールから見れるが、進行中はすぐに反映されないので、インスタンスに ssh してログを tail -F で追う。
AWS OpsWorks Stacks のライフサイクルイベント のそれぞれでログがバラける。
(Puppetは試してない)
先頭行に
OpsWorks Agent が実行した chef コマンドのログなどはこちら
このログを chef-client で grep すると、chef-client を手動実行するためのコマンドが取れるので、うまく attribs.json などを見つければ、それで何度も試行錯誤できるようになる。例えばこんなの。
以下のページがとても参考になりました。Thanks.
チラ裏。AWS OpsWorks を使ってインスタンスへの chef (または puppet) 適用を自動で行うことができる。できるのは良いのだが、失敗した時に理由を追うのに困るのでログ場所、および簡単な再実行方法をメモ。
cloud-init のログおよび再実行
いきなり蛇足: OpsWorks だけでなく、cloud-init (UserData) を使って起動時になにか処理をしている場合、cloud-init のログも見るべし。/var/log/cloud-init.log
OpsWorks のログおよび再実行
OpsWorks のログは、終われば AWS コンソールから見れるが、進行中はすぐに反映されないので、インスタンスに ssh してログを tail -F で追う。AWS OpsWorks Stacks のライフサイクルイベント のそれぞれでログがバラける。
- setup
- configure
- deploy
Chef のログ
(Puppetは試してない)先頭行に
Command: setup with のように setup か configure か deploy かなどが書いてあるので、どのログがどのイベントに対するログなのかはそこをみればわかる(かもしれない)$ head -1 /var/lib/aws/opsworks/chef/yyyy-MM-dd-hh-mm-ss-..log [2019-01-15T19:55:07+09:00] INFO: AWS OpsWorks instance xxx-xxx-xxx-xxx, Agent version 4033-20181126114950, Command: setup with id xxx-xxx-xxx-xxx
OpsWorks Agent のログ
OpsWorks Agent が実行した chef コマンドのログなどはこちら/var/log/aws/opsworks/opsworks-agent.process_command.log
env HOME=/root sudo /opt/aws/opsworks/current/bin/chef_command_wrapper.sh -s /opt/chef/bin/chef-client -j /var/chef/runs/xxx-xxx-xxx-xxx/attribs.json -c /var/chef/runs/xxx-xxx-xxx-xxx/client.rb -L /var/chef/runs/xxx-xxx-xxx-xxx/chef.log
コメント
コメントを投稿