すべてのプロダクト
Search
ドキュメントセンター

Container Service for Kubernetes:ネットワーク管理の概要

最終更新日:Oct 29, 2024

ACK Edgeクラスターを作成して、データセンターおよびエッジデバイスのデバイスをContainer Service for Kubernetes (ACK) に接続し、ACKが提供する機能を使用し、オンプレミスのコンピューティングリソースを管理できます。 このトピックでは、クラウドエッジ接続ネットワーク、Container network Interface (CNI) 、Service、Ingressなど、ACK Edgeクラスターネットワークで使用される主要な概念とネットワークアーキテクチャについて説明します。 これらの用語を理解すると、アプリケーションの展開モデルとネットワークアクセス方法を最適化できます。

クラウドエッジネットワーク接続モード

ACK Edgeクラスターは、パブリックネットワークモードまたはプライベートネットワークモードで接続できます。

  • パブリックネットワークモード: データセンターとエッジデバイスは、インターネットNATゲートウェイまたはパブリックネットワークインターフェイスコントローラー (NIC) を介してクラウドおよびAlibaba cloudサービスでホストされるACKコントロールプレーンに接続され、ACKコントロールプレーンとの通信およびAlibaba Cloudサービスへのアクセスを可能にします。

  • プライベートネットワークモード: データセンターおよびエッジデバイスのコンピューティングデバイスは、Express Connect回線、VPNゲートウェイ、またはその他のプライベートネットワークを介して、クラウドおよびAlibaba cloudサービスでホストされるACKコントロールプレーンに接続されます。 次の図では、例としてAlibaba CloudのExpress Connectを使用しています。

image

クラウドエッジO&M通信コンポーネント

ACK Edgeクラスターは、中央クラウドがエッジデータセンターとエッジデバイスを管理するクラウドエッジコラボレーションアーキテクチャを使用します。 コンピューティングデバイスはしばしば複数の領域およびネットワークドメインにわたって分散されるという事実のために、中央クラウドとエッジ側との間の直接通信は不可能である。

エッジデバイスの中央クラウドのO&Mとモニタリングの要件を満たすために、2つのソリューションが利用可能です。

  • プライベートネットワーク通信: セントラルクラウドの仮想プライベートクラウド (VPC) をプライベートネットワークを介してエッジのデータセンターまたはデバイスと接続し、クラウドとエッジ間の通信を可能にします。

  • インターネットを介したトンネリング: クラウドエッジO&M通信コンポーネントRavenを使用して、インターネットを介したリバーストンネルを確立します。 このリバーストンネルにより、クラウドとエッジ間のO&Mおよびモニタリングデータの転送が容易になります。 エッジデータセンターまたはデバイスがインターネットにアクセスできることを確認します。 詳細については、「Cross-region O&M communication component Raven」をご参照ください。

CNI

image

KubernetesはCNIプラグインを使用して、コンテナ間のネットワーク通信を有効化および標準化します。

  • コンテナネットワーク内のポッドのステータスは、ポッドのライフサイクルフェーズによって異なります。 たとえば、ポッドが作成されると、コンテナーネットワークに追加されます。 ポッドが削除されると、コンテナーネットワークから削除されます。

  • コンテナネットワーク内の各ポッドには、ポッドを識別するために一意のIPアドレスが割り当てられます。

  • ポッドは、クラスター内のエンドポイントおよびクラスター外のエンドポイントと通信できます。

CNIプラグインは、コンテナネットワークの実装を担当します。 使用するCNIプラグインは、ポッドにIPアドレスを割り当てる方法、オーバーレイネットワークを使用するかどうか、クラスター内でトラフィックを転送する方法、ポッドへのアクセスを管理する方法を決定します。 よく知られているオープンソースのCNIプラグインには、Calico、Flannel、およびCiliumが含まれます。

ACK Edgeクラスターは、それぞれ異なる機能を持つネットワークプラグインFlannelとTerway Edgeをサポートしています。 クラスターを作成する前に、次のセクションを参照して適切なネットワークプラグインを選択してください。

重要

クラスターが作成されると、Terway EdgeとFlannelを切り替えることはできません。

フランネル (コンテナのオーバーレイネットワーク)

ACK Edgeクラスターでは、FlannelはVXLAN (Virtual Extensible Local Area Network) モードで動作し、レイヤー3ホストネットワークを介してコンテナネットワークを確立し、クロスホストポッド通信を可能にします。

Flannelネットワークプラグインは、ポッドのCIDRブロックがVPCのCIDRブロックと重複しないようにします。 ポッドのCIDRブロックは均等に分割され、クラスター内のノードに割り当てられます。 ノード上の各ポッドには、ノードのCIDRブロックに属するIPアドレスが割り当てられます。 Flannelネットワークプラグインには、次の機能があります。

  • ポッドのCIDRブロックは、VPCのCIDRブロックと重複しません。

  • コンテナパケットは、送信のためにVXLANを使用するホストによってカプセル化される。

  • 外部ネットワークデバイスの追加設定は不要で、そのまま使用できます。

Flannelネットワークプラグインの詳細については、「Network plug-in Flannel」をご参照ください。

Terway Edge (コンテナー) のネットワーク

Terway Edgeは、クラウドノードプール内でクラウドネイティブネットワークソリューションを採用しています。 elastic network Interface (ENI) を使用してコンテナネットワークを構成します。 ENIは、VPC内のIPアドレスをポッドに割り当てる仮想NICです。 エッジノードプールの場合、ポッドのCIDRブロックを指定する必要があります。 コンテナは、このCIDRブロックからIPアドレスを取得します。 Terway Edgeネットワークプラグインには、次の機能があります。

  • クラウドポッドのCIDRブロックとElastic Compute Service (ECS) インスタンスは、VPCのIPアドレス範囲内にあり、同じネットワークプレーン上にあります。

  • エッジポッドのCIDRブロックは、ホストのCIDRブロックと重複しません。

  • カプセル化なしのポッド間の通信、オーバーレイネットワークよりも優れた効率を提供します。

  • コンテナパケットの送信には、外部ネットワーク機器の経路設定が必要です。

  • 外部ホスト、コンテナー、およびクラウドサービスからポッドIPを介してクラスター内のコンテナーに直接アクセスできます。

Terway Edgeネットワークプラグインの詳細については、「Terway Edgeネットワークプラグイン」をご参照ください。

サービスの概要

サービスは、ポッドのグループにエントリポイントを提供することによってアプリケーションを公開する方法です。 ACKは、さまざまなソースとクライアントからのリクエストを処理するために、次のタイプのサービスを提供します。

タイプ

説明

クラスターIP

ClusterIPサービスは、クラスター内のアクセスを処理するために使用されます。 アプリケーションで内部クラスターの公開が必要な場合は、ClusterIPサービスを作成できます。

説明

デフォルトでは、サービスを作成するときにClusterIPが選択されます。

NodePort

NodePortサービスは、アプリケーションをインターネットに公開するために使用されます。 クラスターノードのIPアドレスとポートを使用して、アプリケーションを公開できます。 これにより、ノードのIPアドレスとポートからアプリケーションにアクセスできます。

LoadBalancer

LoadBalancerサービスは、アプリケーションをインターネットに公開するために使用されます。 LoadBalancerサービスは、SLBインスタンスを使用してアプリケーションを公開します。 したがって、LoadBalancerサービスはNodePortサービスよりも高い可用性とパフォーマンスを提供します。 LoadBalancerサービスを使用してアプリケーションを公開する方法の詳細については、「LoadBalancerサービスを使用してアプリケーションを公開する」をご参照ください。

ヘッドレスサービス

ヘッドレスサービスは、サービス構成ファイルでclusterIPフィールドをNoneに設定することで定義されます。 ヘッドレスサービスには、固定の仮想IPアドレス (VIP) がありません。 クライアントがサービスのドメインにアクセスすると、DNSはすべてのバックエンドポッドのIPアドレスを返します。 クライアントは、DNSロードバランシングを使用して、ポッド間の負荷を分散する必要があります。

ExternalName

ExternalNameサービスは、サービスを外部ドメイン名にマップするために使用されます。 これにより、クラスター内のポッドは、サービスを使用して外部ドメイン名にアクセスできます。

ACKエッジクラスタでは、多くの場合、コンピューティングリソースは異なるネットワークドメインに分散されます。 分散シナリオでは、次の機能が提供されます。

機能

説明

サービストポロジー

サービストポロジーは、クライアント要求が同じネットワークドメイン内または同じノード上のバックエンドポッドに向けられることを保証します。 したがって、異なるネットワークドメインに位置するクライアントとサービスポッドとの間の通信は制限される。 詳細については、「Configure a Service topology」をご参照ください。

NodePortサービスのポートフェンシング

複数のネットワークドメイン間でNodePortサービスをポート分離するには、ノードプールに基づいてNodePortリスニングを設定します。 詳細については、「Configure NodePort listening based on node pools」をご参照ください。

Ingressの概要

ACK Edgeクラスターでは、サービスはレイヤー4負荷分散をサポートします。 ただし、Ingressはレイヤー7のクラスターでサービスへの外部アクセスを管理します。 Ingressは、クラスター内の複数のサービスを公開するアクセスポイントとして機能します。 Ingressを使用して、さまざまなレイヤー7転送ルールを設定できます。 たとえば、ドメイン名またはパスに基づいて異なるサービスにリクエストを転送できます。 詳細については、「Ingresses overview」をご参照ください。

image