47 Edgeネットワーキング(NMC)のトラブルシューティング #
NMCは、 SL Micro EIBイメージに挿入され、起動時に、Combustionを介してEdgeホストのネットワークを設定します。 また、Metal3ワークフローでは検査プロセスの一環として実行されています。ホストの初回起動時、またはMetal3検査プロセス中に問題が発生する可能性があります。
ホストが初回起動時に正常に起動できない: 不正な形式のネットワーク定義ファイルにより、combustionフェーズが失敗し、ホストがルートシェルをドロップする可能性があります。
ファイルが適切に生成されない: ネットワークファイルがNMState形式と一致していることを確認します。
ネットワークインタフェースが正常に設定されない: MACアドレスがホストで使用されているインタフェースと一致していることを確認します。
インタフェース名の不一致:
net.ifnames=1
カーネル引数により、 ネットワークインタフェースの予測可能な命名規則が有効になるため、eth0
はなくなり、enp2s0
などの他の命名規則が使用されます。
Combustionログ: Combustion時にnmcが使用されるため、プロビジョニング中のホスト上で、
journalctl -u combustion
を使用してCombustionログを確認します。NetworkManagerログ: Metal3デプロイメントワークフローでは、nmcはIPA実行の一部であり、systemdのExecStartPre機能を使用してNetworkManagerサービスの依存関係として実行されます。IPAホスト上で
journalctl -u NetworkManager
としてNetworkManagerログを確認します(IPAで起動したときにホストにアクセスする方法については、「ダイレクトネットワークプロビジョニングのトラブルシューティング」(第49章 「ダイレクトネットワークプロビジョニングのトラブルシューティング」)セクションを参照してください)。
yaml構文の確認: nmc設定ファイルはyamlファイルです。適切な構文かどうかを
yamllint
または同様のツールで確認します。nmcを手動で実行する: nmcはEIBコンテナの一部であるため、問題をデバッグするには、ローカルpodmanコマンドを使用できます。
nmcファイルを保存するための一時フォルダを作成します。
mkdir -p ${HOME}/tmp/foo
その場所にnmcファイルを保存します。
❯ tree --noreport ${HOME}/tmp/foo /Users/johndoe/tmp/foo ├── host1.example.com.yaml └── host2.example.com.yaml
エントリポイントとしてnmcを使用してEIBコンテナを実行し、generateコマンドを使用して、Combustion時にnmcが実行するのと同じタスクを実行します。
podman run -it --rm -v ${HOME}/tmp/foo:/tmp/foo:Z --entrypoint=/usr/bin/nmc registry.suse.com/edge/3.3/edge-image-builder:1.2.0 generate --config-dir /tmp/foo --output-dir /tmp/foo/ [2025-06-04T11:58:37Z INFO nmc::generate_conf] Generating config from "/tmp/foo/host2.example.com.yaml"... [2025-06-04T11:58:37Z INFO nmc::generate_conf] Generating config from "/tmp/foo/host1.example.com.yaml"... [2025-06-04T11:58:37Z INFO nmc] Successfully generated and stored network config
一時フォルダに生成されるログとファイルを確認します。