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

Container Service for Kubernetes:自動的に作成されたSLBインスタンスを使用してアプリケーションを公開する

最終更新日:Nov 20, 2024

Server Load Balancer (SLB) インスタンスが使用できない場合、cloud-controller-manager (CCM) コンポーネントは、LoadBalancer Service用のClassic Load Balancer (CLB) またはNetwork Load Balancer (NLB) インスタンスを自動的に作成および管理します。 このトピックでは、自動的に作成されたSLBインスタンスを使用してアプリケーションを公開する方法について説明します。 NGINXアプリケーションが例として使用される。

ノート

CCMによるロードバランシング管理

  • CCMは、Type=LoadBalancer設定のサービスのみのSLBリソースを作成および構成します。

  • 重要

    サービスの設定をType=LoadBalancerからType!=LoadBalancerに変更すると、CCMはサービス用に作成されたSLBインスタンスの設定を削除します。 その結果、SLBインスタンスを使用してサービスにアクセスすることはできません。

  • CCMは宣言型APIを使用し、特定の条件が満たされたときに、公開されたサービスの設定と一致するようにSLBインスタンスの設定を自動的に更新します。 service.beta.kubernetes.io/alibaba-cloud-loadbalancer-force-override-listeners:trueに設定した場合、SLBコンソールで変更したSLB設定がCCMによって上書きされる可能性があります。

  • 重要

    CCMによって作成および管理されるSLBインスタンスの場合、SLBコンソールでインスタンスの設定を変更しないことを推奨します。 そうしないと、CCMは構成を上書きし、関連するサービスにアクセスできなくなる可能性があります。

SLB

  • CCMは、Type=LoadBalancer設定でサービスのSLBインスタンスを作成します。 デフォルトでは、Alibaba Cloudアカウント内に最大60個のSLBインスタンスを持つことができます。 より多くのSLBインスタンスを作成するには、Quota Centerコンソールにログインしてアプリケーションを送信でクォータの増加を申請します。

  • CCMは、サービス設定に基づいて、ECS (Elastic Compute Service) インスタンスをSLBインスタンスのバックエンドサーバーグループに自動的に追加します。

  • CCMは、SLBインスタンスのサービスポートを使用するリスナーを自動的に作成します。 デフォルトでは、各SLBインスタンスは最大50個のリスナーをサポートします。 各SLBインスタンスでサポートされるリスナーの数を増やすには、Quota Centerコンソールにログインしてアプリケーションを送信でクォータの増加を申請します。

  • SLBの制限の詳細については、「CLBの制限」および「NLBの制限」をご参照ください。

    SLBリソースクォータを照会するには、SLBコンソールのクォータセンターページに移動します。

ステップ1: アプリケーションのデプロイ

このトピックでは、NGINXステートレスアプリケーションを例として、LoadBalancerサービスを使用してアプリケーションを公開する方法を示します。

ACKコンソールの使用

  1. ACKコンソールにログインします。 左側のナビゲーションウィンドウで、[クラスター] をクリックします。

  2. [クラスター] ページで、管理するクラスターの名前をクリックします。 左側のウィンドウで、[ワークロード] > [デプロイ] を選択します。

  3. [デプロイメント] ページで、[イメージから作成] をクリックし、デプロイメントの基本情報、コンテナ設定、および詳細設定を構成します。

    1. [基本情報] ウィザードページで、[名前] を指定し、他のパラメーターのデフォルト設定を維持して、[次へ] をクリックします。 この例では、名前はmy-nginxに設定されています。

    2. [コンテナー] ウィザードページで、イメージ名とコンテナーポートを指定し、他のパラメーターのデフォルト設定を維持して、[次へ] をクリックします。

      パラメーター

      有効値

      イメージ名

      [画像の選択] をクリックします。 [画像と画像タグの選択] ダイアログボックスで、[アーティファクトセンター] タブをクリックし、nginxを検索して、openanolis/nginxという名前の画像リポジトリを選択します。 次に、[画像タグの選択] をクリックして画像タグを設定し、[OK] をクリックします。

      ポート

      • 名前: nginx。

      • コンテナポート: 80。

    3. [詳細設定] ウィザードページで、デフォルト設定を維持し、[作成] をクリックしてNGINXアプリケーションを作成します。

kubectlを使う

  1. my-nginx.yamlという名前のファイルを作成し、次のYAMLコンテンツをファイルに追加します。

    apiVersion: apps/v1 # for versions before 1.8.0 use apps/v1beta1
    kind: Deployment
    metadata:
      name: my-nginx    # The name of the sample application. 
      labels:
        app: nginx
    spec:
      replicas: 2       # The number of replicated pods. 
      selector:
        matchLabels:
          app: nginx     # You must specify the same value in the selector of the Service that is used to expose the application. 
      template:
        metadata:
          labels:
            app: nginx
        spec:
        #  nodeSelector:
        #    env: test-team
          containers:
          - name: nginx
            image: anolis-registry.cn-zhangjiakou.cr.aliyuncs.com/openanolis/nginx:1.14.1-8.6
            ports:
            - containerPort: 80                                # The port that you want to expose in the Service.

  2. 次のコマンドを実行して、my-nginxアプリケーションをデプロイします。

    kubectl apply -f my-nginx.yaml
  3. 次のコマンドを実行して、アプリケーションのステータスを照会します。

    kubectl get deployment my-nginx

    期待される出力:

    NAME       READY   UP-TO-DATE   AVAILABLE   AGE
    my-nginx   2/2     2            2           50s

手順2: 自動的に作成されたSLBインスタンスを使用してアプリケーションを公開する

Container Service for Kubernetes (ACK) コンソールまたはkubectlを使用してLoadBalancerサービスを作成できます。 サービスの作成後、サービスを使用してアプリケーションを公開します。

コンソール操作ガイド

  1. ACKコンソールにログインします。 左側のナビゲーションウィンドウで、[クラスター] をクリックします。

  2. [クラスター] ページで、管理するクラスターの名前をクリックします。 左側のウィンドウで、[ネットワーク] > [サービス] を選択します。

  3. [サービス] ページで、[作成] をクリックし、[サービスの作成] ダイアログボックスでパラメーターを設定します。

    設定アイテム

    説明

    名前

    サービスの名前。

    my-nginx-svc

    サービスタイプ

    [サービスタイプ] を指定します。 さまざまな種類のソースからのアクセスを処理するために、次の種類のサービスを作成できます。

    クラスターIP

    ClusterIPサービス。 このタイプのサービスは、クラスター内の通信に使用されます。 ClusterIPサービスのみが相互に検出および通信できます。 [Headless Service] を選択した場合、Kubernetesがデフォルトで提供するClusterIPベースのサービス検出および負荷分散機能に依存することなく、他のサービス検出メカニズムと対話できます。

    SLBを使用します。

    SLBでは、CLBインスタンスまたはNLBインスタンスを使用して、クラスター内のアプリケーションを公開するLoadBalancerサービスを作成できます。 NodePortサービスと比較して、LoadBalancerサービスを使用して公開されるアプリケーションの可用性とパフォーマンスが大幅に向上します。 サポートされているSLBインスタンス:

    • CLB: 詳細については、「CLB」をご参照ください。

    • NLB: 詳細については、「NLB」をご参照ください。

    ノードポート

    NodePortサービス。 外部ユーザーは、ノードのIPアドレスと指定されたポートを使用して、このタイプのサービスにアクセスできます。 <NodeIP >:< NodePort> を介してNodePortサービスに接続できます。 ただし、負荷分散を手動で設定する必要があります。

    1. [SLB] を選択します。

    2. [既存のリソースを使用] をクリックし、ドロップダウンリストからCLBインスタンスを選択します。

      この例のCLBインスタンスは新しく作成されます。 CLBインスタンスのリスナーを設定する必要があります。 したがって、[既存のリスナーの上書き] を選択します。

    外部トラフィックポリシー

    [外部トラフィックポリシー] パラメーターは、サービスタイプパラメーターを [ノードポート] または [Server Load Balancer] に設定した場合にのみ使用できます。 外部トラフィックポリシーの詳細については、「はじめに」トピックの外部トラフィックポリシーの違いをご参照ください。 有効な値:

    • Local: 現在のノードのポッドにのみトラフィックをルーティングします。

    • Cluster: トラフィックをクラスター内の他のノードのポッドにルーティングします。

    Local

    バックエンド

    サービスに関連付けるバックエンドアプリケーション。 バックエンドアプリケーションを選択しない場合、Endpointオブジェクトは作成されません。 詳細については、「Services-without-selectors」をご参照ください。

    名前: アプリ

    値: my-nginx

    ポートマッピング

    サービスポートとコンテナーポート。 サービスポートはYAMLファイルのportフィールドに対応し、コンテナーポートはYAMLファイルのtargetPortフィールドに対応します。 コンテナーポートは、バックエンドポッドで公開されているポートと同じである必要があります。

    80

    注釈

    注釈をサービスに追加して、SLBインスタンスの構成を変更します。 詳細については、「注釈を使用してCLBインスタンスを構成する」および「注釈を使用してNLBインスタンスを構成する」をご参照ください。

    重要

    クラスター内のAPIサーバーのSLBインスタンスを再利用しないでください。 そうしないと、クラスタアクセス障害が発生する可能性があります。

    この例では、2つの注釈を追加して、帯域幅課金方法を指定し、最大帯域幅を2 Mbit/sに設定して、サービスを介して流れるトラフィックの量を制限します。 例:

    • service.beta.kubernetes.io/alibaba-cloud-loadbalancer-charge-type:paybybandwidth

    • service.beta.kubernetes.io/alibaba-cloud-loadbalancer-bandwidth:2

    ラベル

    サービスを識別する、サービスに追加されるラベル。

    非該当

    サービス削除保護

    重要なビジネスまたは機密データを含むサービスの削除保護を有効にして、誤った削除に関連するメンテナンスコストを回避します。 この機能を有効にすると、この機能を手動で無効にした後にのみリソースを削除できます。

    説明

    コンテナーセキュリティポリシーを管理するには、まずpolicy-template-controllergatekeeperをインストールする必要があります。 クラスターの詳細ページで、[操作] > [アドオン] を選択すると、これらのコンポーネントが表示されます。 [インストール] をクリックして、これらのコンポーネントのデプロイを完了します。

    無効

    パラメーターを設定したら、[OK] をクリックします。

  4. [サービス] ページで、作成したサービスをクリックして、サービスの詳細ページに移動します。 [基本情報] セクションで、[外部IP] の右側にある [39.106.XX.XX:80] をクリックしてアプリケーションにアクセスします。

kubectl操作ガイド

  1. という名前のファイルを作成するには、サンプルサービスの次のYAMLコンテンツを使用します。my-nginx-svc.yaml.

    セレクターを変更して、サンプルアプリケーションファイルmy-nginx.yaml (この例ではapp: nginx) のmatchLabelsの値と一致させ、サービスをバックエンドアプリケーションに関連付けます。

    apiVersion: v1
    kind: Service
    metadata:
      labels:
        app: nginx
      name: my-nginx-svc
      namespace: default
    spec:
      ports:
      - port: 80
        protocol: TCP
        targetPort: 80
      selector:
        app: nginx
      type: LoadBalancer
  2. 次のコマンドを実行して、my-nginx-svcという名前のサービスを作成し、サービスを使用してアプリケーションを公開します。

    kubectl apply -f my-nginx-svc.yaml
  3. 次のコマンドを実行して、LoadBalancerサービスが作成されたことを確認します。

    kubectl get svc my-nginx-svc

    期待される出力:

    NAME           TYPE           CLUSTER-IP    EXTERNAL-IP      PORT(S)        AGE
    my-nginx-svc   LoadBalancer   172.21.5.82   39.106.XX.XX     80:30471/TCP   5m
  4. 次のコマンドを実行して、アプリケーションにアクセスします。

    curl <YOUR-External-IP> # Replace <YOUR-External-IP> with the EXTERNAL-IP address obtained above.

    期待される出力:

    <!DOCTYPE html>
    <html>
    <head>
    <title>Welcome to nginx!</title>
    <style>
        body {
            width: 35em;
            margin: 0 auto;
            font-family: Tahoma, Verdana, Arial, sans-serif;
        }
    </style>
    </head>
    <body>
    <h1>Welcome to nginx!</h1>
    <p>If you see this page, the nginx web server is successfully installed and
    working. Further configuration is required.</p>
    
    <p>For online documentation and support please refer to
    <a href="http://nginx.org/">nginx.org</a>.<br/>
    Commercial support is available at
    <a href="http://nginx.com/">nginx.com</a>.</p>
    
    <p><em>Thank you for using nginx.</em></p>
    </body>
    </html>

CLB

CLBインスタンスの作成

[CLBインスタンスの作成] を選択した場合、CLBインスタンスのアクセスモードをパブリックアクセスまたは内部アクセスに設定し、CLBインスタンスの課金方法を従量課金または従量課金に設定できます。 詳細については、「CLBインスタンスの作成と管理」をご参照ください。

パラメーター

説明

名前

CLBインスタンスの名前。 このパラメーターは、CLBインスタンスを作成する場合にのみ必要です。

アクセス方法

有効な値: パブリックアクセスおよび内部アクセス

課金方法

有効な値: Pay-by-specificationおよびPay-as-you-go (Pay-by-CU) 。 詳細については、「CLB課金の概要」をご参照ください。

IPバージョン

IPアドレスのバージョン。 有効な値: IPv4およびIPv6

スケジューリングアルゴリズム

有効値: ラウンドロビン (RR) および加重ラウンドロビン (WRR) 。 デフォルト値: ラウンドロビン (RR) 。 ラウンドロビン (RR): リクエストはバックエンドサーバーに順番に配信されます。 重み付きラウンドロビン (WRR): 重みの高いバックエンドサーバーは、重みの低いサーバーよりも多くのリクエストを受け取ります。

アクセス制御

リスナーのアクセス制御機能を有効にするかどうかを指定します。 詳細は、「アクセス制御」をご参照ください。

ヘルスチェック

ヘルスチェック機能を有効にするかどうかを指定します。 ヘルスチェックプロトコルパラメーターをTCPまたはHTTPに設定できます。 ヘルスチェック機能を有効にすると、ヘルスチェック機能を使用してバックエンドサーバーのサービスの可用性を確認できます。 ヘルスチェックの仕組みの詳細については、「CLBヘルスチェックの仕組み」をご参照ください。

その他

アノテーションを使用してCLBインスタンスを設定することもできます。 詳細については、「アノテーションを使用したCLBインスタンスの設定」をご参照ください。

既存のCLBインスタンスの使用

[既存のCLBインスタンスを使用] のドロップダウンリストから既存のCLBインスタンスを選択できます。 既存のリスナーの上書きを有効にするかどうかも選択できます。 詳細については、「既存のCLBインスタンスを使用し、CLBインスタンスのリスナーを強制的に上書きする」をご参照ください。

重要

既存のCLBインスタンスを使用する場合は、いくつかの制限と使用状況の注意を払う必要があります。 詳細については、「LoadBalancerサービスを設定するための考慮事項」トピックの使用方法の注意事項をご参照ください。

詳細設定

パラメーター

説明

スケジューリングアルゴリズム

有効値: ラウンドロビン (RR) および加重ラウンドロビン (WRR) 。 デフォルト値: ラウンドロビン (RR) 。 ラウンドロビン (RR): リクエストはバックエンドサーバーに順番に配信されます。 重み付きラウンドロビン (WRR): 重みの高いバックエンドサーバーは、重みの低いサーバーよりも多くのリクエストを受け取ります。

アクセス制御

リスナーのアクセス制御機能を有効にするかどうかを指定します。 詳細は、「アクセス制御」をご参照ください。

ヘルスチェック

ヘルスチェック機能を有効にするかどうかを指定します。 ヘルスチェックプロトコルパラメーターをTCPまたはHTTPに設定できます。 ヘルスチェック機能を有効にすると、ヘルスチェック機能を使用してバックエンドサーバーのサービスの可用性を確認できます。 ヘルスチェックの仕組みの詳細については、「CLBヘルスチェックの仕組み」をご参照ください。

その他

アノテーションを使用してCLBインスタンスを設定することもできます。 詳細については、「アノテーションを使用したCLBインスタンスの設定」をご参照ください。

NLB

NLBインスタンスの作成

[NLBインスタンスの作成] を選択した場合、NLBインスタンスのアクセスモードをパブリックアクセスまたは内部アクセスに設定できます。 詳細については、「NLBインスタンスの作成と管理」をご参照ください。

パラメーター

説明

名前

NLBインスタンスの名前。 このパラメーターは、NLBインスタンスを作成する場合にのみ必要です。

アクセス方法

有効な値: パブリックアクセスおよび内部アクセス

課金方法

有効値: 従量課金 (Pay-by-CU) 。 詳細は、「NLB課金」をご参照ください。

IPバージョン

IPアドレスのバージョン。 有効な値: IPv4およびDual-stack

スケジューリングアルゴリズム

有効な値:

  • ラウンドロビン: リクエストはバックエンドサーバーに順番に転送されます。

  • 重み付きラウンドロビン (デフォルト): 重みの大きいバックエンドサーバーは、重みの小さいバックエンドサーバーよりも多くのリクエストを受け取ります。

  • ソースIPハッシュ: ソースIPアドレスに基づくコンシステントハッシングを指定します。 同じ送信元IPアドレスからのリクエストは、同じバックエンドサーバーに配信されます。

  • Four-Element Hashing: 送信元IPアドレス、送信先IPアドレス、送信元ポート、および送信先ポートの各要素に基づくコンシステントハッシングを指定します。 上記の要因に基づいて同じ情報を含むリクエストは、同じバックエンドサーバーに転送されます。

  • QUIC ID Hashing: QUIC IDに基づいてコンシステントハッシングを指定します。 同じQUIC IDを持つリクエストは、同じバックエンドサーバーに転送されます。

  • 重み付き最小接続数: リクエストは、バックエンドサーバーへの接続の重みと数に基づいて転送されます。 2つのバックエンドサーバーの重みが同じ場合、接続数が少ないバックエンドサーバーはより多くのリクエストを受信します。

ヘルスチェック

ヘルスチェック機能を有効にするかどうかを指定します。

  • TCP (デフォルト): TCPヘルスチェックを実行するために、NLBはSYNパケットをバックエンドサーバーに送信して、バックエンドサーバーのポートがリクエストを受信できるかどうかを確認します。

    • ヘルスチェック応答タイムアウト: ヘルスチェックから応答を受け取るまでの待機時間。 バックエンドサーバーが指定されたタイムアウト期間内に応答しない場合、バックエンドサーバーは異常と見なされます。

    • ヘルスチェック間隔: ヘルスチェックが実行される間隔。

    • 正常しきい値: バックエンドサーバーが正常と見なされるまでに、バックエンドサーバーが連続してヘルスチェックに合格する必要がある最小回数。

    • 異常しきい値: バックエンドサーバーが異常と見なされるまでに、バックエンドサーバーが連続してヘルスチェックに合格しない必要がある最小回数。

  • HTTP: HTTPヘルスチェックを実行するために、NLBはHEADまたはGETリクエストをバックエンドサーバーに送信し、バックエンドサーバーが正常かどうかを確認します。

    • ドメイン名: ヘルスチェックに使用されるドメイン名。

      • バックエンドサーバーの内部IP (デフォルト): ヘルスチェックにバックエンドサーバーのプライベートIPアドレスを使用します。

      • カスタムドメイン名: ドメイン名を入力します。

    • パス: ヘルスチェックページのURL。

    • ヘルスチェックステータスコード: ヘルスチェックに対して返されるステータスコード。 有効な値は、http_2xxhttp_3xxhttp_4xxhttp_5xxです。 デフォルト値: http_2xx

その他

アノテーションを使用してNLBインスタンスを設定することもできます。 詳細については、「アノテーションを使用したNLBインスタンスの設定」をご参照ください。

[VPC]

デフォルトのクラスターVPCリージョンとVPC ID。

Vswitch

VPCのインスタンスでサポートされているゾーンでvSwitchを選択するか、新しいvSwitchを作成できます。

既存のNLBインスタンスの使用

[既存のNLBインスタンスを使用] を選択した場合、[既存のNLBインスタンスを使用] のドロップダウンリストから既存のNLBインスタンスを選択できます。 既存のリスナーの上書きを有効にするかどうかも選択できます。 詳細については、「既存のNLBインスタンスの使用」をご参照ください。

重要

既存のNLBインスタンスを使用する場合は、いくつかの制限と使用状況の注意を払う必要があります。 詳細については、「LoadBalancerサービスを設定するための考慮事項」トピックの使用方法の注意事項をご参照ください。

詳細設定

パラメーター

説明

スケジューリングアルゴリズム

有効な値:

  • ラウンドロビン: リクエストはバックエンドサーバーに順番に転送されます。

  • 重み付きラウンドロビン (デフォルト): 重みの大きいバックエンドサーバーは、重みの小さいバックエンドサーバーよりも多くのリクエストを受け取ります。

  • ソースIPハッシュ: ソースIPアドレスに基づくコンシステントハッシングを指定します。 同じ送信元IPアドレスからのリクエストは、同じバックエンドサーバーに配信されます。

  • Four-Element Hashing: 送信元IPアドレス、送信先IPアドレス、送信元ポート、および送信先ポートの各要素に基づくコンシステントハッシングを指定します。 上記の要因に基づいて同じ情報を含むリクエストは、同じバックエンドサーバーに転送されます。

  • QUIC ID Hashing: QUIC IDに基づいてコンシステントハッシングを指定します。 同じQUIC IDを持つリクエストは、同じバックエンドサーバーに転送されます。

  • 重み付き最小接続数: リクエストは、バックエンドサーバーへの接続の重みと数に基づいて転送されます。 2つのバックエンドサーバーの重みが同じ場合、接続数が少ないバックエンドサーバーはより多くのリクエストを受信します。

ヘルスチェック

ヘルスチェック機能を有効にするかどうかを指定します。

  • TCP (デフォルト): TCPヘルスチェックを実行するために、NLBはSYNパケットをバックエンドサーバーに送信して、バックエンドサーバーのポートがリクエストを受信できるかどうかを確認します。

    • ヘルスチェック応答タイムアウト: ヘルスチェックから応答を受け取るまでの待機時間。 バックエンドサーバーが指定されたタイムアウト期間内に応答しない場合、バックエンドサーバーは異常と見なされます。

    • ヘルスチェック間隔: ヘルスチェックが実行される間隔。

    • 正常しきい値: バックエンドサーバーが正常と見なされるまでに、バックエンドサーバーが連続してヘルスチェックに合格する必要がある最小回数。

    • 異常しきい値: バックエンドサーバーが異常と見なされるまでに、バックエンドサーバーが連続してヘルスチェックに合格しない必要がある最小回数。

  • HTTP: HTTPヘルスチェックを実行するために、NLBはHEADまたはGETリクエストをバックエンドサーバーに送信し、バックエンドサーバーが正常かどうかを確認します。

    • ドメイン名: ヘルスチェックに使用されるドメイン名。

      • バックエンドサーバーの内部IP: ヘルスチェックにバックエンドサーバーのプライベートIPアドレスを使用します。 デフォルト値です。

      • カスタムドメイン名: ドメイン名を入力します。

    • ヘルスチェックページのURL。

    • ヘルスチェックステータスコード: ヘルスチェックに対して返されるステータスコード。 有効な値は、http_2xxhttp_3xxhttp_4xxhttp_5xxです。 デフォルト値: http_2xx

その他

アノテーションを使用してNLBインスタンスを設定することもできます。 詳細については、「アノテーションを使用したNLBインスタンスの設定」をご参照ください。

[VPC]

デフォルトのクラスターVPCリージョンとVPC ID。

Vswitch

VPCのインスタンスでサポートされているゾーンでvSwitchを選択するか、新しいvSwitchを作成できます。

次に何をすべきか

サービスを表示、更新、および削除できます。 たとえば、サービスのインターネットに接続するSLBインスタンスを変更できます。

ACKコンソールの使用

  1. ACKコンソールにログインします。 左側のナビゲーションウィンドウで、[クラスター] をクリックします。

  2. [クラスター] ページで、管理するクラスターの名前をクリックします。 左側のウィンドウで、[ネットワーク] > [サービス] を選択します。

  3. [サービス] ページで、サービスをクリックして詳細を表示するか、サービスの [操作] 列の [更新] または [削除] をクリックして、サービスを更新または削除できます。

kubectlを使う

サービスの更新

  • 方法1: 次のコマンドを実行してサービスを更新します。

    kubectl edit service my-nginx-svc
  • 方法2: サービスを手動で削除し、YAMLファイルを変更してから、サービスを再作成します。

    kubectl apply -f my-nginx-svc.yaml

サービスの表示

次のコマンドを実行して、サービスを表示します。

kubectl get service my-nginx-svc

期待される出力:

NAME           TYPE           CLUSTER-IP    EXTERNAL-IP      PORT(S)        AGE
my-nginx-svc   LoadBalancer   172.21.XX.XX   192.168.XX.XX     80:31599/TCP   5m

サービスの削除

次のコマンドを実行して、サービスを削除します。

kubectl delete service my-nginx-svc