Accesso ai cluster

Una volta che il tuo cluster IBM Cloud® Kubernetes Service è stato creato, puoi iniziare a utilizzarlo effettuando l'accesso.

Prerequisiti

  1. Installa gli strumenti CLI richiesti, incluso il plug-in IBM Cloud, Kubernetes Service (ibmcloud ks) e la CLI Kubernetes (kubectl). Per un rapido accesso alle funzioni di test nel tuo cluster, puoi anche utilizzare IBM Cloud Shell.
  2. Crea il tuo cluster IBM Cloud Kubernetes Service.
  3. Se la tua rete è protetta da un firewall aziendale, consenti l'accesso agli endpoint API e alle porte di IBM Cloud e IBM Cloud Kubernetes Service. Per i cluster di soli endpoint del servizio cloud privato, non puoi verificare la connessione al tuo cluster finché non configuri l'accesso alla sottorete dell'endpoint del servizio cloud.
  4. Verifica che il tuo cluster sia in buono stato eseguendo il comando ibmcloud ks cluster get -c <cluster_name_or_ID>``. Se il tuo cluster non è in uno stato integro, riesamina la guida Debug dei cluster per assistenza. Ad esempio, se il provisioning del tuo cluster viene eseguito in un account che è protetto da un'applicazione gateway firewall, devi configurare le impostazioni del tuo firewall per consentire il traffico in uscita alle porte e agli indirizzi IP appropriati.
  5. Nell'output dei dettagli del cluster dal passo precedente, controlla l'URL dell'endpoint del servizio pubblico o privato del cluster.
  6. Puoi anche accedere al tuo cluster VPC tramite l'endpoint privato virtuale.

Accesso ai cluster tramite l'endpoint del servizio cloud pubblico

Per utilizzare il tuo cluster, imposta il cluster che hai creato come contesto per una sessione CLI per l'esecuzione di comandi kubectl.

Se desideri invece utilizzare la console IBM Cloud, puoi eseguire i comandi CLI direttamente dal tuo browser web in IBM Cloud Shell.

  1. Configura il cluster che hai creato come il contesto per questa sessione. Completa questi passi di configurazione ogni volta che lavori con il tuo cluster.
    1. Scarica il file di configurazione kubeconfig per il tuo cluster e aggiungilo al tuo file kubeconfig esistente in ~/.kube/config o all'ultimo file nella variabile di ambiente KUBECONFIG.
        ibmcloud ks cluster config -c CLUSTER_NAME_OR_ID
        ```
    2. Verifica che i comandi `kubectl` vengano eseguiti correttamente e che il contesto Kubernetes sia impostato sul tuo cluster.
    ```sh {: pre}
        kubectl config current-context
        ```
        Output di esempio
        ```sh {: screen}
        <cluster_name>/<cluster_ID>
        ```
    
  2. Avvia il tuo dashboard Kubernetes con la porta predefinita 8001.
    1. Imposta il proxy con il numero di porta predefinito.
        kubectl proxy
        ```
        ```sh {: screen}
        Starting to serve on 127.0.0.1:8001
        ```
    2. Apri il seguente URL in un browser web per visualizzare il dashboard Kubernetes.
    ```sh {: codeblock}
        http://localhost:8001/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy/
        ```
    
    
    

Accesso ai cluster tramite l'endpoint del servizio cloud privato

Consenti agli utenti del cluster autorizzati di accedere al tuo cluster VPC o classico attraverso l'endpoint del servizio cloud privato.

Accesso ai cluster VPC attraverso l'endpoint del servizio privato

Tutti i cluster VPC hanno un endpoint di servizio privato a cui possono accedere gli utenti autorizzati. Poiché è disponibile solo sulla rete privata, gli utenti devono accedervi in uno dei seguenti modi:

  1. Per le regioni diverse da ca-mon, in-che e in-mum, l'endpoint del servizio privato per i cluster VPC è accessibile da qualsiasi punto all'interno di IBM Cloud, o da un client che utilizza una VPN (o simile) per connettersi a IBM Cloud.

    È possibile collegarsi via VPN a IBM Cloud utilizzando una delle seguenti opzioni:

     [vPN da cliente a sito](/docs/vpc?topic=vpc-vpn-client-to-site-overview)
    

    : È l'opzione più comune per l'accesso al cluster ed è abbastanza semplice da configurare. Per suggerimenti sulla configurazione, vedere Accesso ai cluster VPC attraverso il Virtual Private Endpoint Gateway.

    VPN Site-to-Site : Si tratta di un'impostazione più complessa, ma con caratteristiche aggiuntive che potrebbero essere utili.

    Si può accedere a questi cluster tramite l'endpoint del servizio privato URL per il cluster, che assomiglia a c<XXX>.private.<REGION>.containers.cloud.ibm.com:XXXXX. Utilizzare questo comando per ottenere un file kubeconfig che utilizza questo endpoint privato:

    Quindi è possibile accedere al cluster utilizzando una delle diverse opzioni illustrate di seguito. Una volta fatto ciò, si può verificare la connessione usando qualcosa come ibmcloud ks get nodes

    • Accedi come admin:

      1. Assicurarsi di avere il ruolo di accesso alla piattaforma Administrator per il cluster.
      2. Scaricare il kubeconfig per l'amministratore.
        ibmcloud ks cluster config -c CLUSTER_NAME_OR_ID --admin --endpoint private
        
    • Accedi come utente:

      1. Scarica il file kubeconfig relativo all'utente con cui hai effettuato l'accesso.
        ibmcloud ks cluster config -c CLUSTER_NAME_OR_ID --endpoint private
        
  2. L'endpoint del servizio privato per tutti i cluster VPC, in tutte le regioni, è accessibile tramite il gateway Virtual Private Endpoint (VPE) specifico del cluster. Un gateway VPE è disponibile solo all'interno della VPC in cui è stato creato o tramite una VPN (o simili) in quella specifica VPC. Esistono due opzioni principali per collegarsi a un cluster in questo modo:

    • Un gateway VPE per il cluster viene creato automaticamente nella VPC in cui è stato creato il cluster. Un'opzione è quindi quella di connettersi da un sistema all'interno della VPC o da un sistema che dispone di una connessione VPN (o simile) alla VPC.
    • Se si desidera connettersi da una VPC diversa (magari anche una VPC in una regione diversa o un account diverso), è possibile creare un nuovo gateway VPE in quell'altra VPC. Quindi, da quell'altra VPC (anche se si è collegati in VPN a quell'altra VPC), si può accedere al master del cluster tramite il nuovo gateway VPE. I passaggi per eseguire questa operazione sono riportati nella sezione Creazione di gateway endpoint virtuali privati aggiuntivi in altre VPC e account.
    • Ulteriori informazioni su questa opzione, tra cui come ottenere un file kubeconfig e suggerimenti sulla configurazione di una VPN, sono riportate nella sezione Accesso ai cluster VPC tramite il Virtual Private Endpoint Gateway.

Accesso ai cluster classici tramite l'endpoint del servizio cloud privato

È possibile accedere al master di Kubernetes tramite l'endpoint del servizio cloud privato se gli utenti autorizzati del cluster si trovano nella rete privata IBM Cloud o sono connessi alla rete privata, ad esempio tramite una connessione VPN classica o IBM Cloud Direct Link. Tuttavia, la comunicazione con il master di Kubernetes tramite l'endpoint del servizio cloud privato deve passare attraverso l'intervallo di indirizzi IP 166.X.X.X, che non è instradabile da una connessione VPN classica né tramite IBM Cloud Direct Link. È possibile rendere accessibile l'endpoint del servizio cloud privato del master agli utenti del cluster utilizzando un bilanciatore di carico di rete privata (NLB). La rete privata NLB espone l'endpoint del servizio cloud privato del master come un intervallo di indirizzi IP interno 10.X.X.X a cui gli utenti possono accedere tramite VPN o connessione IBM Cloud Direct Link. Se si abilita solo l'endpoint del servizio cloud privato, è possibile utilizzare la dashboard di Kubernetes oppure abilitare temporaneamente l'endpoint del servizio cloud pubblico per creare l'NLB privato.

  1. Ottieni l'endpoint del servizio cloud privato URL e la porta corrispondente al tuo cluster.

    ibmcloud ks cluster get -c <cluster_name_or_ID>
    

    In questo output di esempio, l'URL dell'endpoint del servizio privato è https://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. Crea un file YAML denominato “ kube-api-via-nlb.yaml ”. Questo file YAML crea un servizio privato LoadBalancer ed espone l'endpoint del servizio cloud privato tramite quel NLB. Sostituisci <private_service_endpoint_port> con la porta che hai individuato nel passaggio precedente.

    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. Per creare l'NLB privato, è necessario essere connessi al master cluster. Poiché non è ancora possibile connettersi tramite l'endpoint del servizio cloud privato da una VPN o dall' IBM Cloud Direct Link, è necessario connettersi al master del cluster e creare l'NLB utilizzando l'endpoint del servizio cloud pubblico o la dashboard Kubernetes.

    • Se hai abilitato solo l'endpoint del servizio cloud privato, puoi utilizzare la dashboard di Kubernetes per creare l'NLB. La dashboard instrada automaticamente tutte le richieste verso l'endpoint del servizio cloud privato del master.

      1. Nella pagina " Cluster ", fare clic sul cluster a cui si desidera accedere.
      2. Dalla pagina dei dettagli del cluster, fai clic su Dashboard Kubernetes.
      3. Fai clic su + Crea.
      4. Seleziona Crea da file, carica il file kube-api-via-nlb.yaml e fai clic su Carica.
      5. Nella pagina Panoramica, verifica che venga creato il servizio kube-api-via-nlb. Nella colonna Endpoint esterni, annotare l'indirizzo 10.x.x.x. Questo indirizzo IP rende accessibile l'endpoint del servizio cloud privato per il master di Kubernetes sulla porta specificata nel file YAML.
    • Se hai abilitato anche l'endpoint del servizio cloud pubblico, hai già accesso al master.

      1. Scarica il file di configurazione kubeconfig per il tuo cluster e aggiungilo al tuo file kubeconfig esistente in ~/.kube/config o all'ultimo file nella variabile di ambiente KUBECONFIG.
        ibmcloud ks cluster config -c <cluster_name_or_ID>
        
      2. Crea l'NLB e l'endpoint.
        kubectl apply -f kube-api-via-nlb.yaml
        
      3. Verifica che l'NLB kube-api-via-nlb venga creato. Nell'output, annota l'indirizzo 10.x.x.x EXTERNAL-IP. Questo indirizzo IP rende accessibile l'endpoint del servizio cloud privato per il master di Kubernetes sulla porta specificata nel file YAML.
        kubectl get svc -o wide
        
        In questo esempio di output, l'indirizzo IP dell'endpoint del servizio cloud privato del master di Kubernetes è 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. Sui computer client su cui voi o i vostri utenti eseguite i comandi di “ kubectl ”, aggiungete l’indirizzo IP NLB e l’endpoint del servizio cloud privato URL al file /etc/hosts. Non includere alcuna porta nell'indirizzo IP e in URL e non includere https:// in URL.

    • Per gli utenti di macOS e Linux:
        sudo nano /etc/hosts
        ```
    * Per gli utenti Windows:
    
    ```sh {: pre}
        notepad C:\Windows\System32\drivers\etc\hosts
        ```
        A seconda delle autorizzazioni della tua macchina locale, potresti dover eseguire Blocco note come amministratore, per modificare il file degli host.
    
        ```sh {: codeblock}
        10.186.92.42  c1.private.us-east.containers.cloud.ibm.com
        ```
    
  5. Verifica di essere connesso alla rete privata tramite una connessione VPN o IBM Cloud Direct Link.

  6. Scarica il file di configurazione kubeconfig per il tuo cluster e aggiungilo al tuo file kubeconfig esistente in ~/.kube/config o all'ultimo file nella variabile di ambiente KUBECONFIG.

    ibmcloud ks cluster config -c <cluster_name_or_ID> --endpoint private
    
  7. Verifica che i comandi kubectl vengano eseguiti correttamente e che il contesto Kubernetes sia impostato sul tuo cluster.

    kubectl config current-context
    

    Output di esempio

    <cluster_name>/<cluster_ID>
    

Accesso ai cluster VPC tramite Virtual Private Endpoint Gateway

Virtual Private Endpoint Gateway viene creato automaticamente per i cluster VPC. Il master dell' Kubernetes è accessibile tramite questo gateway Virtual Private Endpoint se gli utenti autorizzati del cluster sono connessi allo stesso VPC in cui è distribuito il cluster, ad esempio tramite una VPN IBM Cloud VPC. In questo caso, il kubeconfig è configurato con il Virtual Private Endpoint (VPE) URL, che è un nome DNS privato e può essere risolto solo dal servizio DNS privato IBM Cloud VPC. IBM Cloud VPC Gli indirizzi del server DNS privato sono 161.26.0.7 e 161.26.0.8.

  1. Imposta la tua VPN IBM Cloud VPC e connettiti al tuo VPC tramite VPN.

    1. Configura una VPN client - to - site o site - to - site per il tuo VPC. Ad esempio, è possibile scegliere di impostare una connessione da client a sito con un client VPN.
    2. In caso di VPN client - to - site per il servizio IBM Cloud VPC, devi specificare gli indirizzi del servizio DNS privato IBM Cloud VPC quando esegui il provisioning del server VPN come indicato nelle considerazioni e devi creare una rotta VPN dopo aver eseguito il provisioning del server VPN, con destinazione 161.26.0.0/16 e azione translate.
    3. In caso di VPN da sito a sito per il servizio IBM Cloud VPC, segui il Accesso agli endpoint del servizio tramite la guida VPN e configura gli indirizzi del servizio DNS privato IBM Cloud VPC.
    4. Verifica di essere connesso al VPC tramite la tua connessione VPN IBM Cloud VPC.
  2. Scarica il file di configurazione kubeconfig per il tuo cluster e aggiungilo al tuo file kubeconfig esistente in ~/.kube/config o all'ultimo file nella variabile di ambiente KUBECONFIG.

    Il flag --endpoint vpe assicura che il file <CLUSTERID>.private.<REGION>.containers.cloud.ibm.com:XXXXX URL sia utilizzato nel file kubeconfig.

    ibmcloud ks cluster config -c <cluster_name_or_ID> --endpoint vpe
    
  3. 1.30 e versioni successive Aggiungi una regola del gruppo di sicurezza a kube-vpegw-<clusterID> per la tua VPN. La risorsa remota in questo esempio proviene dal CIDR IP client della VPN. È possibile trovare la porta VPE eseguendo ibmcloud ks cluster get -c CLUSTER.

    ibmcloud is sg-rulec kube-vpegw-<clusterID> inbound tcp --port-min 30829  --port-max 30829 --remote 192.168.192.0/22
    
  4. Verifica che il contesto Kubernetes sia impostato sul tuo cluster.

    kubectl config current-context
    

    Output di esempio

    <cluster_name>/<cluster_ID>
    
    kubectl version
    

    Output di esempio

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

Protezione dei cluster mediante restrizioni basate sul contesto

Gli elenchi di permessi degli endpoint dei servizi privati non sono più supportati. Migrare dalle liste di permessi degli endpoint dei servizi privati alle restrizioni basate sul contesto il prima possibile. Per le fasi specifiche della migrazione, vedere Migrazione da un elenco di permessi di un endpoint di servizio privato a restrizioni basate sul contesto(CBR).

Controllate l'accesso ai vostri endpoint di servizi pubblici e privati utilizzando regole di restrizione basate sul contesto (CBR).

Dopo aver concesso agli utenti l'accesso al cluster tramite IBM Cloud IAM, è possibile aggiungere un livello secondario di sicurezza creando regole CBR per l'endpoint pubblico e privato del servizio del cluster. Saranno consentite solo le richieste autorizzate al master del cluster che provengono dalle sottoreti indicate nelle regole CBR.

Se si desidera consentire le richieste da una VPC diversa da quella in cui si trova il cluster, è necessario includere l'indirizzo IP dell'endpoint del servizio cloud per quella VPC nelle regole CBR.

Ad esempio, per accedere all'endpoint del servizio cloud privato del tuo cluster, devi connetterti alla tua rete classica IBM Cloud o alla tua rete VPC tramite una VPN o IBM Cloud Direct Link. È possibile specificare solo la sottorete per il tunnel VPN o Direct Link nelle regole CBR, in modo che solo gli utenti autorizzati dell'organizzazione possano accedere all'endpoint del servizio cloud privato da quella sottorete.

Le regole CBR pubbliche (se il cluster ha un endpoint di servizio pubblico) possono anche aiutare a impedire agli utenti di accedere al cluster dopo la revoca dell'autorizzazione. Quando un utente lascia l'organizzazione, si rimuovono le sue autorizzazioni IAM IBM Cloud che gli garantiscono l'accesso al cluster. Tuttavia, l'utente potrebbe aver copiato il file admin kubeconfig per un cluster, ottenendo così l'accesso a quel cluster. Se si dispone di una regola CBR pubblica che consente l'accesso ai master del cluster solo da sottoreti pubbliche note di proprietà dell'organizzazione, il tentativo di accesso dell'utente da un altro indirizzo IP pubblico verrà bloccato.

Le sottoreti dei nodi worker vengono aggiunte e rimosse automaticamente dall'implementazione CBR del backend (ma non dalle regole/zone CBR), in modo che i nodi worker possano sempre accedere al master del cluster e gli utenti non debbano aggiungerle specificamente alle proprie regole CBR.

Per saperne di più sulla protezione del cluster con le regole CBR, vedere Protezione delle risorse del cluster con restrizioni basate sul contesto ed Esempi di scenari di restrizioni basate sul contesto

Creazione di gateway Virtual Private Endpoint aggiuntivi in altri VPC e account

Oltre al gateway VPE creato per un cluster nella sua VPC, è possibile creare altri gateway VPE per quel cluster per consentire l'accesso alla rete privata da altre VPC, regioni e account.

  • I gateway VPE aggiuntivi devono essere creati utilizzando la CLI o l'API. Dopo la creazione, possono essere gestiti nell'interfaccia web.

  • Per i gateway VPE cross-account, è necessario creare prima un'autorizzazione nell'account di destinazione. Per ulteriori informazioni, consultare la sezione Creazione dell'autorizzazione al servizio per il VPE cross-account nella console.

  • Non è necessario alcun gateway di transito o instradamento speciale. Il gateway VPE gestisce l'instradamento verso il cluster di destinazione.

Di seguito viene illustrato come creare un gateway VPE per più conti.

  1. Ottenere le informazioni necessarie dal cluster di destinazione.

    1. Impostare ibmcloud target sull'account, la regione e il gruppo di risorse di destinazione.

    2. Ottenere le informazioni sul gateway VPE esistente.

        ibmcloud is endpoint-gateway iks-TARGET_CLUSTER_ID
        ```
    1. Annotare il **CRN di destinazione** (formato: `crn:v1:bluemix:public:containers-kubernetes:REGION:a/TARGET_ACCOUNT:TARGET_CLUSTER_ID::`).
    
    1. Osservare i nomi degli host degli **endpoint di servizio**.
    
    
  2. Creare il nuovo gateway VPE nell'account di origine.

    1. Impostare ibmcloud target sull'account di origine, sulla regione e sul gruppo di risorse.

    2. Verificare che la VPC esista in questo account.

        ibmcloud is vpcs
        ```
    1. Creare il gateway VPE.
    
    ```sh {: pre}
        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`
        :   Il nome della VPC del passo precedente.
    
        `TARGET_CRN`
        :   Il CRN del gateway VPE del cluster di destinazione.
    
        `--name`
        :   Un nome per il gateway VPE.
    
        `SOURCE_ACCOUNT_RESOURCE_GROUP`
        :   Il nome del gruppo di risorse nell'account di origine.
    
    1. Se viene visualizzato l'errore " `Could not find service`", verificare che il CRN di destinazione sia corretto. Se è corretto, è necessario creare l'autorizzazione nell'account di destinazione. Vedere la sezione " [Creazione dell'autorizzazione al servizio per VPE tra account" nella console](/docs/vpc?topic=vpc-ordering-cross-account-endpoint-gateway&interface=ui#cross-account-vpe-prerequisite-console).
    
    
  3. Aggiungere IP riservati al gateway VPE.

    È necessario aggiungere almeno un indirizzo IP riservato. Gli IP riservati provengono dalle sottoreti della VPC di origine (uno al massimo per zona) e vengono aggiunti alle voci DNS private della VPC di origine.

    1. Creare un IP riservato per ogni zona.
        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
        ```
    1. Facoltativo: Aggiungere o modificare i gruppi di sicurezza. Per impostazione predefinita, viene collegato solo il gruppo di sicurezza predefinito della VPC di origine. Per i gateway VPE, i gruppi di sicurezza proteggono solo il traffico in ingresso. Assicurarsi che i gruppi di sicurezza consentano tutto il traffico necessario in entrata dai client.
    
    
  4. Testare la connessione.

    1. Da un VSI nella VPC di origine, utilizzare lo stesso nome host del gateway VPE originale. Lo si può trovare nell'elenco Service Endpoints o nella proprietà VPE Gateway di ibmcloud ks cluster get -c CLUSTER_NAME.

    2. Verificare che la connessione funzioni.

        curl -k https://CLUSTERID...:XXXXX/version
        ```
    1. Se la connessione non riesce, verificare quanto segue:
    
        * I gruppi di sicurezza sul gateway VSI e VPE consentono il traffico necessario
        * L'ACL VPC consente il traffico
        * Le regole di restrizione basata sul contesto (CBR) sul cluster di destinazione consentono il traffico privato proveniente dalla VPC di origine (aggiungi i tre indirizzi `Cloud Service Endpoint source addresses` della tua VPC di origine alla regola CBR privata)
    
    
    

Esempio: Comandi del conto di destinazione

L'esempio seguente mostra i comandi eseguiti nell'account di destinazione per raccogliere informazioni sul cluster e sul gateway VPE.

  1. Verificare che il target sia l'account corretto.

    ibmcloud target
    

    Output di esempio

    API endpoint:     https://cloud.ibm.com
    Region:           us-east
    User:             user2@example.com
    Account:          Target Account (9f8e7d6c5b4a321fedcba98765432222) <-> 2222222
    Resource group:   default
    
  2. Elencate i vostri cluster.

    ibmcloud ks clusters
    

    Output di esempio

    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. Ottenere i dettagli del gateway VPE. Notare il CRN di destinazione e gli endpoint del servizio.

    ibmcloud is endpoint-gateway iks-c8m5n3p2q4x6z1w7y077
    

    Output di esempio

    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. Opzionale: Ottenere i dettagli del cluster per vedere il gateway VPE URL.

    ibmcloud ks cluster get -c c8m5n3p2q4x6z1w7y077
    

    Output di esempio

    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
    

Esempio: Comandi del conto sorgente

L'esempio seguente mostra i comandi eseguiti nell'account di origine per creare un gateway VPE che si connette al cluster nell'account di destinazione.

  1. Verificare che il target sia l'account di origine corretto.

    ibmcloud target
    

    Output di esempio

    API endpoint:     https://cloud.ibm.com
    Region:           us-south
    User:             user1@example.com
    Account:          Source Account (a1b2c3d4e5f6789abcdef01234561111) <-> 1111111
    Resource group:   Default
    
  2. Elencare le VPC.

    ibmcloud is vpcs
    

    Output di esempio

    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. Creare il gateway VPE utilizzando il CRN di destinazione dell'account di destinazione.

    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
    

    Output di esempio

    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. Elencare le sottoreti per identificare quelle da utilizzare per gli IP riservati.

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

    Output di esempio

    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. Creare un IP riservato nella prima zona e collegarlo al gateway 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
    

    Output di esempio

    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. Verificare che l'IP riservato sia stato aggiunto.

    ibmcloud is eg new-iks-c8m5n3p2q4x6z1w7y077
    

    Output di esempio

    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. Creare un IP riservato nella seconda zona e collegarlo al gateway 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
    

    Output di esempio

    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. Creare un IP riservato nella terza zona e collegarlo al gateway 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
    

    Output di esempio

    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. Verificare che tutti gli IP riservati siano stati aggiunti.

    ibmcloud is eg new-iks-c8m5n3p2q4x6z1w7y077
    

    Output di esempio

    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. Testare la connessione da un VSI nella VPC di origine.

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

    Output di esempio

    {
      "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. Verificare che il nome host si risolva in un IP riservato.

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

    Output di esempio

    10.240.65.5