クラスターへのアクセス

IBM Cloud® Kubernetes Service クラスターを作成したら、そのクラスターにアクセスしてクラスターの操作を開始できます。

前提条件

  1. 必要な CLI ツールをインストールします (IBM Cloud CLI、Kubernetes Service プラグイン (ibmcloud ks)、および Kubernetes CLI (kubectl) を含む)。クラスター内のテスト機能に素早くアクセスするために、IBM Cloud Shell を使用することもできます。
  2. IBM Cloud Kubernetes Service クラスターを作成します
  3. 企業ファイアウォールでネットワークが保護されている場合は、IBM Cloud と IBM Cloud Kubernetes Service の API エンドポイントとポートへのアクセスを許可します。 プライベート・クラウド・サービス・エンドポイントのみのクラスターの場合は、クラウド・サービス・エンドポイント・サブネットへのアクセスを構成するまで、クラスターへの接続をテストすることはできません。
  4. ibmcloud ks cluster get -c <cluster_name_or_ID>を実行して、クラスターが正常な状態であることを確認します。 クラスターが正常な状態でない場合は、クラスターのデバッグのガイドを参照してください。 例えば、ファイアウォール・ゲートウェイ・アプライアンスによって保護されているアカウントにクラスターがプロビジョンされている場合は、 該当するポートと IP アドレスへの発信トラフィックを許可するようにファイアウォール設定を構成します
  5. 前の手順のクラスター詳細の出力で、クラスターのパブリックまたはプライベートのサービス・エンドポイント URL を確認します。
  6. 仮想プライベート・エンドポイント を介して VPC クラスターにアクセスすることもできます。

パブリック・クラウド・サービス・エンドポイントを介したクラスターへのアクセス

クラスターを処理するには、作成したクラスターを CLI セッションのコンテキストとして設定して、kubectl コマンドを実行します。

IBM Cloud コンソールを代わりに使用する場合は、IBM Cloud Shell の Web ブラウザーから直接 CLI コマンドを実行できます。

  1. 作成したクラスターを、このセッションのコンテキストとして設定します。 次の構成手順は、クラスターの操作時に毎回行ってください。
    1. クラスターの kubeconfig 構成ファイルをダウンロードし、kubeconfig の既存の ~/.kube/config に追加するか、KUBECONFIG 環境変数の最後のファイルに追加します。
      ibmcloud ks cluster config -c <cluster_name_or_ID>
      
    2. kubectlコマンドが正しく実行され、Kubernetesコンテキストがクラスターに設定されていることを確認します。
      kubectl config current-context
      
      出力例
      <cluster_name>/<cluster_ID>
      
  2. デフォルトのポート 8001 で Kubernetes ダッシュボードを起動します。
    1. デフォルトのポート番号でプロキシーを設定します。
      kubectl proxy
      
      Starting to serve on 127.0.0.1:8001
      
    2. Web ブラウザーで以下の URL を開いて、Kubernetes ダッシュボードを表示します。
      http://localhost:8001/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy/
      

プライベート・クラウド・サービス・エンドポイントを介したクラスターへのアクセス

許可されたクラスター・ユーザーが、プライベート・クラウド・サービス・エンドポイントを介して VPC クラスターまたはクラシック・クラスターにアクセスできるようにします。

プライベート・サービス・エンドポイントを介した VPC クラスターへのアクセス

すべてのVPCクラスタには、許可されたユーザーがアクセスできるプライベート・サービス・エンドポイントがあります。 プライベート・ネットワークでのみ利用できるため、ユーザーは以下のいずれかの方法でアクセスしなければならない:

  1. ca-mon、in-che、in-mum 以外のリージョンでは、VPC クラスタのプライベート・サービス・エンドポイントは、 IBM Cloud 内のどこからでも、または VPN(または同様のもの)を使用して IBM Cloud に接続しているクライアントからアクセスできます。

    以下のいずれかのオプションを使用して、 IBM Cloud に VPN 経由で接続できます:

    クライアント・ツー・サイトVPN
    クラスターアクセスの最も一般的なオプションで、セットアップもかなり簡単だ。 設定のヒントについては、「 Virtual Private Endpoint Gatewayを介したVPCクラスタへのアクセス 」を参照してください。
    サイト間 VPN
    セットアップはより複雑だが、便利な機能が追加されている。

    これらのクラスタには、 c<XXX>.private.<REGION>.containers.cloud.ibm.com:XXXXX のようなクラスタのプライベート・サービス・エンドポイント URL を介してアクセスできます。 このプライベートエンドポイントを使用するkubeconfigファイルを取得するには、このコマンドを使用します:

    次に、以下に示すいくつかのオプションのいずれかを使用してクラスタにログインできます。 そうしたら、次のような方法で接続を確認することができます。 ibmcloud ks get nodes

    • 管理者としてログインする:

      1. クラスタの Administrator プラットフォームアクセスロールを持って いることを確認してください。
      2. 管理者用のkubeconfigをダウンロードします。
        ibmcloud ks cluster config -c <cluster_name_or_ID> --admin --endpoint private
        
    • ユーザーとしてログインする

      1. ログインしているユーザーのkubeconfigをダウンロードします。
        ibmcloud ks cluster config -c <cluster_name_or_ID> --endpoint private
        
  2. すべての地域のすべてのVPCクラスタのプライベート・サービス・エンドポイントは、そのクラスタの特定のVPE(Virtual Private Endpoint)ゲートウェイ経由でアクセスできます。 VPEゲートウェイは、作成されたVPCの内部から、または特定のVPCへのVPN(または同様のもの)を経由してのみ利用可能です。 この方法でクラスタに接続するには、主に2つの選択肢がある:

    • クラスタ用のVPE Gatewayは、クラスタが作成されたVPC内に自動的に作成されます。 そのため、VPC内のシステムから接続するか、VPN(または同様のもの)でVPCに接続しているシステムから接続するという選択肢もある。
    • 別のVPC(別の地域や別のアカウント VPCでもよい)から接続したい場合は、その別のVPCに新しいVPEゲートウェイを作成すればよい。 その後、その別のVPCから(その別のVPCにVPN接続している場合も含めて)、その新しいVPE Gateway経由でクラスタマスターにアクセスできます。 その手順は以下の 他のVPCおよびアカウント仮想プライベートエンドポイントゲートウェイを追加作成する
    • kubeconfigファイルの取得方法やVPN設定のヒントなど、このオプションの詳細については、以下の「 Virtual Private Endpoint GatewayによるVPCクラスタへのアクセス 」のセクションを参照してください。

プライベート・クラウド・サービス・エンドポイントを介したクラシック・クラスターへのアクセス

許可されたクラスター・ユーザーが、IBM Cloud プライベート・ネットワークの中で作業している場合、またはクラシック VPN 接続IBM Cloud Direct Link などを介してプライベート・ネットワークに接続している場合は、プライベート・クラウド・サービス・エンドポイントを介して Kubernetes マスターにアクセスできます。 ただし、プライベート・クラウド・サービス・エンドポイントを介した Kubernetes マスターとの通信には、IP アドレス範囲 166.X.X.X を使用する必要があります。この範囲はクラシック VPN 接続でも IBM Cloud Direct Link でもルーティングすることはできません。 プライベート・ネットワーク・ロード・バランサー (NLB) を使用して、クラスター・ユーザーのマスターのプライベート・クラウド・サービス・エンドポイントを公開できます。 プライベート NLB は、ユーザーが VPN または IBM Cloud Direct Link 接続を使用してアクセスできる内部 10.X.X.X IP アドレス範囲として、マスターのプライベート・クラウド・サービス・エンドポイントを公開します。 プライベート・クラウド・サービス・エンドポイントのみを有効にする場合は、Kubernetes ダッシュボードを使用するか、パブリック・クラウド・サービス・エンドポイントを一時的に有効にして、プライベート NLB を作成できます。

  1. クラスターのプライベート・クラウド・サービス・エンドポイント URL およびポートを取得します。

    ibmcloud ks cluster get -c <cluster_name_or_ID>
    

    この出力例では、プライベート・サービス・エンドポイント URLhttps://c1.private.us-east.containers.cloud.ibm.com:25073 です。

    NAME:                           setest
    ID:                             b8dcc56743394fd19c9f3db7b990e5e3
    State:                          normal
    Status:                         healthy cluster
    Created:                        2019-04-25T16:03:34+0000
    Location:                       wdc04
    Master URL:                     https://c1.private.us-east.containers.cloud.ibm.com:25073
    Public Service Endpoint URL:    -
    Private Service Endpoint URL:   https://c1.private.us-east.containers.cloud.ibm.com:25073
    Master Location:                Washington D.C.
    ...
    
  2. kube-api-via-nlb.yaml という名前の YAML ファイルを作成します。 この YAML はプライベート LoadBalancer サービスを作成し、NLB を介してプライベート・クラウド・サービス・エンドポイントを公開します。 <private_service_endpoint_port> を、先述の手順で確認したポートに置き換えます。

    apiVersion: v1
    kind: Service
    metadata:
      name: kube-api-via-nlb
      annotations:
        service.kubernetes.io/ibm-load-balancer-cloud-provider-ip-type: private
      namespace: default
    spec:
      type: LoadBalancer
      ports:
      - protocol: TCP
        port: 8080 # Or, the <private_service_endpoint_port> that you found earlier.
        targetPort: 8080 # Optional. By default, the `targetPort` is set to match the `port` value unless specified otherwise.
    ---
    kind: Endpoints
    apiVersion: v1
    metadata:
      name: kube-api-via-nlb
    subsets:
      - addresses:
          - ip: 172.20.0.1
        ports:
          - port: 2040
    
  3. プライベート NLB を作成するには、クラスター・マスターに接続する必要があります。 VPN または IBM Cloud Direct Link からプライベート・クラウド・サービス・エンドポイントを介してまだ接続できないため、クラスター・マスターに接続し、パブリック・クラウド・サービス・エンドポイントまたは Kubernetes ダッシュボードを使用して NLB を作成する必要があります。

    • プライベート・クラウド・サービス・エンドポイントのみを有効にした場合は、Kubernetes ダッシュボードを使用して NLB を作成できます。 ダッシュボードは、すべての要求をマスターのプライベート・クラウド・サービス・エンドポイントに自動的に経路指定します。

      1. クラスタ] ページで、アクセスするクラスタをクリックします。
      2. クラスターの詳細ページで、**「Kubernetes ダッシュボード (Kubernetes Dashboard)」**をクリックします。
      3. **「+ 作成 (+ Create)」**をクリックします。
      4. **「ファイルから作成 (Create from file)」を選択し、kube-api-via-nlb.yaml ファイルをアップロードして、「アップロード」**をクリックします。
      5. **「概要」**ページで、kube-api-via-nlb サービスが作成されていることを確認します。 **「外部エンドポイント (External endpoints)」**列で、10.x.x.x アドレスをメモします。 この IP アドレスは、YAML ファイルで指定したポートで Kubernetes マスターのプライベート・クラウド・サービス・エンドポイントを公開します。
    • パブリック・クラウド・サービス・エンドポイントも有効にした場合は、既にマスターにアクセスできます。

      1. クラスターの kubeconfig 構成ファイルをダウンロードし、kubeconfig の既存の ~/.kube/config に追加するか、KUBECONFIG 環境変数の最後のファイルに追加します。
        ibmcloud ks cluster config -c <cluster_name_or_ID>
        
      2. NLB およびエンドポイントを作成します。
        kubectl apply -f kube-api-via-nlb.yaml
        
      3. kube-api-via-nlb NLB が作成されていることを確認します。 出力の 10.x.x.xEXTERNAL-IP** アドレス ** をメモします。 この IP アドレスは、YAML ファイルで指定したポートで Kubernetes マスターのプライベート・クラウド・サービス・エンドポイントを公開します。
        kubectl get svc -o wide
        
        この出力例では、Kubernetes マスターのプライベート・クラウド・サービス・エンドポイントの IP アドレスは 10.186.92.42 です。
        NAME                     TYPE           CLUSTER-IP       EXTERNAL-IP      PORT(S)          AGE   SELECTOR
        kube-api-via-nlb         LoadBalancer   172.21.150.118   10.186.92.42     443:32235/TCP    10m   <none>
        ...
        
  4. 自分自身またはユーザーが kubectl コマンドを実行するクライアント・マシンで、NLB IP アドレスとプライベート・クラウド・サービス・エンドポイント URL を /etc/hosts ファイルに追加します。 IP アドレスと URL にポートを含めたり、URL に https:// を含めたりしないでください。

    • macOS と Linux のユーザーの場合:

      sudo nano /etc/hosts
      
    • Windows ユーザーの場合:

      notepad C:\Windows\System32\drivers\etc\hosts
      

      ローカル・マシンの権限によっては、ホスト・ファイルを編集するためにノートパッドを管理者として実行しなければならない場合があります。

      10.186.92.42  c1.private.us-east.containers.cloud.ibm.com
      
  5. VPN または IBM Cloud Direct Link 接続を介してプライベート・ネットワークに接続していることを確認します。

  6. クラスターの kubeconfig 構成ファイルをダウンロードし、kubeconfig の既存の ~/.kube/config に追加するか、KUBECONFIG 環境変数の最後のファイルに追加します。

    ibmcloud ks cluster config -c <cluster_name_or_ID> --endpoint private
    
  7. kubectlコマンドが正しく実行され、Kubernetesコンテキストがクラスターに設定されていることを確認します。

    kubectl config current-context
    

    出力例

    <cluster_name>/<cluster_ID>
    

仮想プライベート・エンドポイント・ゲートウェイを介した VPC クラスターへのアクセス

仮想プライベート・エンドポイント・ゲートウェイ は、VPC クラスター用に自動的に作成されます。 Kubernetes マスターは、承認されたクラスターユーザーがクラスターがデプロイされているVPC(例: IBM Cloud VPC VPN 経由)に接続されている場合、この仮想プライベートエンドポイントゲートウェイを通じてアクセス可能です。 この場合、は仮想プライベートエンドポイント(VPE) URLkubeconfig で構成されています。これはプライベートDNS名であり、 IBM Cloud VPC プライベートDNSサービスによってのみ解決可能です。 IBM Cloud VPC のプライベートDNSサーバーのアドレスは および 161.26.0.7 です 161.26.0.8

  1. IBM Cloud VPC VPN をセットアップし、VPN を介して VPC に接続します。

    1. VPC への クライアントからサイト または サイトからサイト への VPN を構成します。 例えば、VPN クライアントとのクライアントからサイトへの接続をセットアップすることを選択できます。
    2. クライアントからサイトへの VPN for IBM Cloud VPC サービスの場合は、 考慮事項 に記載されているように VPN サーバーをプロビジョンするときに IBM Cloud VPC プライベート DNS のサービス・アドレスを指定する必要があります。また、VPN サーバーがプロビジョンされた後に、宛先 161.26.0.0/16 とアクション translate を指定して VPN 経路を作成する必要があります。
    3. IBM Cloud VPC サービスのサイト間 VPN の場合は、 VPN ガイドを介したサービス・エンドポイントへのアクセス に従い、 IBM Cloud VPC プライベート DNS サービス・アドレスを構成します。
    4. IBM Cloud VPC VPN接続を通じてVPCに接続されていることを確認してください。
  2. クラスターの kubeconfig 構成ファイルをダウンロードし、kubeconfig の既存の ~/.kube/config に追加するか、KUBECONFIG 環境変数の最後のファイルに追加します。

    --endpoint vpe フラグは、kubeconfigファイルで <CLUSTERID>.private.<REGION>.containers.cloud.ibm.com:XXXXX URL。

    ibmcloud ks cluster config -c <cluster_name_or_ID> --endpoint vpe
    
  3. 1.30 以降 VPN の kube-vpegw-<clusterID> にセキュリティー・グループ・ルールを追加します。 この例のリモート・リソースは、VPN のクライアント IP CIDR からのものです。 ibmcloud ks cluster get -c CLUSTER を実行すると、VPE ポートを確認できます。

    ibmcloud is sg-rulec kube-vpegw-<clusterID> inbound tcp --port-min 30829  --port-max 30829 --remote 192.168.192.0/22
    
  4. Kubernetes コンテキストがクラスターに設定されていることを確認します。

    kubectl config current-context
    

    出力例

    <cluster_name>/<cluster_ID>
    
    kubectl version
    

    出力例

    Client Version: v1.25.3
    Kustomize Version: v4.5.7
    Server Version: v1.25.4+IKS
    

コンテキストベースの制限を使用したクラスタの保護

プライベート・サービスのエンドポイント許可リストはサポートされなくなりました。 プライベート・サービス・エンドポイントの許可リストを、できるだけ早くコンテキスト・ベースの制限に移行する。 具体的な移行手順については、 プライベート・サービス・エンドポイントの許可リストからコンテキスト・ベースの制限(CBR)への移行を 参照してください。

コンテキストベースの制限(CBR)ルールを使用して、パブリックおよびプライベートサービスのエンドポイントへのアクセスを制御します。

IBM Cloud IAMを通じてユーザーにクラスタへのアクセスを許可した 後、クラスタのパブリックおよびプライベート・サービス・エンドポイントにCBRルールを作成することで、二次的なセキュリティ・レイヤーを追加できます。 CBRルール内のサブネットから発信されたクラスタ・マスタへの許可された要求のみが許可されます。

クラスタが属するVPCとは異なるVPCからのリクエストを許可する場合は、そのVPCのクラウド・サービス・エンドポイントIPアドレスをCBRルールに含める必要があります。

例えば、クラスターのプライベート・クラウド・サービス・エンドポイントにアクセスするには、VPN または IBM Cloud を介して IBM Cloud Direct Link クラシック・ネットワークまたは VPC ネットワークに接続する必要があります。 VPNまたは Direct Link トンネルのサブネットだけをCBRルールに指定して、組織内の許可されたユーザーだけがそのサブネットからプライベート・クラウド・サービスのエンドポイントにアクセスできるようにすることができます。

パブリックCBRルール(クラスタにパブリック・サービス・エンドポイントがある場合)は、承認が取り消された後にユーザがクラスタにアクセスするのを防ぐのにも役立ちます。 ユーザーが組織を退職したら、そのユーザーにクラスターへのアクセス権限を付与する IBM Cloud IAM 権限を削除します。 しかし、ユーザがクラスタのadmin kubeconfig ファイルをコピーし、そのクラスタへのアクセス権を与えている可能性があります。 組織が所有する既知のパブリック・サブネットからのクラスタ・マスタへのアクセスのみを許可するパブリックCBRルールがある場合、別のパブリックIPアドレスからのユーザのアクセス試行はブロックされます。

ワーカー・ノードのサブネットは、バックエンドのCBR実装(CBRルール/ゾーンではなく)に自動的に追加および削除されるため、ワーカー・ノードは常にクラスタ・マスタにアクセスでき、ユーザーは自分のCBRルールにこれらを特別に追加する必要はありません。

CBRルールによるクラスタの保護の詳細については、 コンテキスト・ベースの制限によるクラスタ・リソースの保護 および コンテキスト・ベースの制限のシナリオ 例を参照してください

他のVPCやアカウント追加のVirtual Private Endpointゲートウェイを作成する

VPC内のクラスタ用に作成されたVPEゲートウェイに加えて、そのクラスタ用に追加のVPEゲートウェイを作成して、他のVPC、リージョン、およびアカウントプライベートネットワーク経由のアクセスを許可することができます。

  • 追加のVPEゲートウェイは、CLIまたはAPIを使用して作成する必要があります。 作成後はウェブUIで管理できる。

  • アカウントアカウントVPEゲートウェイの場合、まずターゲットアカウント認証を作成する必要があります。 詳細は コンソールでアカウントアカウントVPEのサービス認可を作成する を参照。

  • Transit Gateway特別なルーティングは必要ない。 VPEゲートウェイはターゲットクラスタへのルーティングを処理する。

以下のステップでは、 アカウントアカウントVPEゲートウェイを作成する方法を説明します。

  1. ターゲットクラスタから必要な情報を取得する。

    1. ibmcloud target をターゲットアカウント、リージョン、リソースグループに設定する。

    2. 既存のVPEゲートウェイ情報を取得する。

      ibmcloud is endpoint-gateway iks-TARGET_CLUSTER_ID
      
    3. ターゲットCRN (フォーマット: crn:v1:bluemix:public:containers-kubernetes:REGION:a/TARGET_ACCOUNT:TARGET_CLUSTER_ID:: )に注意。

    4. サービス・エンドポイントのホスト名に注意してください。

  2. ソースアカウント新しいVPEゲートウェイを作成する。

    1. ibmcloud target をソースアカウント、リージョン、リソースグループに設定する。

    2. このアカウント VPCが存在することを確認します。

      ibmcloud is vpcs
      
    3. VPEゲートウェイを作成する。

      ibmcloud is endpoint-gateway-create --vpc SOURCE_VPC_NAME --target TARGET_CRN --name new-iks-TARGET_CLUSTER_ID --resource-group-name SOURCE_ACCOUNT_RESOURCE_GROUP
      
      SOURCE_VPC_NAME
      前のステップのVPC名。
      TARGET_CRN
      ターゲットクラスタのVPEゲートウェイからのCRN。
      --name
      VPEゲートウェイの名前。
      SOURCE_ACCOUNT_RESOURCE_GROUP
      ソースアカウントリソースグループ名。
    4. サービスが見つかりません」というエラーが表示された場合は、ターゲットCRNが正しいことを確認してください。 もし正しければ、対象のアカウント認証を作成する必要がある。 コンソールでアカウントアカウントVPEのサービス認可を作成する を参照。

  3. VPEゲートウェイに予約IPを追加する。

    少なくとも1つの予約IPを追加する必要があります。 予約IPはソースVPCのサブネットから提供され(ゾーンごとに最大1つ)、ソースVPCのプライベートDNSエントリに追加されます。

    1. 各ゾーンに予約IPを作成する。

      ibmcloud is subnet-reserved-ip-create SOURCE_VPC_SUBNET_NAME --vpc SOURCE_VPC_NAME --name ANY_NAME_YOU_CHOOSE --auto-delete true --target VPE_GATEWAY_NAME
      
    2. オプション:セキュリティグループを追加または変更する。 デフォルトでは、ソース VPC のデフォルト・セキュリティ・グループのみがアタッチされます。 VPEゲートウェイでは、セキュリティグループはイングレス・トラフィックのみを保護する。 セキュリティグループがクライアントからの必要なすべての受信トラフィックを許可していることを確認する。

  4. 接続をテストします。

    1. ソースVPCのVSIから、元のVPEゲートウェイと同じホスト名を使用します。 サービス・エンドポイント・ リスト、または ibmcloud ks cluster get -c CLUSTER_NAMEの VPE ゲートウェイ・プロパティで検索してください。

    2. 接続がうまくいくことを確認する。

      curl -k https://CLUSTERID...:XXXXX/version
      
    3. 接続に失敗した場合は、以下を確認してください:

      • VSIとVPEゲートウェイのセキュリティグループは、必要なトラフィックを許可する
      • VPC ACLはトラフィックを
      • ターゲットクラスタ上のCBR(Context Based Restriction)ルールは、ソースVPCからのプライベートトラフィックを許可します(ソースVPCからの3つの「Cloud Service Endpoint source addresses」をプライベートCBRルールに追加します)

例ターゲットアカウントコマンド

次の例は、クラスタとそのVPEゲートウェイに関する情報を収集するために、ターゲットアカウント実行するコマンドを示しています。

  1. 正しいアカウントターゲットにしていることを確認してください。

    ibmcloud target
    

    出力例

    API endpoint:     https://cloud.ibm.com
    Region:           us-east
    User:             user2@example.com
    Account:          Target Account (9f8e7d6c5b4a321fedcba98765432222) <-> 2222222
    Resource group:   default
    
  2. クラスターをリストアップする。

    ibmcloud ks clusters
    

    出力例

    OK
    Name                     ID                     State    Created     Workers   Location        Version                  Resource Group Name   Provider
    vpe-cross-account-test   c8m5n3p2q4x6z1w7y077   normal   1 day ago   2         Washington DC   4.19.25_1572_openshift   default               vpc-gen2
    
  3. VPEゲートウェイの詳細を取得する。 ターゲットCRNと サービスエンドポイントに注意してください。

    ibmcloud is endpoint-gateway iks-c8m5n3p2q4x6z1w7y077
    

    出力例

    Getting endpoint gateway iks-c8m5n3p2q4x6z1w7y077 under account Target Account as user user2@example.com...
    
    ID                            r014-7a228b24-4bc4-416c-aede-7fda14e88d98   
    Name                          iks-c8m5n3p2q4x6z1w7y077
    CRN                           crn:v1:bluemix:public:is:us-east:a/9f8e7d6c5b4a321fedcba98765432222::endpoint-gateway:r014-7a228b24-4bc4-416c-aede-7fda14e88d98
    Target                        CRN      
                                  crn:v1:bluemix:public:containers-kubernetes:us-east:a/9f8e7d6c5b4a321fedcba98765432222:c8m5n3p2q4x6z1w7y077::
    
    DNS resolution binding mode   primary   
    Target Type                   provider_cloud_service   
    Target Remote                 ID                        Name   Resource type      
                                  No target remote found.      
    
    VPC                           ID                                          Name      
                                  r014-464b4e54-48a8-4f6c-b10a-68edc6fd2be4   new-vpcgen2-default-sec-grp-wdc      
    
    Private IPs                   ID                                          Name                                   Address       Subnet ID      
                                  0757-3bd457cb-af5a-4ab6-b9bb-6e78d3eaf752   iks-useast1-c8m5n3p2q4x6z1w7y077-2e8   172.22.0.11   0757-0c981aa5-cb47-41d9-ab29-edee98b416f8
    
    Service Endpoints             c8m5n3p2q4x6z1w7y077.vpe.private.us-east.containers.cloud.ibm.com
    Lifecycle State               stable   
    Health State                  ok   
    Security groups               ID                                          Name      
                                  r014-3873358e-3180-482b-927e-abcc300ecbf8   kube-vpegw-c8m5n3p2q4x6z1w7y077
    
    Created                       2026-04-03T12:14:59-05:00   
    Resource Group                default
    
  4. オプション:クラスタの詳細を取得し、VPE ゲートウェイを確認する URL。

    ibmcloud ks cluster get -c c8m5n3p2q4x6z1w7y077
    

    出力例

    Retrieving cluster c8m5n3p2q4x6z1w7y077...
    OK
    
    Name:                           vpe-cross-account-test
    ID:                             c8m5n3p2q4x6z1w7y077
    State:                          normal
    Status:                         All Workers Normal
    Created:                        2026-04-03 11:56:38 -0500 (1 day ago)
    Resource Group ID:              950cec30388441ce809ca0d18b5ca3bc
    Resource Group Name:            default
    Pod Subnet:                     172.17.0.0/18
    Service Subnet:                 172.21.0.0/16
    Workers:                        2
    Worker Zones:                   us-east-1
    Ingress Subdomain:              vpe-cross-account-test-354226545946e7ee0a2c700f061c1661-0000.us-east.containers.appdomain.cloud
    Ingress Secret:                 vpe-cross-account-test-354226545946e7ee0a2c700f061c1661-0000
    Ingress Status:                 healthy
    Ingress Message:                All Ingress components are healthy.
    Trusted Profile ID:             -
    Public Service Endpoint URL:    https://c111-e.us-east.containers.cloud.ibm.com:31100
    Private Service Endpoint URL:   https://c111.private.us-east.containers.cloud.ibm.com:31100
    Pull Secrets:                   enabled in the default namespace
    VPCs:                           r014-464b4e54-48a8-4f6c-b10a-68edc6fd2be4
    VPE Gateway:                    https://c8m5n3p2q4x6z1w7y077.vpe.private.us-east.containers.cloud.ibm.com:31100
    OAuth Server URL:               https://c111-e.us-east.containers.cloud.ibm.com:31264
    Konnectivity Server URL:        https://c8m5n3p2q4x6z1w7y077.vpe.private.us-east.containers.cloud.ibm.com:30996
    Secure By Default Networking:   enabled
    Outbound Traffic Protection:    enabled
    
    Master      
    Status:     Ready (1 day ago)
    State:      deployed
    Health:     normal
    Version:    4.19.25_1572_openshift
    Location:   Washington DC
    URL:        https://c111-e.us-east.containers.cloud.ibm.com:31100
    

例ソースアカウントコマンド

以下の例では、ソース・ アカウントコマンドを実行して、ターゲット・ アカウントクラスタに接続するVPEゲートウェイを作成しています。

  1. 正しいソース・ アカウントターゲットにしていることを確認してください。

    ibmcloud target
    

    出力例

    API endpoint:     https://cloud.ibm.com
    Region:           us-south
    User:             user1@example.com
    Account:          Source Account (a1b2c3d4e5f6789abcdef01234561111) <-> 1111111
    Resource group:   Default
    
  2. VPCをリストアップします。

    ibmcloud is vpcs
    

    出力例

    Listing vpcs in resource group Default and region us-south under account Source Account as user user1@example.com...
    ID                                          Name                      Status      Classic access   Default network ACL                             Default security group                           Resource group   Health state   DNS Hub   DNS Resolver Type   
    r006-6f450c4b-c808-40e7-9de6-c61c262a2ae9   dev-ansiblepr-vpc         available   false            vendor-paradox-ravioli-tank                     harmonica-hypnoses-tranquil-alkalize             Default          ok             false     system   
    r006-bd06a98a-1183-42d2-810d-1c564eeb5f39   fvt-vpc-sdnlb-server-40   available   false            sloppy-program-venue-subsiding                  prattle-pension-wilt-recycled                    Default          ok             false     system   
    r006-ecf65055-6868-4368-aa7c-48fc5ac29ff8   network-fvt-us-south      available   false            doorknob-baffle-quintet-poem                    spotted-sandpaper-auction-unluckily              Default          ok             false     system   
    r006-4ff93772-cee9-4d64-9d87-d8b1b781e201   network-fvt-vpc-gen2      available   false            stegosaur-reach-boxlike-alone-stranger-uncork   earplugs-preface-county-juicy-sensitize-babied   Default          ok             false     system
    
  3. ターゲットアカウントターゲットCRNを使用してVPEゲートウェイを作成する。

    ibmcloud is endpoint-gateway-create --vpc network-fvt-us-south --target crn:v1:bluemix:public:containers-kubernetes:us-east:a/9f8e7d6c5b4a321fedcba98765432222:c8m5n3p2q4x6z1w7y077:: --name new-iks-c8m5n3p2q4x6z1w7y077 --resource-group-name Default
    

    出力例

    Creating endpoint gateway new-iks-c8m5n3p2q4x6z1w7y077 in resource group Default under account Source Account as user user1@example.com...
    
    ID                            r006-2009f147-768a-4f6a-b8fa-75f20456cec2   
    Name                          new-iks-c8m5n3p2q4x6z1w7y077
    CRN                           crn:v1:bluemix:public:is:us-south:a/a1b2c3d4e5f6789abcdef01234561111::endpoint-gateway:r006-2009f147-768a-4f6a-b8fa-75f20456cec2
    Target                        CRN      
                                  crn:v1:bluemix:public:containers-kubernetes:us-east:a/9f8e7d6c5b4a321fedcba98765432222:c8m5n3p2q4x6z1w7y077::
    
    DNS resolution binding mode   primary   
    Target Type                   provider_cloud_service   
    Target Remote                 ID                        Name   Resource type      
                                  No target remote found.      
    
    VPC                           ID                                          Name      
                                  r006-ecf65055-6868-4368-aa7c-48fc5ac29ff8   network-fvt-us-south      
    
    Private IPs                   -   
    Service Endpoints             c8m5n3p2q4x6z1w7y077.vpe.private.us-east.containers.cloud.ibm.com
    Lifecycle State               pending   
    Health State                  ok   
    Security groups               ID                                          Name      
                                  r006-7ae081e2-743d-4046-b755-5ca9997ae077   spotted-sandpaper-auction-unluckily      
    
    Created                       2026-04-04T18:17:12-05:00   
    Resource Group                Default
    
  4. 予約IPに使用するサブネットを特定するために、サブネットをリストアップする。

    ibmcloud is subnets --vpc network-fvt-us-south
    

    出力例

    Listing subnets in resource group Default and region us-south under account Source Account as user user1@example.com...
    ID                                          Name                           Status      Subnet CIDR       Addresses   ACL                            Public Gateway                             VPC                    Zone         Resource group   
    0717-04288f84-4aef-4938-9fa7-5544a40ba258   network-fvt-us-south-1-priv    available   10.240.0.0/24     251/256     doorknob-baffle-quintet-poem   -                                          network-fvt-us-south   us-south-1   Default   
    0717-cdd4b20c-b48f-454b-b092-ad7aa14b39c8   network-fvt-us-south-1-pubgw   available   10.240.1.0/24     246/256     doorknob-baffle-quintet-poem   pgw-33eb53d0-74e4-11ee-a747-33927b3ab784   network-fvt-us-south   us-south-1   Default   
    0727-8813de08-fffa-45e3-ae67-2ba70703866e   network-fvt-us-south-2-priv    available   10.240.64.0/24    250/256     doorknob-baffle-quintet-poem   -                                          network-fvt-us-south   us-south-2   Default   
    0727-50b14707-c9f6-4f93-9f49-99de13c66161   network-fvt-us-south-2-pubgw   available   10.240.65.0/24    251/256     doorknob-baffle-quintet-poem   pgw-34fe4a70-74e4-11ee-a747-33927b3ab784   network-fvt-us-south   us-south-2   Default   
    0737-7a644374-f121-44c1-b216-5fd94c0362b2   network-fvt-us-south-3-priv    available   10.240.128.0/24   251/256     doorknob-baffle-quintet-poem   -                                          network-fvt-us-south   us-south-3   Default   
    0737-71a34942-304c-4419-9205-3714a3574962   network-fvt-us-south-3-pubgw   available   10.240.129.0/24   251/256     doorknob-baffle-quintet-poem   pgw-36088e80-74e4-11ee-a747-33927b3ab784   network-fvt-us-south   us-south-3   Default
    
  5. 最初のゾーンに予約IPを作成し、VPEゲートウェイにアタッチする。

    ibmcloud is subnet-reserved-ip-create network-fvt-us-south-1-pubgw --vpc network-fvt-us-south --name reserved-ip-for-us-south-1 --auto-delete true --target new-iks-c8m5n3p2q4x6z1w7y077
    

    出力例

    Creating reserved IP in subnet network-fvt-us-south-1-pubgw under account Source Account as user user1@example.com...
    
    ID                0717-685e1410-2fa1-4e7a-a4e5-27a097ec7a7a   
    Name              reserved-ip-for-us-south-1   
    Address           0.0.0.0   
    Auto delete       true   
    Owner             user   
    Created           2026-04-04T18:18:51-05:00   
    Lifecycle state   pending   
    Target            ID                                          Name                           Resource type      CRN      
                      r006-2009f147-768a-4f6a-b8fa-75f20456cec2   new-iks-c8m5n3p2q4x6z1w7y077   endpoint_gateway   crn:v1:bluemix:public:is:us-south:a/a1b2c3d4e5f6789abcdef01234561111::endpoint-gateway:r006-2009f147-768a-4f6a-b8fa-75f20456cec2
    
  6. 予約IPが追加されたことを確認する。

    ibmcloud is eg new-iks-c8m5n3p2q4x6z1w7y077
    

    出力例

    Getting endpoint gateway new-iks-c8m5n3p2q4x6z1w7y077 under account Source Account as user user1@example.com...
    
    ID                            r006-2009f147-768a-4f6a-b8fa-75f20456cec2   
    Name                          new-iks-c8m5n3p2q4x6z1w7y077
    CRN                           crn:v1:bluemix:public:is:us-south:a/a1b2c3d4e5f6789abcdef01234561111::endpoint-gateway:r006-2009f147-768a-4f6a-b8fa-75f20456cec2
    Target                        CRN      
                                  crn:v1:bluemix:public:containers-kubernetes:us-east:a/9f8e7d6c5b4a321fedcba98765432222:c8m5n3p2q4x6z1w7y077::
    
    DNS resolution binding mode   primary   
    Target Type                   provider_cloud_service   
    Target Remote                 ID                        Name   Resource type      
                                  No target remote found.      
    
    VPC                           ID                                          Name      
                                  r006-ecf65055-6868-4368-aa7c-48fc5ac29ff8   network-fvt-us-south      
    
    Private IPs                   ID                                          Name                         Address      Subnet ID      
                                  0717-685e1410-2fa1-4e7a-a4e5-27a097ec7a7a   reserved-ip-for-us-south-1   10.240.1.5   0717-cdd4b20c-b48f-454b-b092-ad7aa14b39c8      
    
    Service Endpoints             c8m5n3p2q4x6z1w7y077.vpe.private.us-east.containers.cloud.ibm.com
    Lifecycle State               stable   
    Health State                  ok   
    Security groups               ID                                          Name      
                                  r006-7ae081e2-743d-4046-b755-5ca9997ae077   spotted-sandpaper-auction-unluckily      
    
    Created                       2026-04-04T18:17:12-05:00   
    Resource Group                Default
    
  7. セカンドゾーンに予約IPを作成し、VPEゲートウェイにアタッチする。

    ibmcloud is subnet-reserved-ip-create network-fvt-us-south-2-pubgw --vpc network-fvt-us-south --name reserved-ip-for-us-south-2 --auto-delete true --target new-iks-c8m5n3p2q4x6z1w7y077
    

    出力例

    Creating reserved IP in subnet network-fvt-us-south-2-pubgw under account Source Account as user user1@example.com...
    
    ID                0727-d315d943-c501-4f69-823d-bb82a2b13b29   
    Name              reserved-ip-for-us-south-2   
    Address           0.0.0.0   
    Auto delete       true   
    Owner             user   
    Created           2026-04-04T18:19:24-05:00   
    Lifecycle state   pending   
    Target            ID                                          Name                           Resource type      CRN      
                      r006-2009f147-768a-4f6a-b8fa-75f20456cec2   new-iks-c8m5n3p2q4x6z1w7y077   endpoint_gateway   crn:v1:bluemix:public:is:us-south:a/a1b2c3d4e5f6789abcdef01234561111::endpoint-gateway:r006-2009f147-768a-4f6a-b8fa-75f20456cec2
    
  8. 第3ゾーンに予約IPを作成し、VPEゲートウェイにアタッチする。

    ibmcloud is subnet-reserved-ip-create network-fvt-us-south-3-pubgw --vpc network-fvt-us-south --name reserved-ip-for-us-south-3 --auto-delete true --target new-iks-c8m5n3p2q4x6z1w7y077
    

    出力例

    Creating reserved IP in subnet network-fvt-us-south-3-pubgw under account Source Account as user user1@example.com...
    
    ID                0737-afbebd9f-02bd-4b9a-be90-5bacf9836041   
    Name              reserved-ip-for-us-south-3   
    Address           0.0.0.0   
    Auto delete       true   
    Owner             user   
    Created           2026-04-04T18:19:32-05:00   
    Lifecycle state   pending   
    Target            ID                                          Name                           Resource type      CRN      
                      r006-2009f147-768a-4f6a-b8fa-75f20456cec2   new-iks-c8m5n3p2q4x6z1w7y077   endpoint_gateway   crn:v1:bluemix:public:is:us-south:a/a1b2c3d4e5f6789abcdef01234561111::endpoint-gateway:r006-2009f147-768a-4f6a-b8fa-75f20456cec2
    
  9. すべての予約IPが追加されたことを確認する。

    ibmcloud is eg new-iks-c8m5n3p2q4x6z1w7y077
    

    出力例

    Getting endpoint gateway new-iks-c8m5n3p2q4x6z1w7y077 under account Source Account as user user1@example.com...
    
    ID                            r006-2009f147-768a-4f6a-b8fa-75f20456cec2   
    Name                          new-iks-c8m5n3p2q4x6z1w7y077
    CRN                           crn:v1:bluemix:public:is:us-south:a/a1b2c3d4e5f6789abcdef01234561111::endpoint-gateway:r006-2009f147-768a-4f6a-b8fa-75f20456cec2
    Target                        CRN      
                                  crn:v1:bluemix:public:containers-kubernetes:us-east:a/9f8e7d6c5b4a321fedcba98765432222:c8m5n3p2q4x6z1w7y077::
    
    DNS resolution binding mode   primary   
    Target Type                   provider_cloud_service   
    Target Remote                 ID                        Name   Resource type      
                                  No target remote found.      
    
    VPC                           ID                                          Name      
                                  r006-ecf65055-6868-4368-aa7c-48fc5ac29ff8   network-fvt-us-south      
    
    Private IPs                   ID                                          Name                         Address        Subnet ID      
                                  0737-afbebd9f-02bd-4b9a-be90-5bacf9836041   reserved-ip-for-us-south-3   10.240.129.5   0737-71a34942-304c-4419-9205-3714a3574962      
                                  0717-685e1410-2fa1-4e7a-a4e5-27a097ec7a7a   reserved-ip-for-us-south-1   10.240.1.5     0717-cdd4b20c-b48f-454b-b092-ad7aa14b39c8      
                                  0727-d315d943-c501-4f69-823d-bb82a2b13b29   reserved-ip-for-us-south-2   10.240.65.5    0727-50b14707-c9f6-4f93-9f49-99de13c66161      
    
    Service Endpoints             c8m5n3p2q4x6z1w7y077.vpe.private.us-east.containers.cloud.ibm.com
    Lifecycle State               stable   
    Health State                  ok   
    Security groups               ID                                          Name      
                                  r006-7ae081e2-743d-4046-b755-5ca9997ae077   spotted-sandpaper-auction-unluckily      
    
    Created                       2026-04-04T18:17:12-05:00   
    Resource Group                Default
    
  10. ソースVPCのVSIからの接続をテストする。

    curl -k https://c8m5n3p2q4x6z1w7y077.vpe.private.us-east.containers.cloud.ibm.com:31100/version
    

    出力例

    {
      "major": "1",
      "minor": "32",
      "gitVersion": "v1.32.12",
      "gitCommit": "9b706b45b52a0c8bb05847295ee98ffccbabba32",
      "gitTreeState": "clean",
      "buildDate": "2026-02-19T13:30:47Z",
      "goVersion": "go1.23.10 (Red Hat 1.23.10-10.el9) X:strictfipsruntime",
      "compiler": "gc",
      "platform": "linux/amd64"
    }
    
  11. ホスト名が予約IPに解決されることを確認する。

    dig +short c8m5n3p2q4x6z1w7y077.vpe.private.us-east.containers.cloud.ibm.com
    

    出力例

    10.240.65.5