出力のchangedとokを読む
実行で実際に何が行われたかを解釈します
「出力のchangedとokを読む」はCoddyKit上の無料Ansible Academyレッスンです。 これはレッスン2/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはAnsible Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Ansible Academyコースには全4レッスンが含まれています。
すべてのタスクがステータスを報告します
各タスクの後、Ansibleはホストごとにステータスを表示します。最もよく目にするのはokとchangedの2つで、それぞれ異なる状況を示します。
okはすでに正しいことを示します
okというステータスは、ホストがすでに望ましい状態と一致していたことを示します。タスクは確認を行いましたが、変更は一切加えていません。
ok: [web1]changedは処理を行ったことを示します
changedというステータスは、ホストが望ましい状態と一致していなかったため、モジュールが宣言した状態へ収束するよう変更を加えたことを示します。
changed: [web1]黄色と緑色の違い
デフォルトでは、Ansibleはchangedの出力を黄色、okの出力を緑色で表示します。2回目の実行で緑色一色になるのが、まさに望ましい状態です。
PLAY RECAPが結果を集計します
最後に、PLAY RECAPがホストごとのok、changed、unreachable、failedの件数を集計します。これは1行で確認できる健全性チェックです。
web1 : ok=4 changed=1 unreachable=0 failed=02回目の実行はすべてokになるはずです
冪等性のあるplaybookを2回実行すると、2回目のrecapにはchanged=0と表示されるはずです。再実行で変更が発生した場合は、調査する価値があります。
web1 : ok=4 changed=0 unreachable=0 failed=0changedはエラーではありません
changedというステータスは成功を示しており、問題ではありません。ホストに処理が必要で、タスクが正しく実行したことを記録しているだけです。
skippingは条件が成立しなかったことを示します
skippingと表示されることもあります。これはwhen条件がfalseだったため、そのホストではタスクが実行されなかったことを示します。
skipping: [db1]failedとunreachable
failedはタスクでエラーが発生したことを示します。unreachableは、AnsibleがSSHで接続することすらできなかったことを示します。どちらの場合も、そのホストでのplayは停止します。
changedで冪等性を検証します
changedの件数は、冪等性を測る指標です。繰り返し実行しても変更が報告され続けるなら、そのタスクは真に冪等ではありません。
-vで詳細を確認します
ansible-playbookに-v(または-vv)を追加すると、各タスクが何を変更したのか、なぜ変更したのかを示す詳細な出力が得られます。
ansible-playbook site.yml -v簡単な確認
同じplaybookを2回目に実行すると、recapにok=5 changed=0と表示されます。
まとめ
okは「すでに正しい」、changedは「今回修正した」と読み取ります。PLAY RECAPと、changed=0となる再実行によって、playが冪等であることを確認できます。✅
AI チューターと学ぶ YAML — 無料
ブラウザでリアルコードを書いて実行し、24/7 の AI チューターから瞬時にサポートを受け、ウェブまたはアプリで続きから学習できます。
- コース
- 30
- レッスン
- 120
よくある質問
「出力のchangedとokを読む」レッスンは無料ですか?
はい。「出力のchangedとokを読む」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Ansible Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Ansible Academyコースには全4レッスンが含まれています。
「出力のchangedとokを読む」で何を学びますか?
実行で実際に何が行われたかを解釈します ブラウザで直接実行するハンズオンコードでAnsible Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
Ansible Academyを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのAnsible Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン2/4です。
「出力のchangedとokを読む」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このAnsible Academyレッスンでコードを書いて実行できますか?
はい。すべてのAnsible Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。
このコースのすべてのレッスン
- 手順ではなく望ましい状態を記述する
- 出力のchangedとokを読む
- commandが冪等性を壊す理由
- チェックモード:--checkによるドライラン