Container Service for Kubernetes (ACK) は、TerwayとFlannelの2種類のコンテナーネットワークプラグインをサポートしています。 これらの2つのプラグインは、基盤となるアーキテクチャと機能が異なり、さまざまなシナリオに適用できます。 クラスターを作成するときにのみ、コンテナーネットワークプラグインを選択できます。 クラスターの作成後にプラグインを変更することはできません。 クラスターを作成する前に、ネットワークプラグインの種類を決定することを推奨します。
機能 | Terway | フランネル |
ソース | Alibaba Cloudによって開発され、複数のモードでACK用に最適化されています。 | オープンソースのContainer Network Interface (CNI) プラグイン。 |
適用シナリオ | IPアドレスの無駄を避ける必要があり、高いネットワークパフォーマンスが必要な大規模なクラスター。 コンテナネットワークをカスタム制御する必要がある場合にも、このプラグインを使用できます。 | ネットワークポリシーやカスタム制御なしで単純なコンテナネットワークを使用する小さなクラスター。 |
ポッド CIDR ブロック |
|
|
ノードのポッドクォータ | ポッドはノードのENIを使用し、ポッドのクォータはノードの仕様によって決まります。 計算方法の詳細については、「ノード上のポッドの最大数の計算方法」をご参照ください。 | ポッドクォータは、ノードに割り当てられたポッドCIDRブロックのサイズによって決まり、ノードの仕様とは無関係です。 デフォルトでは、各ノードは256ポッドをサポートします。 |
クラスタースケール | デフォルトでは5,000ノードをサポートし、クォータの増加を要求した後は最大15,000ノードをサポートします。 | 各ノードは、ルートテーブルのVPCルートエントリと一致します。 VPCルートテーブルのサイズによって制限され、VPCはデフォルトで200ノードをサポートし、クォータの増加を要求した後は最大1,000ノードをサポートします。 |
ネットワーク性能 |
| ポッドは、外部アクセスのためにノードのネットワークプロトコルスタックを使用する。 NATゲートウェイが必要であり、一部のIPアドレスが無駄になる場合があります。 |
IPv4/IPv6デュアルスタック | サポートされています。 | サポートされていません。 |
ネットワークポリシーのサポート | ネットワークポリシーをサポートします。 コンテナ間のアクセスを規制する複雑なネットワークポリシーを作成できます。 | サポートされていません。 |
静的IP | 各ポッドの静的IPアドレスを指定できます。 | サポートされていません。 |
ネットワークセキュリティ | ポッドごとに個別のvSwitchと個別のセキュリティグループを指定できます。 | ポッドのvSwitchとセキュリティグループを個別に設定することはできません。 |
セッション維持 | server Load Balancer (SLB) インスタンスのバックエンドサーバーがポッドに接続します。 セッション持続性により、バックエンドポッドが変更されてもサービスが中断されることはありません。 | SLBインスタンスのバックエンドサーバーは、NodePortを使用してポッドに接続します。 バックエンドポッドが変更されると、サービスが中断される可能性があります。 |
マルチクラスタ相互通信 | セキュリティグループルールが関連するポートへのアクセスを許可するように設定されている場合、複数のクラスター内のポッドは互いに通信できます。 | サポートされていません。 |
ポッドでのソースIP保持 | VPC内の他のエンドポイントへのアクセスに使用されるソースIPポッドはPod IPであり、監査が容易になります。 | ポッドがVPC内の他のエンドポイントにアクセスするために使用されるソースIPはノードIPであり、ポッドIPは保持できません。 |
次に何をすべきか
クラスターの作成後、ポッド、サービス、およびノードに割り当てられたCIDRブロックは変更できません。 CIDRブロックは、ワークロードに影響を与える可能性のあるクラウドリソースで使用可能なIPアドレスの最大数を決定します。 アクセス制御やカスタムルートなどの操作でリソースを論理的に分離するために、CIDRブロックを事前に計画することをお勧めします。 詳細については、「ACKクラスターのネットワークの計画」をご参照ください。
CIDRブロックを計画した後:
Terwayを使用する場合は、「Terwayの使用」をご参照ください。
Flannelを使用する場合は、「Flannelの使用」をご参照ください。