18.9. Ignition のトラブルシューティング


Ignition の問題を診断するために、ログの調査、サービスのステータスの確認、設定の配信状況の確認を行うことができます。

Expand
表18.7 Ignition のトラブルシューティング
問題原因解決方法

Ignition が実行されない

ignition.firstboot カーネルパラメーターが不足しています。

boot loader 設定で、カーネルコマンドラインに ignition.firstboot を追加します。

設定が見つからない

プラットフォーム ID が間違っているか、設定ファイルが見つかりません。

ignition.platform.id が、お使いのデプロイ方法と一致していることを確認します。お使いのプラットフォームにおける設定の保存場所を確認します。

SSH 鍵が受け付けられない

sshd サービスが authorized_keys.d ディレクトリーを読み取るように設定されていません。

sshd の設定 AuthorizedKeysFile .ssh/authorized_keys .ssh/authorized_keys.d/ignition を追加します。

ファイルが永続化されない

読み取り専用ファイルシステム上の場所に書き込みを行っています。

ファイルを /var または /etc ディレクトリーに書き込みます。これは OSTree システムの /var に対応します。/usr は使用しないでください。

ブートのたびに Ignition が実行される

初回ブートマーカーが削除されていません。

ignition-firstboot-complete.service が有効になっており、正常に実行されることを確認します。

Ignition ログの表示

journalctl ユーティリティーを使用すると、Ignition の実行ログを確認できます。

  • すべての Ignition メッセージを表示するには、以下を実行します。

    # journalctl -t ignition --no-pager
  • ignition-disks.serviceignition-files.serviceignition-fetch.service などの特定の Ignition サービスのログを表示するには、以下を実行します。

    # journalctl -u ignition-disks.service
  • 現在のブートの initramfs Ignition ログを表示するには、以下を実行します。

    # journalctl -b 0 | grep -i ignition
サービスステータスの確認

systemctl ユーティリティーを使用すると、Ignition 関連サービスのステータスを確認できます。

  • 初回ブート完了サービスのステータスを確認するには、以下を実行します。

    # systemctl status ignition-firstboot-complete.service
  • SSH 鍵通知サービスのステータスを確認するには、以下を実行します。

    # systemctl status coreos-check-ssh-keys.service
  • Ignition 関連のサービスをすべてリスト表示するには、以下を実行します。

    # systemctl list-units 'ignition' 'coreos'
設定の配信状況の確認

デプロイ環境に応じて、Ignition が設定を正常に受信したかどうかを確認できます。

  • ベアメタル環境で Ignition 設定を調べる

ベアメタルデプロイメントでは、Ignition の設定ファイルはブートパーティションに直接保存されます。キャッシュまたはコピーされた設定を検査するには、以下を実行します。

  1. ブートパーティションをマウントします。

    # mount /dev/disk/by-label/boot /mnt
  2. /mnt/ignition/ ディレクトリーの内容をリスト表示します。

    # ls -la /mnt/ignition/
  3. Ignition 設定ファイルの内容を表示およびフォーマットします。

    # cat /mnt/ignition/config.ign | jq .
  4. ブートパーティションをアンマウントします。

    # umount /mnt
    • QEMU 環境での Ignition 設定の取得を確認する

initramfs を使用して Ignition の設定を QEMU インスタンスに渡すと、Ignition はダウンロードしたペイロードを /run ディレクトリーにキャッシュします。

  1. Ignition が設定ファイルをキャッシュしているかどうかを確認します。

    # ls -la /run/ignition.json
  2. キャッシュされた設定ファイルの内容を表示します。

    # cat /run/ignition.json | jq .
    initramfs 内でデバッグする

    ブート中に Ignition が失敗した場合、システムが緊急シェルに移行する可能性があります。以下のコマンドを使用して問題を診断できます。

    • Ignition fetch サービスのステータスを確認するには、以下を実行します。

      # systemctl status ignition-fetch.service
    • Ignition fetch サービスのエラー出力を表示するには、以下を実行します。

      # journalctl -u ignition-fetch.service
    • 設定ソースにアクセスできるかどうかを確認するには (QEMU fw_cfg の例)、以下を実行します。

      # cat /sys/firmware/qemu_fw_cfg/by_name/opt/com.coreos/config/raw
    • Ignition をデバッグモードで手動で実行するには、以下を実行します。

      # /usr/bin/ignition --platform=qemu --stage=fetch --log-to-stdout
    SSH 鍵の問題を解決する
    デプロイしたシステムで SSH 鍵が機能しない場合は、以下のチェックを行ってください。
  3. Ignition が SSH 鍵を書き込んだ場所を確認します。

    # ls -la /home/core/.ssh/
    # ls -la /home/core/.ssh/authorized_keys.d/
  4. sshd サービスの設定が正しく行われていることを確認します。

    # grep -r AuthorizedKeysFile /etc/ssh/
  5. sshd サービスのログで認可イベントを確認します。

    # journalctl -u sshd.service | grep -i authorized
    初回ブートマーカーの問題を解決する
    次回以降のブート時にも Ignition が実行される場合は、以下のチェックを行います。
  6. 初回ブートマーカーが存在するかどうかを確認します。

    # ls -la /boot/ignition.firstboot
  7. 初回ブート完了サービスのステータスを確認します。

    # systemctl status ignition-firstboot-complete.service
    # journalctl -u ignition-firstboot-complete.service
  8. 必要に応じて、初回ブートマーカーを手動で削除します。

    # mount -o remount,rw /boot
    # rm -f /boot/ignition.firstboot
    # rm -rf /boot/ignition
    設定検証エラーを解決する

    デプロイ前に設定ファイルを検証することで、構文エラーを検出できます。

    • Ignition JSON ファイルを検証するには、以下を実行します。

      # ignition-validate config.ign
    • Butane YAML ファイルを検証するには、以下を実行します。

      $ butane --strict config.bu > /dev/null
    • Ignition の設定を整形して確認するには、以下を実行します。

      # cat config.ign | jq .
    緊急コンソールにアクセスする
    SSH を使用してシステムに接続できない場合は、以下の復旧手順を実行します。
  9. システムコンソール (シリアルまたは VGA) に接続します。
  10. ブート中にコンソール出力で Ignition のエラーメッセージを確認します。
  11. システムが正常に起動した場合は、/etc/issue.d/ ディレクトリーでステータスメッセージを確認します。

    $ cat /etc/issue.d/30_ssh_authorized_keys.issue
    診断情報を収集する

    トラブルシューティングのためにシステムの詳細情報を収集するには、以下の診断コマンドを実行します。

    • システム情報を表示するには、以下を実行します。

      # hostnamectl
      # rpm -qa | grep ignition
    • ブートパラメーターを表示するには、以下を実行します。

      # cat /proc/cmdline
    • 現在のブートの Ignition ログをファイルに保存するには、以下を実行します。

      # journalctl -b 0 -t ignition > ignition.log
    • 失敗したサービスのリストをファイルに保存するには、以下を実行します。

      # systemctl list-units --failed > failed-units.log
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

Red Hat ドキュメントについて

Legal Notice

Theme

© 2026 Red Hat
トップに戻る