12.5. ネットワークスタックの CNI から Netavark への切り替え
これまで、コンテナーは単一の Container Network Interface (CNI) プラグインに接続されている場合のみ DNS を使用できました。Netavark は、コンテナー用のネットワークスタックです。Netavark は、Podman やその他の OCI(Open Container Initiative) コンテナー管理アプリケーションで使用できます。Podman の高度なネットワークスタックは、Docker の詳細機能にも対応しています。現在、複数のネットワーク上にあるコンテナーは、これらのネットワークにあるコンテナーにアクセスします。
Netavark は以下のことが可能です。
- ブリッジおよび MACVLAN インターフェイスなどのネットワークインターフェイスの作成、管理、削除。
- ネットワークアドレス変換 (NAT) やポートマッピングルールなどのファイアウォールの設定。
- IPv4、IPv6 のサポート。
- 複数のネットワークにおけるコンテナーへの対応改善。
CNI ネットワークスタックは非推奨であり、今後の RHEL リリースで削除される予定です。代わりに Netavark ネットワークスタックを使用してください。
前提条件
-
container-tools
メタパッケージがインストールされている。
手順
/etc/containers/containers.conf
ファイルが存在しない場合は、/usr/share/containers/containers.conf
ファイルを/etc/containers/
ディレクトリーにコピーします。# cp /usr/share/containers/containers.conf /etc/containers/
/etc/containers/containers.conf
ファイルを編集し、[network]
セクションに以下の内容を追加します。network_backend="netavark"
コンテナーや Pod がある場合は、ストレージをリセットして初期状態に戻します。
# podman system reset
システムを再起動します。
# reboot
検証
ネットワークスタックが Netavark に変更されていることを確認します。
# cat /etc/containers/containers.conf ... [network] network_backend="netavark" ...
Podman 4.0.0 以降をお使いの場合は、podman info
コマンドでネットワークスタックの設定を確認してください。
関連情報
- Podman 4.0's new network stack:What you need to know
-
システム上の
podman-system-reset
man ページ