Accès aux clusters Red Hat OpenShift

Une fois que vous avez créé votre cluster Red Hat® OpenShift® on IBM Cloud®, vous pouvez commencer à le gérer en y accédant.

Prérequis

  1. Installez les outils d'interface de ligne de commande requis. Pour accéder rapidement aux fonctionnalités de test de votre cluster, vous pouvez également utiliser IBM Cloud Shell.
  2. Créez votre cluster Red Hat OpenShift.
  3. Si votre réseau est protégé par un pare-feu d'entreprise, autorisez l'accès aux noeuds finaux d'API et aux ports IBM Cloud et Red Hat OpenShift on IBM Cloud. Pour les clusters VPC avec uniquement le nœud final de service de cloud privé activé, vous ne pouvez pas tester la connexion à votre cluster jusqu'à ce que vous Configurer un VPN VPC avec le sous-réseau du nœud final de service de cloud.
  4. Vérifiez que votre cluster est sain en exécutant ibmcloud oc cluster get -c <cluster_name_or_ID>. Si votre cluster n'est pas dans un état sain, consultez le guide Débogage des clusters pour obtenir de l'aide. Par exemple, si votre cluster est mis à disposition dans un compte qui est protégé par un dispositif de passerelle de pare-feu, vous devez configurer vos paramètres de pare-feu pour autoriser le trafic sortant vers les ports et les adresses IP appropriés.
  5. Recherchez le noeud final de service de votre cluster.
    • Clusters classiques ou de VPC : Dans la sortie des détails du cluster obtenue à l'étape précédente, vérifiez l'URL de noeud final de service public ou de noeud final de service privé du cluster.
    • Clusters IBM Cloud Satellite : passez à l'étape Accès aux clusters sur Satellite.
  6. Si des utilisateurs de votre compte utilisent l'authentification multifactorielle (MFA) comme TOTP, veillez à l 'activer pour tous les utilisateurs au niveau du compte. Pour utiliser l'AFM, il faut l'activer au niveau du compte afin d'éviter les erreurs d'authentification.

Accès aux clusters via le noeud final de service cloud public

Si vous possédez un cluster Red Hat OpenShift avec un noeud final de service cloud public, vous pouvez vous y connecter à partir de la console ou de l'interface CLI.

Connexion au cluster à partir de la console

Vous pouvez accéder rapidement à votre cluster Red Hat OpenShift on IBM Cloud à partir de la console.

  1. Dans la console, cliquez sur le cluster auquel vous souhaitez accéder.
  2. Cliquez sur Console Web Red Hat OpenShift.
  3. Pour continuer à travailler dans la ligne de commande, cliquez sur votre nom de profil, tel que IAM#name@email.com, puis cliquez sur Copy Login Command. Selon la version de votre cluster, procédez de l'une des façons décrites ci-après pour vous connecter à votre cluster à partir de la ligne de commande.
    • Version 4 : cliquez sur Display Token, copiez la commande oc login et collez-la dans votre ligne de commande.

Pour des raisons de sécurité, vous devez d'abord vous déconnecter de la console IBM Cloud, puis vous déconnecter de la console Web Red Hat OpenShift avant de fermer votre navigateur. Vous devez exécuter les deux étapes dans l'ordre indiqué pour vous déconnecter de la console Web Red Hat OpenShift.

Étape suivante ?
Déploiement d'applications via la console.

Connexion au cluster à partir de l'interface CLI

Généralement, vous pouvez utiliser la console Web Red Hat OpenShift pour obtenir le jeton oc login pour accéder à votre cluster. Si vous ne pouvez pas ou ne souhaitez pas ouvrir la console Red Hat OpenShift, choisissez parmi les options suivantes pour vous connecter à votre cluster Red Hat OpenShift on IBM Cloud à l'aide de l'interface de ligne de commande.

Choisissez l'une des options décrites ci-après.

  • Connexion en tant qu'administrateur :
    1. Vérifiez que vous disposez du rôle d'accès à la plateforme Administrateur pour le cluster.
    2. Définissez votre contexte de ligne de commande pour le cluster et téléchargez les certificats et les fichiers de droits TLS pour l'administrateur.
      ibmcloud oc cluster config -c <cluster_name_or_ID> --admin
      
  • Connexion à l'aide d'une clé d'API : voir Utilisation d'une clé d'API pour se connecter à Red Hat OpenShift.
  • Connexion à l'aide d'un code d'accès IBM Cloud :
    1. Obtenez l'URL du maître de votre cluster dans la sortie de la commande suivante :
      ibmcloud oc cluster get -c <cluster_name_or_ID>
      
    2. Dans votre navigateur, ouvrez le site Web de code d'accès IBM Cloud IAM suivant :
      https://iam.cloud.ibm.com/identity/passcode
      
    3. Connectez-vous à l'aide de votre IBMid et copiez le code d'accès.
    4. Connectez-vous à votre cluster avec le code d'accès.
      oc login -u passcode -p <iam_passcode> --server=<master_URL>
      

Accès aux clusters via le noeud final de service cloud privé

Permettez aux utilisateurs autorisés du cluster d'accéder à votre cluster VPC ou classique via le noeud final de service de cloud privé.

Vous voulez configurer un réseau privé virtuel pour vous connecter à votre cluster à partir de votre machine locale ? Reportez-vous à la rubrique décrivant l'accès aux clusters privés à l'aide du réseau privé virtuel Wireguard.

Accès aux clusters de VPC via le noeud final de service cloud privé

Tous les clusters VPC disposent d'un point d'extrémité de service privé auquel les utilisateurs autorisés peuvent accéder. Comme il n'est disponible que sur le réseau privé, les utilisateurs doivent y accéder de l'une des manières suivantes :

  1. Pour les régions autres que ca-mon, in-che et in-mum, le point de terminaison du service privé pour les clusters VPC est accessible depuis n'importe quel endroit à l'intérieur de IBM Cloud, ou depuis un client qui utilise un VPN (ou similaire) pour se connecter à IBM Cloud.

    Vous pouvez vous connecter via VPN à IBM Cloud en utilisant l'une des options suivantes :

    vPN client à site
    Option la plus courante pour l'accès aux clusters, et assez simple à mettre en place. Pour des conseils de configuration, voir Accéder aux clusters VPC via la passerelle de points d'extrémité privés virtuels(Virtual Private Endpoint Gateway ).
    VPN de site à site
    Cette option est plus complexe à mettre en place, mais elle offre des fonctionnalités supplémentaires qui peuvent s'avérer utiles.

    Ces clusters sont accessibles via le point de terminaison du service privé URL pour le cluster qui ressemble à c<XXX>.private.<REGION>.containers.cloud.ibm.com:XXXXX. Utilisez cette commande pour obtenir un fichier kubeconfig qui utilise ce point de terminaison privé :

    Vous pouvez ensuite vous connecter au cluster en utilisant l'une des options ci-dessous. Une fois que vous l'avez fait, vous pouvez vérifier cette connexion en utilisant quelque chose comme ibmcloud oc get nodes

    • Connexion en tant qu'administrateur :

      1. Vérifiez que vous disposez du rôle d'accès à la plateforme Administrateur pour le cluster.
      2. Télécharger le kubeconfig pour l'administrateur.
        ibmcloud oc cluster config -c <cluster_name_or_ID> --admin --endpoint private
        
    • Connexion à l'aide d'une clé d'API : voir Utilisation d'une clé d'API pour se connecter à Red Hat OpenShift.

    • Connexion à l'aide d'un code d'accès IBM Cloud :

      1. Notez l'URL de noeud final de service privé de votre cluster dans la sortie de la commande suivante :
        ibmcloud oc cluster get -c <cluster_name_or_ID>
        
      2. Dans votre navigateur, ouvrez le site Web de code d'accès IBM Cloud IAM suivant :
        https://iam.cloud.ibm.com/identity/passcode
        
      3. Connectez-vous à l'aide de votre IBMid et copiez le code d'accès.
      4. Connectez-vous à votre cluster avec le code d'accès.
        oc login -u passcode -p <iam_passcode> --server=<private_service_endpoint_URL>
        
  2. Le point de terminaison du service privé pour tous les clusters VPC, dans toutes les régions, est accessible via la passerelle Virtual Private Endpoint (VPE) spécifique à ce cluster. Une passerelle VPE n'est disponible qu'à l'intérieur du VPC dans lequel elle a été créée ou par l'intermédiaire d'un VPN (ou similaire) dans ce VPC spécifique. Il existe deux options principales pour se connecter à un cluster de cette manière :

    • Une passerelle VPE pour le cluster est automatiquement créée dans le VPC dans lequel le cluster a été créé. Une option consiste donc à se connecter à partir d'un système à l'intérieur de ce VPC, ou à partir d'un système disposant d'une connexion VPN (ou similaire) à ce VPC.
    • Si vous souhaitez vous connecter à partir d'un autre VPC (peut-être même un VPC dans une autre région ou un autre compte), vous pouvez créer une nouvelle passerelle VPE dans cet autre VPC. Ensuite, à partir de cet autre VPC (y compris si vous avez un VPN dans cet autre VPC), vous pouvez accéder au maître du cluster via cette nouvelle passerelle VPE. La marche à suivre est décrite dans la section Création de passerelles d'extrémité privées virtuelles supplémentaires dans d'autres VPC et comptes ci-dessous.
    • Vous trouverez plus d'informations sur cette option, notamment sur la manière d'obtenir un fichier kubeconfig et des conseils sur la configuration d'un VPN, dans la section Accès aux clusters VPC via la passerelle de point de terminaison privé virtuel(Virtual Private Endpoint Gateway ) ci-dessous.

Accès aux clusters classiques via le noeud final de service cloud privé

Le maître Red Hat OpenShift est accessible via le noeud final de service cloud privé si les utilisateurs de cluster autorisés se trouvent dans votre réseau privé IBM Cloud ou s'ils sont connectés au réseau privé, par exemple, via une connexion VPN classique ou IBM Cloud Direct Link. Toutefois, la communication avec le maître Kubernetes via le noeud final de service cloud privé doit passer par la plage d'adresses IP 166.X.X.X, qui n'est pas routable à partir d'une connexion VPN classique, ou par IBM Cloud Direct Link. Vous pouvez exposer le noeud final de service cloud privé du maître pour vos utilisateurs de cluster en utilisant un équilibreur de charge de réseau (NLB) privé. L'équilibreur de charge de réseau privé expose le noeud final de service cloud privé du maître en tant que plage d'adresses IP 10.X.X.X interne auxquelles les utilisateurs peuvent accéder à l'aide de la connexion VPN ou IBM Cloud Direct Link. Si vous activez uniquement le noeud final de service cloud privé, vous pouvez utiliser la console Web Red Hat OpenShift pour créer l'équilibreur de charge de réseau (NLB) privé.

  1. Connectez-vous à votre cluster Red Hat OpenShift à l'aide du noeud final de service cloud public.

  2. Obtenez l'URL et le port de noeud final de service cloud privé pour votre cluster.

    ibmcloud oc cluster get -c <cluster_name_or_ID>
    

    Dans cet exemple de sortie, l'URL du noeud final de service privé (Private Service Endpoint URL) est https://c1.private.us-east.containers.cloud.ibm.com:31144.

    NAME:                           setest
    ID:                             b8dcc56743394fd19c9f3db7b990e5e3
    State:                          normal
    Status:                         healthy cluster
    Created:                        2019-04-25T16:03:34+0000
    Location:                       wdc04
    Pod Subnet:                     172.30.0.0/16
    Service Subnet:                 172.21.0.0/16
    Master URL:                     https://c1-e.us-east.containers.cloud.ibm.com:31144
    Public Service Endpoint URL:    https://c1-e.us-east.containers.cloud.ibm.com:31144
    Private Service Endpoint URL:   https://c1.private.us-east.containers.cloud.ibm.com:31144
    Master Location:                Washington D.C.
    ...
    
  3. Créez un fichier YAML nommé oc-api-via-nlb.yaml. Ce fichier YAML crée un service LoadBalancer privé et exposé le noeud final de service cloud privé via cet équilibreur de charge de réseau. Remplacez <private_service_endpoint_port> par le port que vous avez trouvé à l'étape précédente.

    apiVersion: v1
    kind: Service
    metadata:
      name: oc-api-via-nlb
      annotations:
        service.kubernetes.io/ibm-load-balancer-cloud-provider-ip-type: private
      namespace: default
    spec:
      type: LoadBalancer
      ports:
      - protocol: TCP
        port: <private_service_endpoint_port>
        targetPort: <private_service_endpoint_port>
    ---
    kind: Endpoints
    apiVersion: v1
    metadata:
      name: oc-api-via-nlb
      namespace: default
    subsets:
      - addresses:
          - ip: 172.20.0.1
        ports:
          - port: 2040
    
    
    
  4. Pour créer l'équilibreur de charge de réseau et le noeud final :

    1. Appliquez le fichier de configuration que vous avez créé précédemment.
      oc apply -f oc-api-via-nlb.yaml
      
    2. Vérifiez que l'équilibreur de charge de réseau oc-api-via-nlb a été créé. Dans le résultat, notez l'adresse 10.x.x.x EXTERNAL-IP. Cette adresse IP expose le noeud final de service cloud privé pour le maître cluster sur le port que vous avez spécifié dans votre fichier YAML.
      oc get svc -o wide
      
      Dans cet exemple de sortie, l'adresse IP pour le noeud final de service cloud privé du maître est 10.186.92.42.
      NAME                     TYPE           CLUSTER-IP       EXTERNAL-IP      PORT(S)          AGE   SELECTOR
      oc-api-via-nlb           LoadBalancer   172.21.150.118   10.186.92.42     443:32235/TCP    10m   <none>
      ...
      
  5. Sur les machines client où vous ou vos utilisateurs exécutez des commandes oc, ajoutez l'adresse IP d'équilibreur de charge de réseau et l'URL de noeud final de service cloud privé au fichier /etc/hosts. N'incluez aucun port dans l'adresse IP et l'URL et n'incluez pas https:// dans l'URL.

    • Pour les utilisateurs macOS et Linux :

      sudo nano /etc/hosts
      
    • Pour les utilisateurs Windows :

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

      En fonction des droits de votre machine locale, vous devrez peut-être exécuter Notepad en tant qu'administrateur pour éditer le fichier hosts.

      Exemple de texte à ajouter :

      10.186.92.42      c1.private.us-east.containers.cloud.ibm.com
      
  6. Vérifiez que vous êtes connecté au réseau privé via une connexion VPN ou IBM Cloud Direct Link.

  7. Connectez-vous à votre cluster en choisissant l'une des options suivantes :

    • Connexion en tant qu'administrateur :
      1. Vérifiez que vous disposez du rôle d'accès à la plateforme Administrateur pour le cluster.
      2. Définissez votre contexte de ligne de commande pour le cluster et téléchargez les certificats et les fichiers de droits TLS pour l'administrateur.
        ibmcloud oc cluster config -c <cluster_name_or_ID> --admin --endpoint private
        
    • Connexion à l'aide d'une clé d'API : voir Utilisation d'une clé d'API pour se connecter à Red Hat OpenShift.
    • Connexion à l'aide d'un code d'accès IBM Cloud :
      1. Notez l'URL de noeud final de service privé de votre cluster dans la sortie de la commande suivante :
        ibmcloud oc cluster get -c <cluster_name_or_ID>
        
      2. Dans votre navigateur, ouvrez le site Web de code d'accès IBM Cloud IAM suivant :
        https://iam.cloud.ibm.com/identity/passcode
        
      3. Connectez-vous à l'aide de votre IBMid et copiez le code d'accès.
      4. Connectez-vous à votre cluster avec le code d'accès.
        oc login -u passcode -p <iam_passcode> --server=<private_service_endpoint_URL>
        
  8. Assurez-vous que les commandes oc s'exécutent correctement avec votre cluster via le noeud final de service cloud privé en vérifiant la version.

    oc version
    

    Exemple de sortie

    Client Version: 4.5.0-0.okd-2020-09-04-180756
    Server Version: 4.5.35
    Kubernetes Version: v1.18.3+cdb0358
    

Accès aux clusters Red Hat OpenShift sur Satellite

Après avoir créé un cluster Red Hat OpenShift dans votre emplacement Satellite, vous pouvez commencer à l'utiliser en y accédant.

Lorsque vous accédez à votre cluster et que vous exécutez les commandes oc get nodes ou oc describe node <worker_node>, vous pouvez constater que les rôles master,worker ont été attribués aux nœuds de travail. Dans les clusters OpenShift Container Platform, les opérateurs utilisent le rôle maître comme nodeSelector pour que OCP puisse déployer des composants par défaut contrôlés par des opérateurs, tels que le registre interne, dans votre cluster. Les hôtes Satellite que vous avez affectés à votre cluster fonctionnent en tant que noeuds worker uniquement, et aucun processus de noeud maître, tel que le serveur d'API ou le planificateur Kubernetes, ne s'exécute sur vos noeuds worker.

Accès aux clusters via l'URL du service de cluster

Connectez-vous à votre cluster via son URL de service. Cette URL correspond à l'un de vos sous-domaines d'emplacement Satellite suivi d'un port de noeud, formaté comme suit https://p1iuql40jam23qiuxt833-q9err0fiffbsar61e78vv6e7ds8ne1tx-ce00.us-east.satellite.appdomain.cloud:30710.

Si vos hôtes d'emplacement disposent uniquement d'une connectivité au réseau privé ou si vous utilisez des hôtes Amazon Web Services, Google Cloud Platform et Microsoft Azure, vous devez être connecté au réseau privé de vos hôtes, par exemple via un accès VPN, pour vous connecter à votre cluster et accéder à la console Web Red Hat OpenShift. Sinon, si vos hôtes disposent d'une connectivité au réseau public, vous pouvez tester l'accès à votre cluster en modifiant les enregistrements DNS de votre cluster et de votre emplacement de manière à utiliser les adresses IP publiques de vos hôtes.

Vous pouvez accéder rapidement à votre cluster Red Hat OpenShift on IBM Cloud à partir de la console.

  1. Dans la console, cliquez sur le cluster auquel vous souhaitez accéder.
  2. Cliquez sur Console Web Red Hat OpenShift.
  3. Cliquez sur votre nom de profil, par exemple IAM#name@email.com, puis cliquez sur Copy Login Command.
  4. Cliquez sur Display Token et copiez la commande oc login.
  5. Collez la commande dans votre ligne de commande.

Pour des raisons de sécurité, vous devez d'abord vous déconnecter de la console IBM Cloud, puis vous déconnecter de la console Web Red Hat OpenShift avant de fermer votre navigateur. Vous devez exécuter les deux étapes dans l'ordre indiqué pour vous déconnecter de la console Web Red Hat OpenShift.

Si vous ne pouvez pas ou ne souhaitez pas ouvrir la console Red Hat OpenShift, choisissez parmi les options suivantes pour vous connecter à votre cluster Red Hat OpenShift on IBM Cloud à l'aide de l'interface de ligne de commande.

Accès aux clusters depuis le réseau public

Si vos hôtes disposent d'une connectivité au réseau public et que vous souhaitez accéder à votre cluster à partir de votre machine locale sans être connecté au réseau privé de vos hôtes, vous pouvez éventuellement mettre à jour le sous-domaine de votre cluster et l'enregistrement DNS de votre emplacement de manière à utiliser les adresses IP publiques de vos hôtes.

Pour la plupart des configurations d'emplacement, les adresses IP privées de vos hôtes sont enregistrées pour l'enregistrement DNS de l'emplacement de sorte que vous ne puissiez accéder à votre cluster que si vous êtes connecté au réseau privé de votre fournisseur de cloud.

Par exemple, si vous utilisez des hôtes Amazon Web Services, Google Cloud Platform ou Microsoft Azure ou si l'interface réseau par défaut de vos hôtes est privée, l'enregistrement DNS de votre emplacement est accessible uniquement sur le réseau privé.

Pour exécuter des commandes kubectl ou oc sur votre cluster ou accéder à la console Web Red Hat OpenShift, vous devez être connecté au réseau privé de vos hôtes, par exemple, via un accès VPN. Toutefois, si vous souhaitez accéder à votre cluster à partir du réseau public, par exemple, pour tester l'accès à votre cluster à partir de votre machine locale, vous pouvez modifier les enregistrements DNS de vos sous-domaines d'emplacement et de cluster de manière utiliser à la place les adresses IP publiques de vos hôtes.

La mise à disposition de vos sous-domaines d'emplacement et de cluster en dehors du réseau privé de vos hôtes pour vos utilisateurs de cluster autorisés n'est pas recommandée pour les charges de travail de niveau production.

  1. Passez en revue les sous-domaines d'emplacement et vérifiez les enregistrements des adresses IP privées des hôtes qui sont enregistrés dans le DNS pour le sous-domaine.
    ibmcloud sat location dns ls --location <location_name_or_ID>
    
  2. Extrayez les adresses IP publiques correspondantes de vos hôtes.
    ibmcloud sat host ls --location <location_name_or_ID>
    
  3. Mettez à jour l'enregistrement DNS du sous-domaine d'emplacement avec les adresses IP publiques de chaque hôte du plan de contrôle.
    ibmcloud sat location dns register --location <location_name_or_ID> --ip <host_IP> --ip <host_IP> --ip <host_IP>
    
  4. Vérifiez que les adresses IP publiques sont enregistrées avec votre enregistrement DNS d'emplacement.
    ibmcloud sat location dns ls --location <location_name_or_ID>
    
  5. Récupère le Nom d'hôte pour votre cluster au format <service_name>-<project>.<cluster_name>-<random_hash>-0000.upi.containers.appdomain.cloud et notez le IP (s) privé qui a été automatiquement enregistré.
    ibmcloud oc nlb-dns ls --cluster <cluster_name_or_ID>
    
  6. Ajoutez les adresses IP publiques des hôtes qui sont affectés en tant que noeuds worker à ce cluster dans le sous-domaine de votre cluster. Répétez cette commande pour l'adresse IP publique de chaque hôte.
    ibmcloud oc nlb-dns add --ip <public_IP> --cluster <cluster_name_or_ID> --nlb-host <hostname>
    
  7. Retirez les adresses IP privées du sous-domaine de votre cluster. Répétez cette commande pour toutes les adresses IP privées que vous avez récupérées précédemment.
    ibmcloud oc nlb-dns rm classic --ip <private_IP> --cluster <cluster_name_or_ID> --nlb-host <hostname>
    
  8. Vérifiez que les adresses IP publiques sont enregistrées auprès du sous-domaine de votre cluster.
    ibmcloud oc nlb-dns ls --cluster <cluster_name_or_ID>
    

Accès aux clusters de VPC via la passerelle de noeud final privé virtuel

Virtual Private Endpoint Gateway est créé automatiquement pour les clusters de VPC. Le Kubernetes maître est accessible via cette passerelle Virtual Private Endpoint si les utilisateurs autorisés du cluster sont connectés au même VPC que celui où le cluster est déployé, par exemple via un IBM Cloud VPC VPN. Dans ce cas, le kubeconfig est configuré avec le Virtual Private Endpoint (VPE) URL qui est un nom DNS privé et ne peut être résolu que par le IBM Cloud VPC service DNS privé. Les adresses du IBM Cloud VPC serveur DNS privé sont 161.26.0.7 et 161.26.0.8.

Pour les clusters qui exécutent la version 4.13: si vous avez activé uniquement le point de terminaison du service de cloud privé lors de la création du cluster, le point de terminaison privé virtuel de votre VPC est utilisé par défaut pour accéder Red Hat OpenShift aux composants tels que la console Red Hat OpenShift Web ou OperatorHub. Vous devez être connecté au réseau VPC privé (par exemple, via une connexion VPN) pour accéder à ces composants ou exécuter des commandes kubectl sur votre cluster. Notez que pour accéder à la console via VPE, vous devez pouvoir accéder à cloud.ibm.com, qui requiert une connectivité publique.

  1. Configurez votre VPN IBM Cloud VPC et connectez-vous à votre VPC via VPN.

    1. Configurez un VPN client-à-site ou site-à-site sur votre VPC. Par exemple, vous pouvez choisir de configurer une connexion client à site avec un client VPN.
    2. Pour les configurations de réseau privé virtuel client-site, vous devez spécifier les adresses de service DNS privé IBM Cloud VPC lorsque vous mettez à disposition le serveur VPN comme indiqué dans les remarques. Vous devez également créer une route VPN après la mise à disposition du serveur VPN, avec la destination 161.26.0.0/16 et l'action translate.
    3. Pour les configurations de réseau privé virtuel de site à site, vous devez suivre le document Accès aux noeuds finaux de service via le guide VPN et configurer les adresses de service DNS privé IBM Cloud VPC.
    4. Vérifiez que vous êtes connecté au VPC via votre connexion VPN IBM Cloud VPC.
  2. Pour vous connecter à votre cluster, choisissez l'une des options suivantes :

    • Connexion en tant qu'administrateur :
      1. Vérifiez que vous disposez du rôle d'accès à la plateforme Administrateur pour le cluster.
      2. Définissez votre contexte de ligne de commande pour le cluster et téléchargez les certificats et les fichiers de droits TLS pour l'administrateur.
        ibmcloud oc cluster config -c <cluster_name_or_ID> --admin --endpoint vpe
        
    • Connexion à l'aide d'une clé d'API : voir Utilisation d'une clé d'API pour se connecter à Red Hat OpenShift.
    • Connexion à l'aide d'un code d'accès IBM Cloud :
      1. Obtenir l'adresse VPE et le maître URL dans la sortie de la commande suivante.
        ibmcloud oc cluster get -c <cluster_name_or_ID>
        
      2. Dans votre navigateur, ouvrez le site Web de code d'accès IBM Cloud IAM suivant :
        https://iam.cloud.ibm.com/identity/passcode
        
      3. Connectez-vous à l'aide de votre IBMid et copiez le code d'accès.
      4. Connectez-vous à votre cluster avec le code d'accès.
        oc login -u passcode -p <iam_passcode> --server=https://<VPE_URL>:<port_from_the_master_URL>
        
        La procédure de connexion notifie ce certificat signé par une autorité inconnue car il s'agit d'un certificat autosigné généré par IBM.
  3. Assurez-vous que les commandes oc s'exécutent correctement avec votre cluster via le noeud final de service cloud privé en vérifiant la version.

    oc version
    

    Exemple de sortie

    Client Version: 4.5.0-0.okd-2020-09-04-180756
    Server Version: 4.5.35
    Kubernetes Version: v1.18.3+cdb0358
    

Création de passerelles Virtual Private Endpoint supplémentaires dans d'autres VPC et comptes

En plus de la passerelle VPE créée pour une grappe dans son VPC, vous pouvez créer des passerelles VPE supplémentaires pour cette grappe afin de permettre l'accès au réseau privé à partir d'autres VPC, régions et comptes.

  • Les passerelles VPE supplémentaires doivent être créées à l'aide de la CLI ou de l'API. Après leur création, ils peuvent être gérés dans l'interface web.

  • Pour les passerelles VPE inter-comptes, vous devez d'abord créer une autorisation dans le compte cible. Pour plus d'informations, voir Création d'une autorisation de service pour la VPE inter-comptes dans la console.

  • Aucune passerelle de transit ou routage spécial n'est nécessaire. La passerelle VPE gère le routage vers le cluster cible.

Les étapes suivantes vous montrent comment créer une passerelle VPE inter-comptes.

  1. Obtenir les informations nécessaires auprès du cluster cible.

    1. Définissez ibmcloud target pour le compte, la région et le groupe de ressources cibles.

    2. Obtenir les informations sur la passerelle VPE existante.

      ibmcloud is endpoint-gateway iks-TARGET_CLUSTER_ID
      
    3. Notez le CRN cible (format : crn:v1:bluemix:public:containers-kubernetes:REGION:a/TARGET_ACCOUNT:TARGET_CLUSTER_ID::).

    4. Notez les noms d'hôtes des points de service.

  2. Créez la nouvelle passerelle VPE dans le compte source.

    1. Définissez ibmcloud target pour le compte source, la région et le groupe de ressources.

    2. Vérifiez que le VPC existe dans ce compte.

      ibmcloud is vpcs
      
    3. Créez la passerelle 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
      Le nom du VPC de l'étape précédente.
      TARGET_CRN
      Le CRN de la passerelle VPE du cluster cible.
      --name
      Nom de la passerelle VPE.
      SOURCE_ACCOUNT_RESOURCE_GROUP
      Le nom du groupe de ressources dans le compte source.
    4. Si vous obtenez une erreur "Could not find service", vérifiez que le CRN cible est correct. Si c'est le cas, vous devez créer l'autorisation dans le compte cible. Voir Création d'une autorisation de service pour la VPE inter-comptes dans la console.

  3. Ajoutez des IP réservées à votre passerelle VPE.

    Vous devez ajouter au moins une IP réservée. Les IP réservées proviennent des sous-réseaux de votre VPC source (une par zone au maximum) et sont ajoutées aux entrées DNS privées du VPC source.

    1. Créer une IP réservée pour chaque zone.

      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. En option : Ajouter ou modifier des groupes de sécurité. Par défaut, seul le groupe de sécurité par défaut du VPC source est attaché. Pour les passerelles VPE, les groupes de sécurité ne protègent que le trafic entrant. Assurez-vous que les groupes de sécurité autorisent tout le trafic entrant nécessaire de la part des clients.

  4. Testez la connexion.

    1. À partir d'un VSI dans le VPC source, utilisez le même nom d'hôte que la passerelle VPE d'origine. Vous le trouverez dans la liste Service Endpoints ou dans la propriété VPE Gateway à l'adresse ibmcloud ks cluster get -c CLUSTER_NAME.

    2. Vérifiez que la connexion fonctionne.

      curl -k https://CLUSTERID...:XXXXX/version
      
    3. Si la connexion échoue, vérifiez les points suivants :

      • Les groupes de sécurité sur les passerelles VSI et VPE autorisent le trafic nécessaire
      • L'ACL VPC autorise le trafic
      • Les règles CBR (Context Based Restriction) sur le cluster cible autorisent le trafic privé depuis le VPC source (ajoutez les trois "Cloud Service Endpoint source addresses" de votre VPC source à la règle CBR privée)

Exemple : Commandes de comptes cibles

L'exemple suivant présente les commandes exécutées dans le compte cible pour recueillir des informations sur le cluster et sa passerelle VPE.

  1. Vérifiez que vous ciblez le bon compte.

    ibmcloud target
    

    Exemple de sortie

    API endpoint:     https://cloud.ibm.com
    Region:           us-east
    User:             user2@example.com
    Account:          Target Account (9f8e7d6c5b4a321fedcba98765432222) <-> 2222222
    Resource group:   default
    
  2. Dressez la liste de vos clusters.

    ibmcloud ks clusters
    

    Exemple de sortie

    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. Obtenir les détails de la passerelle VPE. Notez le CRN cible et les points de terminaison du service.

    ibmcloud is endpoint-gateway iks-c8m5n3p2q4x6z1w7y077
    

    Exemple de sortie

    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. Facultatif : Obtenez les détails du cluster pour voir la passerelle VPE URL.

    ibmcloud ks cluster get -c c8m5n3p2q4x6z1w7y077
    

    Exemple de sortie

    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
    

Exemple : Commandes du compte source

L'exemple suivant montre les commandes exécutées dans le compte source pour créer une passerelle VPE qui se connecte au cluster dans le compte cible.

  1. Vérifiez que vous ciblez le bon compte source.

    ibmcloud target
    

    Exemple de sortie

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

    ibmcloud is vpcs
    

    Exemple de sortie

    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. Créez la passerelle VPE en utilisant le CRN cible du compte cible.

    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
    

    Exemple de sortie

    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. Dressez la liste des sous-réseaux afin d'identifier ceux à utiliser pour les IP réservées.

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

    Exemple de sortie

    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. Créer une IP réservée dans la première zone et l'attacher à la passerelle 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
    

    Exemple de sortie

    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. Vérifiez que l'IP réservée a été ajoutée.

    ibmcloud is eg new-iks-c8m5n3p2q4x6z1w7y077
    

    Exemple de sortie

    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. Créez une IP réservée dans la deuxième zone et attachez-la à la passerelle 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
    

    Exemple de sortie

    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. Créer une IP réservée dans la troisième zone et l'attacher à la passerelle 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
    

    Exemple de sortie

    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. Vérifiez que toutes les IP réservées ont été ajoutées.

    ibmcloud is eg new-iks-c8m5n3p2q4x6z1w7y077
    

    Exemple de sortie

    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. Testez la connexion à partir d'un VSI dans le VPC source.

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

    Exemple de sortie

    {
      "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. Vérifiez que le nom d'hôte se résout en une IP réservée.

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

    Exemple de sortie

    10.240.65.5
    

Accès aux clusters à partir d'outils d'automatisation à l'aide d'une clé d'API

Red Hat OpenShift on IBM Cloud est intégré à IBM Cloud Identity and Access Management (IAM). Avec IAM, vous pouvez authentifier des utilisateurs et des services en utilisant leurs identités IAM et autoriser des actions avec des rôles et des règles d'accès. Lorsque vous vous authentifiez en tant qu'utilisateur via la console Red Hat OpenShift, votre identité IAM est utilisée pour générer un jeton de connexion Red Hat OpenShift que vous pouvez utiliser pour vous connecter à la ligne de commande. Vous pouvez automatiser la connexion à votre cluster en créant une clé d'API IAM ou un ID de service à utiliser pour la commande oc login.

Utilisation d'une clé d'API pour se connecter aux clusters

Vous pouvez créer une clé API IAM IBM Cloud et l'utiliser pour vous connecter à un cluster Red Hat OpenShift. Les clés d'API vous permettent d'utiliser les données d'identification d'un utilisateur ou d'un compte partagé pour accéder à un cluster, au lieu de vous connecter individuellement. Vous pouvez également créer une clé d'API pour un ID de service. Pour plus d'informations, voir Gestion des clés d'API.

  1. Créez une clé d'API IBM Cloud. Sauvegardez votre clé d'API dans un emplacement sécurisé. Vous ne pouvez plus récupérer la clé API. Si vous souhaitez exporter le résultat dans un fichier sur votre machine locale, incluez l'option --file <path>/<file_name>.

    ibmcloud iam api-key-create <name>
    
  2. Configurez votre cluster pour ajouter l'utilisateur de la clé d'API à vos règles RBAC de cluster et pour définir votre contexte de session sur votre serveur de cluster.

    1. Connectez-vous à IBM Cloud à l'aide des données d'identification de clé d'API.
      ibmcloud login --apikey <API_key>
      
    2. Téléchargez et ajoutez le fichier de configuration kubeconfig pour votre cluster à votre kubeconfig existant dans ~/.kube/config ou le dernier fichier dans la variable d'environnement KUBECONFIG. Remarque: si vous avez activé le point d'extrémité du service de cloud privé et que vous souhaitez l'utiliser pour le contexte de cluster, incluez l'option --endpoint private. Pour utiliser le noeud final de service cloud privé afin de vous connecter au cluster, vous devez vous trouver dans votre réseau privé IBM Cloud ou être connecté au réseau privé via une connexion VPN VPC, ou pour une infrastructure classique, via une connexion VPN classique ou IBM Cloud Direct Link.
      ibmcloud oc cluster config -c <cluster_name_or_ID> [--endpoint private]
      
  3. Échangez votre clé d'API IAM IBM Cloud contre un jeton d'accès Red Hat OpenShift. Vous pouvez vous connecter à partir de l'interface de ligne de commande ou de l'API. Pour plus d'informations, voir la documentationRed Hat OpenShift.

    Connectez-vous à l'aide de l'interface de ligne de commande ocCLI : Connectez-vous à votre cluster à l'aide de la oc logincommande. Le nom d'utilisateur (-u) est apikey et le mot de passe (-p) est votre valeur de clé d'API IBM Cloud IAM. Pour utiliser le point de terminaison du service de cloud privé, incluez l'option --server=<private_service_endpoint>.

    oc login -u apikey -p <API_key> [--server=<private_service_endpoint>]
    

    Connectez-vous en exécutant des demandes d'API Red Hat OpenShift directement sur votre cluster : Connectez-vous à votre cluster avec l'API, par exemple via une requête curl.

    1. Obtenez la valeur Master URL de votre cluster.

      ibmcloud oc cluster get -c <cluster_name_or_ID>
      

      Exemple de sortie

      NAME:                           mycluster
      ID:                             1234567
      State:                          normal
      Created:                        2020-01-22T19:22:16+0000
      Location:                       dal10
      Master URL:                     https://c100-e.<region>.containers.cloud.ibm.com:<port>
      ...
      
      
    2. Obtenez le noeud final de jeton du serveur Red Hat OpenShift oauth.

      curl <master_URL>/.well-known/oauth-authorization-server | jq -r .token_endpoint
      

      Exemple de sortie

      <token_endpoint>/oauth/token
      

      : écran}

    3. Connectez-vous au cluster avec le noeud final que vous avez récupéré précédemment. Remplacer <URL> par <token_endpoint> du serveur oauth.

      Exemple de requête curl :

      curl -u 'apikey:<API_key>' -H "X-CSRF-Token: a" '<URL>/oauth/authorize?client_id=openshift-challenging-client&response_type=token' -vvv
      
    4. Dans la réponse Location, recherchez le jeton d'accès (access_token), comme dans l'exemple suivant :

      < HTTP/1.1 302 Found
      < Cache-Control: no-cache, no-store, max-age=0, must-revalidate
      < Cache-Control: no-cache, no-store, max-age=0, must-revalidate
      < Expires: 0
      < Expires: Fri, 01 Jan 1990 00:00:00 GMT
      < Location: <token_endpoint>/oauth/token/implicit#access_token=<access_token>&expires_in=86400&scope=user%3Afull&token_type=Bearer
      ...
      
    5. Utilisez l'URL du maître du cluster et le jeton d'accès pour accéder à l'API Red Hat OpenShift, par exemple pour afficher la liste de tous les pods du cluster. Pour plus d'informations, voir la documentation de l'API Red Hat OpenShift.

      Exemple de requête curl :

      curl -H "Authorization: Bearer <access_token>" '<master_URL>/api/v1/pods'
      

Utilisation d'un ID de service pour se connecter aux clusters

Vous pouvez créer un identifiant de service IBM Cloud IAM, créer une clé API pour l'identifiant de service, puis utiliser la clé API pour vous connecter à un cluster Red Hat OpenShift. Vous pouvez utiliser des ID de service de sorte que les applications hébergées dans d'autres clusters ou clouds puissent accéder aux services de votre cluster. Etant donné que les ID de service ne sont pas liés à un utilisateur spécifique, vos applications peuvent s'authentifier si des utilisateurs individuels quittent votre compte. Pour plus d'informations, voir Création et utilisation des ID de service.

  1. Créez un ID de service IBM Cloud IAM pour le cluster qui est utilisé pour les règles IAM et les données d'identification de clé d'API. Prenez soin d'indiquer une description pour l'ID de service, qui vous aidera à retrouver cet ID par la suite, par exemple en incluant le nom du cluster.

    ibmcloud iam service-id-create <cluster_name>-id --description "Service ID for Red Hat OpenShift on IBM Cloud cluster <cluster_name>"
    

    Exemple de sortie

    NAME          <cluster_name>-id
    Description   Service ID for Red Hat OpenShift on IBM Cloud cluster <cluster_name>
    CRN           crn:v1:bluemix:public:iam-identity::a/1aa111aa1a11111aaa1a1111aa1aa111::serviceid:ServiceId-bbb2b2b2-2bb2-2222-b222-b2b2b2222b22
    Bound To      crn:v1:bluemix:public:::a/1aa111aa1a11111aaa1a1111aa1aa111:::
    Version       1-c3c333333333ccccc33333c33cc3cc33
    Locked        false
    UUID          ServiceId-bbb2b2b2-2bb2-2222-b222-b2b2b2222b22
    
  2. Créez une règle IBM Cloud IAM personnalisée pour l'ID de service de votre cluster qui autorise l'accès à Red Hat OpenShift on IBM Cloud.

    ibmcloud iam service-policy-create <cluster_service_ID> --service-name containers-kubernetes --roles <service_access_role> --service-instance <cluster_ID>
    
    Description des composantes de cette commande
    Paramètre Description
    <cluster_service_ID> Obligatoire. Entrez l'ID de service que vous avez créé précédemment pour votre cluster Red Hat OpenShift.
    --service-name containers-kubernetes Obligatoire. Entrez containers-kubernetes de sorte que la clé IAM s'applique aux clusters Red Hat OpenShift on IBM Cloud.
    --roles <service_access_role> Obligatoire. Entrez le rôle d'accès que doit posséder l'ID de service sur votre cluster Red Hat OpenShift. Rôles d'accès à la plateforme autorise les activités de gestion des clusters, telles que la création de nœuds de travail. Rôles d'accès au service correspond aux rôles RBAC qui permettent aux activités de gestion Red Hat OpenShift dans le cluster, telles que les ressources Kubernetes telles que les gousses et les espaces de nom. Pour plusieurs rôle, indiquez-les dans une liste en les séparant par une virgule. Les valeurs possibles sont Administrator, Operator, Editoret Viewer (rôles d'accès aux plateformes) et Reader, Writeret Manager (rôles d'accès au service).
    --service-instance <cluster_ID> Pour limiter la règle à un cluster en particulier, entrez l'ID du cluster. Pour obtenir votre ID de cluster, exécutez la commande ibmcloud oc clusters. Si vous n'incluez pas l'instance de service, la règle d'accès accorde à l'ID service l'accès à tous vos clusters, Kubernetes et Red Hat OpenShift. Vous pouvez également étendre la portée de la règle d'accès à une région (--region) ou à un groupe de ressources (--resource-group-name).
  3. Créez une clé d'API pour l'ID de service. Nommez la clé de l'API similaire à votre ID de service et incluez l'ID de service que vous avez créé précédemment,<cluster_name>-id. Veillez à indiquer une description pour la clé d'API pour vous aider à la retrouver par la suite. Sauvegardez votre clé d'API dans un emplacement sécurisé. Vous ne pouvez plus récupérer la clé API. Si vous souhaitez exporter le résultat dans un fichier sur votre machine locale, incluez l'option --file <path>/<file_name>.

    ibmcloud iam service-api-key-create <cluster_name>-key <service_ID> --description "API key for service ID <service_ID> in Red Hat OpenShift cluster <cluster_name>"
    

    Exemple de sortie

    Please preserve the API key! It can't be retrieved after it's created.
    
    Name          <cluster_name>-key
    Description   API key for service ID <service_ID> in Red Hat OpenShift cluster <cluster_name>
    Bound To      crn:v1:bluemix:public:iam-identity::a/1bb222bb2b33333ddd3d3333ee4ee444::serviceid:ServiceId-ff55555f-5fff-6666-g6g6-777777h7h7hh
    Created At    2019-02-01T19:06+0000
    API Key       i-8i88ii8jjjj9jjj99kkkkkkkkk_k9-llllll11mmm1
    Locked        false
    UUID          ApiKey-222nn2n2-o3o3-3o3o-4p44-oo444o44o4o4
    
  4. Configurez votre cluster pour ajouter l'utilisateur d'ID de service à vos règles RBAC de cluster et pour définir votre contexte de session sur votre serveur de cluster.

    1. Connectez-vous à IBM Cloud à l'aide des données d'identification de clé d'API d'ID de service.

      ibmcloud login --apikey <API_key>
      
    2. Téléchargez et ajoutez le fichier de configuration kubeconfig pour votre cluster à votre kubeconfig existant dans ~/.kube/config ou le dernier fichier dans la variable d'environnement KUBECONFIG. Remarque: si vous avez activé le point d'extrémité du service de cloud privé et que vous souhaitez l'utiliser pour le contexte de cluster, incluez l'option --endpoint private. Pour utiliser le noeud final de service cloud privé afin de vous connecter au cluster, vous devez vous trouver dans votre réseau privé IBM Cloud ou être connecté au réseau privé via une connexion VPN VPC, ou pour une infrastructure classique, via une connexion VPN classique ou IBM Cloud Direct Link.

      ibmcloud oc cluster config -c <cluster_name_or_ID> [--endpoint private]
      
  5. Utilisez la clé d'API d'ID de service pour vous connecter à votre cluster Red Hat OpenShift. Le nom d'utilisateur (-u) est apikey et le mot de passe (-p) est votre valeur de clé d'API. Pour utiliser le point de terminaison du service de cloud privé, incluez l'option --server=<private_service_endpoint>.

    oc login -u apikey -p <API_key> [--server=<private_service_endpoint>]
    
  6. Vérifiez que l'ID de service peut effectuer les actions que vous avez autorisées.

    Exemple : si vous avez affecté un rôle d'accès au service Reader, l'ID de service peut répertorier les pods de votre projet Red Hat OpenShift.

    oc get pods
    

    Exemple : si vous avez affecté un rôle d'accès au service Manager, l'ID de service peut répertorier les utilisateurs de votre cluster Red Hat OpenShift. L'ID de votre ID de service IAM se trouve dans la sortie IDENTITIES. Les autres utilisateurs individuels peuvent être identifiés par leur adresse e-mail et leur IBMid.

    oc get users
    

    Exemple de sortie

    NAME                           UID                                    FULL NAME   IDENTITIES
    IAM#                           dd44ddddd-d4dd-44d4-4d44-4d44d444d444              IAM:iam-ServiceId-bbb2b2b2-2bb2-2222-b222-b2b2b2222b22
    IAM#first.last@email.com       55555ee5-e555-55e5-e5e5-555555ee55ee               IAM:IBMid-666666FFF6
    

Protéger les clusters en utilisant des restrictions basées sur le contexte

Les listes d'autorisation des points d'extrémité des services privés ne sont plus prises en charge. Migrer dès que possible des listes d'autorisation des points de service privés vers des restrictions basées sur le contexte. Pour connaître les étapes spécifiques de la migration, voir Migration d'une liste d'autorisations de points d'extrémité de services privés vers des restrictions basées sur le contexte(CBR).

Contrôlez l'accès à vos points d'extrémité de services publics et privés à l'aide de règles de restriction basées sur le contexte (CBR).

Après avoir autorisé les utilisateurs à accéder à votre cluster via IBM Cloud IAM, vous pouvez ajouter une deuxième couche de sécurité en créant des règles CBR pour les points de terminaison des services publics et privés de votre cluster. Seules les demandes autorisées adressées au maître de la grappe et provenant de sous-réseaux figurant dans les règles CBR seront autorisées.

Si vous souhaitez autoriser les requêtes provenant d'un VPC différent de celui dans lequel se trouve votre cluster, vous devez inclure l'adresse IP du point de terminaison du service en nuage pour ce VPC dans les règles CBR.

Par exemple, pour accéder au noeud final de service cloud privé de votre cluster, vous devez vous connecter à votre réseau classique IBM Cloud ou à votre réseau VPC via un VPN ou IBM Cloud Direct Link. Vous pouvez spécifier uniquement le sous-réseau pour le tunnel VPN ou Direct Link dans vos règles CBR afin que seuls les utilisateurs autorisés de votre organisation puissent accéder au point final du service de cloud privé à partir de ce sous-réseau.

Les règles CBR publiques (si votre cluster dispose d'un point de terminaison de service public) peuvent également contribuer à empêcher les utilisateurs d'accéder à votre cluster après que leur autorisation a été révoquée. Lorsqu'un utilisateur quitte votre organisation, vous retirez ses droits IBM Cloud IAM qui lui permettent d'accéder au cluster. Cependant, l'utilisateur peut avoir copié le fichier admin kubeconfig pour une grappe, ce qui lui donne accès à cette grappe. Si vous disposez d'une règle CBR publique qui n'autorise l'accès à vos maîtres de cluster qu'à partir de sous-réseaux publics connus dont votre organisation est propriétaire, la tentative d'accès de l'utilisateur à partir d'une autre adresse IP publique sera bloquée.

Les sous-réseaux des nœuds de travail sont automatiquement ajoutés et supprimés de l'implémentation CBR du backend (mais pas des règles/zones CBR), de sorte que les nœuds de travail peuvent toujours accéder au maître du cluster et que les utilisateurs n'ont pas besoin de les ajouter spécifiquement à leurs propres règles CBR.

Pour en savoir plus sur la protection de votre cluster avec des règles CBR, voir Protection des ressources du cluster avec des restrictions basées sur le contexte et Exemple de scénarios de restrictions basées sur le contexte