【しーえぬあい】
CNI(コンテナネットワークIF) とは?
最終更新:
💡 コンテナに網をつなぐ共通ルール!K8sネットワークの立役者
コンテナのネットワークを設定するプラグインと、呼び出すランタイムの間の共通仕様。設定・実行要求・結果の形式などを定め、KubernetesのPodネットワークにも利用される。
📌 このページのポイント
- ランタイムとネットワークプラグイン間の呼び出しや設定の共通仕様
- ADDで接続を設定し、DELで接続の解除や後片付けを要求する
- Kubernetesでは、クラスタに対応したプラグインをランタイムが利用する
- 通信方式・IP管理・ポリシーなどの機能は実装と設定によって異なる
CNIって何のためにあるの?
プラグインって色々あるみたいだけど、何が違うのかな?
CNIがないとコンテナは通信できないの?
コンテナ全般に唯一の方法というわけではないよ。Kubernetesでは、Podネットワークを実現するために対応したCNIプラグインを使う。マネージド環境では提供側が用意していることもあるので、利用者が必ず手動で追加するとは限らないんだ。
すべての通信がCNIのプログラムを通るの?
どれを選べばいいか迷っちゃうね!
使うクラスタやOSに対応しているか、必要な通信・ポリシー・監視の機能があるかを比べよう。提供側の指定、運用方法、変更時の移行手順も確認するといいね。小規模ならこれで必ず十分、というように規模だけで決めないことが大切だよ。
📖 おまけ:英語の意味
「Container Network Interface」 = コンテナネットワークインターフェース
💬 Container(コンテナ)のNetwork(ネットワーク)のInterface(接点・仕様)で、コンテナとネットワークをつなぐ共通仕様だよ