Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Installation avec la mise en réseau gérée par l’utilisateur

Utilisez cette procédure pour mettre en place un cluster avec un réseau géré par l’utilisateur. La mise en réseau gérée par l’utilisateur désigne un déploiement dans lequel vous fournissez explicitement un équilibreur de charge externe pour votre installation.

La figure 1 illustre un cluster de 3 nœuds de plan de contrôle et 2 nœuds travailleurs s’exécutant sur des serveurs bare metal ou des machines virtuelles dans une configuration de mise en réseau gérée par l’utilisateur qui inclut un équilibreur de charge externe. Toutes les communications entre les nœuds du cluster et entre les nœuds et les sites externes ont lieu sur le seul réseau virtuel à structure 172.16.0.0/24.

Figure 1 : Cluster Contrail OpenShift sur des serveurs bare metal (ou VM) avec mise en réseau Contrail OpenShift Cluster on Bare Metal Servers (or VMs) with User-Managed Networking gérée par l’utilisateur

Une autre machine joue le rôle de client d’installation assistée. Le client Installer assisté utilise des commandes curl pour émettre des appels d’API vers le service d’installation assistée afin de créer le cluster. Dans l’exemple de cette procédure, nous utilisons l’ordinateur client d’installation assistée pour héberger un serveur DNS/DHCP pour le sous-réseau.

L’administrateur local est connecté à un réseau distinct accessible via une passerelle. Cela est typique de nombreuses installations où l’administrateur local gère la structure et le cluster à partir du réseau LOCAL d’entreprise. Dans les procédures qui suivent, nous faisons référence à la station d’administrateur local comme votre ordinateur local.

Note:

La structure du centre de données relie tous les nœuds, illustré dans l’exemple sous la forme d’un sous-réseau unique. Dans les installations réelles, la structure du centre de données est un réseau de commutateurs « spine-and-leaf » qui assurent la connectivité physique du cluster.

Dans un centre de données géré par Apstra, vous spécifiez cette connectivité via les réseaux virtuels de superposition que vous créez sur l’ensemble des commutateurs de structure sous-jacents.

Cette procédure utilise le service d’installation assistée hébergé par Red Hat et couvre le cas d’utilisation plus courant de liaison précoce où vous enregistrez le cluster avant de mettre en place les hôtes.

  1. Connectez-vous à l’ordinateur client du programme d’installation assisté. L’installation assistée est l’endroit où vous émetz des appels d’API d’installation assistée au service d’installation assistée.
  2. Préparez le déploiement en définissant les variables d'environnement que vous utiliserez lors des étapes ultérieures.
    1. Créez une clé SSH que vous utiliserez pour accéder aux nœuds de votre cluster. Enregistrez la clé sur une variable d’environnement.
      Dans cet exemple, nous avons stocké la clé SSH dans son emplacement par défaut ~/.ssh/id_rsa.pub
    2. Téléchargez l’image pull secret de votre compte Red Hat sur votre ordinateur local. Le secret pull permet à votre installation d’accéder aux services et aux conteneurs qui servent des images de conteneurs pour les composants OpenShift.

      Si vous utilisez le programme d'installation assisté hébergé Red Hat, vous pouvez télécharger le fichier pull secret (pull secret) à partir de la page https://console.redhat.com/openshift/downloads . Copiez le fichier pull secret sur la machine cliente du programme d’installation assistée. Dans cet exemple, nous stockons l’pull-secret dans un fichier appelé pull-secret.txt.

      Supprimez tout espace blanc, convertissez le contenu au format chaîne JSON et stockez-le dans une variable d’environnement, comme suit :

    3. Copiez le jeton d’accès hors ligne à partir de votre compte Red Hat. Le jeton API OpenShift Cluster Manager vous permet (sur la machine cliente d’installation assistée) d’interagir avec le service d’API d’installation assistée hébergé par Red Hat.
      Le jeton est une chaîne que vous pouvez copier et coller sur une variable d’environnement local. Si vous utilisez le programme d'installation assisté hébergé Red Hat, vous pouvez copier le jeton API à partir de https://console.redhat.com/openshift/downloads.
    4. Générez (actualisez) le jeton à partir du OFFLINE_ACCESS_TOKEN. Vous utiliserez ce jeton généré à chaque fois que vous émettreez des commandes d’API.
      Note:

      Ce jeton expire régulièrement. Lorsque ce jeton expire, vous obtiendrez une réponse HTTP 4xx dès que vous émettreez une commande d’API. Actualisez le jeton lorsqu’il expire ou actualisez le jeton régulièrement avant son expiration. Il n'y a aucun mal à actualiser le jeton lorsqu'il n'a pas expiré.

    5. Configurez les autres variables d’environnement.
      Tableau 1 répertorie toutes les variables d’environnement que vous devez définir dans cette procédure, y compris celles décrites dans les étapes précédentes.
      Tableau 1 : Variables d’environnement
      Exemple description variable
      CLUSTER_SSHKEY La clé ssh (publique) que vous avez générée. Cette clé sera installée sur tous les nœuds du cluster.
      PULL_SECRET L’image pull secret que vous avez téléchargée, dénudée et convertie au format chaîne JSON.
      OFFLINE_ACCESS_TOKEN Jeton API OpenShift Cluster Manager que vous avez copié.
      JETON Le jeton que vous avez généré (actualisé) à partir du OFFLINE_ACCESS_TOKEN.
      CLUSTER_NAME Nom que vous souhaitez appeler le cluster. Il s’agit du nom qui apparaîtra dans l’interface utilisateur de la console cloud hybride de Red Hat.
      Note:

      Ce nom doit être en minuscules.

      mycluster
      CLUSTER_DOMAIN Domaine de base que vous souhaitez attribuer au cluster. Des noms seront attribués aux objets du cluster dans ce domaine. contrail.lan
      CLUSTER_NET Le réseau de cluster overlay. Des adresses IP sont attribuées aux pods sur ce réseau. 10.128.0.0/14
      CLUSTER_SVC_NET Le réseau de services de superposition. Des adresses IP sont attribuées aux services sur ce réseau. 172.31.0.0/16
      CLUSTER_HOST_PFX Longueur de préfixe du sous-réseau pour l’attribution d’adresses IP de CLUSTER_NET. Cela définit le sous-ensemble d’adresses IP CLUSTER_NET à utiliser pour l’attribution des adresses IP des pods. 23
      AI_URL URL du service d’installation assistée. Cet exemple utilise le programme d’installation assisté hébergé Red Hat. https://api.openshift.com
  3. Enregistrez le cluster avec le service d’installation assistée. En vous inscrivant, vous indiquez au service d'installation assistée les attributs du cluster que vous souhaitez créer. En réponse, le service d’installation assistée crée une ressource de cluster et renvoie un identifiant de cluster qui identifie de manière unique cette ressource de cluster.
    1. Créez le fichier décrivant le cluster à créer. Dans cet exemple, nous nomment le fichier deployment.json.
    2. Enregistrez le cluster et enregistrez le CLUSTER_ID dans une variable d’environnement. Référencez le fichier deployment.json que vous venez de créer.
    3. Mettez à jour les attributs du cluster pour spécifier que vous souhaitez que le cluster utilise Contrail comme technologie de mise en réseau.
    4. Passez en revue les modifications.
    Une fois votre cluster enregistré, vous pouvez pointer votre navigateur vers la console de cloud hybride de Red Hat ( https://console.redhat.com/openshift) pour suivre la progression de l'installation. Vous pouvez rechercher votre cluster par nom de cluster ou ID de cluster.
  4. Générer l’ISO de démarrage de découverte. Vous utiliserez cette ISO pour démarrer les nœuds de votre cluster.
    L'ISO est adaptée à votre infrastructure en fonction de l'environnement d'infrastructure que vous allez configurer.
    1. Créez un fichier décrivant l’environnement d’infrastructure. Dans cet exemple, nous l’appelons infra-envs.json.
      Avec une liaison précoce, l’environnement d’infrastructure inclut les détails du cluster.
    2. Enregistrer l’infraenv. En réponse, le service d’installation assistée attribue un ID InfraEnv et construit l’ISO de démarrage de découverte en fonction de l’environnement d’infrastructure spécifié. Référencez le fichier infra-envs.json que vous venez de créer. Stockez l’ID InfraEnv dans une variable.
    3. Corriger l’ISO avec le certificat approprié pour le serveur API étendu.
      Pour ce faire, vous appliquez un fichier d’allumage. Copiez le contenu ci-dessous dans un fichier infra-ignition.json . Le contenu contient un script codé qui configure le serveur d’API étendu avec le certificat approprié.
      Appliquez le fichier d’allumage que vous venez de créer.
    4. Téléchargez l’ISO. Dans cet exemple, nous l’appelons ai-liveiso-$CLUSTER_ID.iso, faisant référence à l’identificateur de cluster dans le nom.
  5. Démarrez les 3 nœuds du plan de contrôle avec l’ISO de démarrage de découverte.
    1. Choisissez la méthode de démarrage la plus pratique pour votre infrastructure. Assurez-vous que les machines de démarrage sont connectées à un réseau qui a accès au service d’installation hébergée Red Hat.
      Dans l’exemple de réseau illustré sur la figure 1, les nœuds ont une interface unique et cette interface est reliée au réseau 172.16.0.0/24, qui dispose d’une connectivité externe au service d’installation assistée.
    2. Vérifiez l’état du cluster :
      L’état doit indiquer prêt lorsque les nœuds arrivent correctement.
    3. Vérifier l’état des validations :
      L'état des validations indique si vous avez correctement défini votre cluster. Il ne doit y avoir aucune erreur dans la sortie.
    4. Vérifiez les hôtes :
      La sortie affiche les détails de tous les nœuds que vous avez démarrés.
      Vous pouvez filtrer pour des informations spécifiques, telles que les ID hôtes :
      et les rôles d’hôte :
    5. Vérifiez que les rôles ont été attribués.

      Dans votre navigateur, accédez à la console cloud hybride de Red Hat (https://console.redhat.com/openshift) et cliquez sur votre cluster pour afficher les détails de votre cluster. Vous pouvez rechercher votre cluster par nom de cluster ou par ID de cluster.

      Passez à l’étape suivante uniquement lorsque les nœuds (hôtes) arrivent et que les rôles ont été assignés avec succès en tant que nœuds du plan de contrôle. Puisque nous n'avons démarré que les 3 nœuds du plan de contrôle, vous verrez les rôles assignés dans l'interface utilisateur comme plan de contrôle, travailleur.

  6. Répétez l’étape 5 pour démarrer les nœuds des employés.
    Lorsque vous interrogez les rôles d'hôte, les nœuds travailleurs sont automatiquement affectés . C’est prévu. Le service d’installation assistée attribue des rôles à ces nœuds ultérieurement lors de l’installation du cluster.
  7. Téléchargez les manifestes de Contrail (que vous avez téléchargés avant d’installer) sur le service d’installation assisté.

    Pour plus de commodité, vous pouvez utiliser le script bash suivant. Le script part du principe que vous avez placé les manifestes dans le répertoire des manifestes . Si vous utilisez ce script, assurez-vous que :

    • vous placez tous les manifestes que vous souhaitez utiliser dans ce répertoire, y compris tous les manifestes que vous souhaitez utiliser à partir des sous-directeurs
    • vous ne placez aucun autre fichier YAML dans ce répertoire

    Le script passe en boucle dans tous les fichiers *.yaml du répertoire des manifestes , les encode en base64 et les applique au cluster.

    Bien que le package de manifestes téléchargés contienne déjà les versions encodées de base64, nous exécuterons ce script pour les recréer.
  8. Commencez l’installation du cluster.

    Le service d’installation assistée crée le cluster en fonction de la ressource de cluster que vous avez définie. Tout d’abord, le programme d’installation assisté assigne l’un des nœuds du plan de contrôle comme nœud d’amorçage, ce qui prépare à son tour les autres nœuds. Un par un, vous verrez le redémarrage des nœuds non-bootstrap dans le cluster, avec les nœuds du plan de contrôle non-bootstrap redémarrage d'abord, puis les nœuds travailleurs, et enfin le nœud bootstrap.

    L’installation peut prendre une heure ou plus. Vous pouvez suivre la progression de l’installation sur la console cloud hybride de Red Hat (https://console.redhat.com/openshift).

    Si la console cloud hybride de Red Hat affiche le décrochage de l’installation, connectez-vous à chaque nœud avec nom d’utilisateur core et assurez-vous que l’hôte peut résoudre les noms de domaine, en particulier ceux que vous avez configurés dans votre serveur DNS/DHCP, ainsi que le service d’installation assistée Red Hat et les noms de domaine des référentiels Juniper Networks. La plupart des problèmes d’installation courants sont imputables à des erreurs de configuration réseau, telles que la configuration DNS incorrecte. En outre, dans certains environnements, les nœuds peuvent s’arrêter au lieu de redémarrer. Dans ce cas, démarrez manuellement les nœuds qui s’arrêtent.

  9. Téléchargez le kubeconfig pour le cluster.
    1. Téléchargez le kubeconfig sur un fichier kubeconfig local.
    2. Copiez le kubeconfig sur ~/.kube/config. Le kubeconfig doit se trouver à cet emplacement par défaut ~/.kube/config, car la contrailstatus commande que vous utiliserez ultérieurement s'attend à ce que le kubeconfig soit à son emplacement par défaut.
  10. Vérifier l’installation.
    1. Vérifiez l’état de tous les pods. Vérifiez que tous les pods sont aux états En cours d’exécution ou Terminé.
    2. Pour les pods qui n’exécutent pas ou n’ont pas d’états terminés, utilisez la commande kubectl describe pour étudier plus en détail.

      Un problème courant consiste à ne pas télécharger une image. Si tel est le cas :

      • vérifier que votre réseau peut accéder au référentiel Juniper Networks
      • vérifier que le nœud où réside le pod défaillant est configuré pour accéder à un serveur DNS
      • vérifier que le nœud où réside le pod défaillant peut ping le référentiel par nom d’hôte
  11. (Facultatif) Connectez-vous à la console Web OpenShift pour surveiller votre cluster.
    L’URL de la console Web se présente sous la forme : https://console-openshift-console.apps..<cluster-name><cluster-domain>
    1. Assurez-vous que le navigateur où vous souhaitez accéder à la console Web se trouve sur une machine ayant accès à l’URL de la console Web. Vous devrez peut-être ajouter une entrée pour le nom d’hôte de cette console au fichier /etc/hosts sur cette machine. Rappelez-vous que ce mappage est le mappage *.apps.mycluster.contrail.lan que vous avez configuré dans le serveur DNS avant l’installation.
    2. Téléchargez le mot de passe kubeadmin.
    3. Connectez-vous à la console Web OpenShift avec le nom d’utilisateur kubeadmin et le mot de passe téléchargé.
Vous avez bien installé OpenShift avec Contrail Networking.