Tutoriel : Créer un cluster Azure Red Hat OpenShift 4

Dans ce tutoriel, première partie d’une série qui en compte trois, vous préparez votre environnement pour créer un cluster Azure Red Hat OpenShift exécutant OpenShift 4, puis vous créez un cluster. Vous allez apprendre à effectuer les actions suivantes :

  • Configurer les prérequis
  • Créer le réseau virtuel et les sous-réseau requis
  • Déployer un cluster

Avant de commencer

Si vous choisissez d’installer et d’utiliser l’interface de ligne de commande localement, ce tutoriel vous demande d’exécuter Azure CLI version 2.30.0 ou ultérieure. Exécutez az --version pour trouver la version. Si vous devez installer ou mettre à niveau, voir Installer Azure CLI.

Azure Red Hat OpenShift requiert a minimum de 40 cœurs pour créer et exécuter un cluster OpenShift. Le quota de ressources Azure par défaut pour un nouvel abonnement Azure ne répond pas à cette exigence. Pour demander une augmentation de votre limite de ressources, consultez Quota standard : augmenter les limites par série de machines virtuelles.

  • Par exemple, pour la vérification du quota d’abonnement actuel de la plus petite référence SKU « Standard DSv3 » de la famille de machines virtuelles prise en charge :

    LOCATION=eastus
    az vm list-usage -l $LOCATION \
    --query "[?contains(name.value, 'standardDSv3Family')]" \
    -o table
    

Vérifier vos autorisations

Au cours de ce tutoriel, vous allez créer un groupe de ressources qui contiendra le réseau virtuel du cluster. Pour ce faire, vous devez disposer d’autorisations d’accès Contributeur et Administrateur de l’accès utilisateur ou d’autorisations d’accès Propriétaire, soit directement sur le réseau virtuel, soit sur le groupe de ressources ou l’abonnement qui le contient.

Vous devez également disposer des autorisations Microsoft Entra (utilisateur membre du locataire ou utilisateur invité avec le rôle Administrateur d’application) suffisantes pour que les outils puissent créer à votre place une application et un principal de service pour le cluster. Pour plus d’informations, consultez la section Utilisateurs membres et utilisateurs invités et l’article Attribuer des rôles administrateur et non-administrateur aux utilisateurs avec Microsoft Entra ID.

Inscrire les fournisseurs de ressources

  1. Si vous possédez plusieurs abonnements Azure, indiquez l’ID d’abonnement pertinent :

    az account set --subscription <SUBSCRIPTION ID>
    
  2. Inscrivez le fournisseur de ressources Microsoft.RedHatOpenShift :

    az provider register -n Microsoft.RedHatOpenShift --wait
    
  3. Inscrivez le fournisseur de ressources Microsoft.Compute :

    az provider register -n Microsoft.Compute --wait
    
  4. Inscrivez le fournisseur de ressources Microsoft.Storage :

    az provider register -n Microsoft.Storage --wait
    
  5. Inscrivez le fournisseur de ressources Microsoft.Authorization :

    az provider register -n Microsoft.Authorization --wait
    

Récupération d’un secret d’extraction Red Hat (facultatif)

Notes

Le secret d’extraction Azure Red Hat OpenShift ne modifie pas le coût de la licence RH OpenShift pour Azure Red Hat OpenShift.

Un secret d’extraction Red Hat permet au cluster d’accéder à des registres du conteneur Red Hat, ainsi qu’à d’autres contenus comme les opérateurs de OperatorHub. Cette étape est facultative mais recommandée. Si vous décidez ultérieurement d’ajouter le secret d’extraction, suivez ces instructions. Le champ cloud.openshift.com sera supprimé de votre secret même si votre secret d’extraction contient ce champ. Ce champ active une fonctionnalité de surveillance supplémentaire qui envoie des données à RedHat et qui est par conséquent désactivée par défaut. Pour activer cette fonctionnalité, consultez https://docs.openshift.com/container-platform/4.11/support/remote_health_monitoring/enabling-remote-health-reporting.html.

  1. Accédez au portail de votre gestionnaire de cluster Red Hat OpenShift, puis connectez-vous.

    Vous devrez vous connecter à votre compte Red Hat existant ou créer un compte Red Hat en utilisant votre adresse e-mail professionnelle et accepter les conditions générales.

  2. Sélectionnez sur Télécharger un secret d’extraction, puis téléchargez un secret d’extraction à utiliser avec votre cluster Azure Red Hat OpenShift.

    Conservez le fichier pull-secret.txt enregistré dans un emplacement sûr. Le fichier sera utilisé dans chaque création de cluster si vous devez créer un cluster incluant des exemples ou des opérateurs pour Red Hat ou des partenaires certifiés.

    Lors de l’exécution de la commande az aro create, vous pouvez référencer votre secret d’extraction à l’aide du paramètre --pull-secret @pull-secret.txt. Exécutez az aro create à partir du répertoire où vous avez stocké votre fichier pull-secret.txt. Sinon, remplacez @pull-secret.txt par @/path/to/my/pull-secret.txt.

    Si vous copiez votre secret d’extraction, ou que vous le référencez dans d’autres scripts, il doit être au format d’une chaîne JSON valide.

Préparer un domaine personnalisé pour votre cluster (facultatif)

Lorsque vous exécutez la commande az aro create, vous pouvez spécifier un domaine personnalisé pour votre cluster à l’aide du paramètre --domain foo.example.com.

Notes

Bien que l’ajout d’un nom de domaine soit facultatif lors de la création d’un cluster via Azure CLI, un nom de domaine (ou un préfixe utilisé dans le cadre du nom DNS généré automatiquement pour des serveurs API et une console OpenShift) est nécessaire lors de l’ajout d’un cluster via le portail. Consultez Démarrage rapide : déployer un cluster Azure Red Hat OpenShift en utilisant le Portail Azure pour obtenir plus d’informations.

Si vous fournissez un domaine personnalisé pour votre cluster, notez les points suivants :

  • Après la création de votre cluster, vous devez créer deux enregistrements DNS A dans votre serveur DNS pour le --domain spécifié :

    • api : pointant vers l’adresse IP du serveur d’API
    • *.apps  : pointant vers l’adresse IP d’entrée
    • Récupérez ces valeurs en exécutant la commande suivante après la création du cluster : az aro show -n -g --query '{api:apiserverProfile.ip, ingress:ingressProfiles[0].ip}'.
  • La console OpenShift sera disponible à une URL telle que https://console-openshift-console.apps.example.com, au lieu du domaine intégré https://console-openshift-console.apps.<random>.<location>.aroapp.io.

  • Par défaut, OpenShift utilise des certificats auto-signés pour toutes les routes créées sur des domaines personnalisés *.apps.example.com. Si vous choisissez d’utiliser un DNS personnalisé après vous être connecté au cluster, vous devez suivre la documentation OpenShift afin de configurer une autorité de certification personnalisée pour votre contrôleur d’entrée et configurer une autorité de certification personnalisée pour votre serveur d’API.

Créer un réseau virtuel contenant deux sous-réseaux vides

Vous allez ensuite créer un réseau virtuel contenant deux sous-réseaux vides. Si vous disposez d’un réseau virtuel existant qui répond à vos besoins, vous pouvez ignorer cette étape.

  1. Définissez les variables suivantes dans l’environnement de l’interpréteur de commandes où vous exécuterez les commandes az.

    LOCATION=eastus                 # the location of your cluster
    RESOURCEGROUP=aro-rg            # the name of the resource group where you want to create your cluster
    CLUSTER=cluster                 # the name of your cluster
    
  2. Créez un groupe de ressources.

    Un groupe de ressources Azure est un groupe logique dans lequel des ressources Azure sont déployées et gérées. Lorsque vous créez un groupe de ressources, vous devez spécifier un emplacement. Il s’agit de l’emplacement de stockage des métadonnées de groupe de ressources. C’est également là que vos ressources s’exécutent dans Azure si vous ne spécifiez pas une autre région lors de la création de ressources. Créez un groupe de ressources avec la commande az group create.

    Notes

    Azure Red Hat OpenShift n’est pas disponible dans toutes les régions où un groupe de ressources Azure peut être créé. Pour savoir où Azure Red Hat OpenShift est pris en charge, consultez Régions disponibles.

    az group create \
      --name $RESOURCEGROUP \
      --location $LOCATION
    

    L’exemple de sortie suivant montre que le groupe de ressources a été créé correctement :

    {
      "id": "/subscriptions/<guid>/resourceGroups/aro-rg",
      "location": "eastus",
      "name": "aro-rg",
      "properties": {
        "provisioningState": "Succeeded"
      },
      "type": "Microsoft.Resources/resourceGroups"
    }
    
  3. Créez un réseau virtuel.

    Les clusters Azure Red Hat OpenShift exécutant OpenShift 4 nécessitent un réseau virtuel avec deux sous-réseaux vides (pour les nœuds principaux et les nœuds worker). Vous pouvez créer un réseau virtuel pour cela, ou utiliser un réseau virtuel existant.

    Créez un réseau virtuel dans le groupe de ressources que vous avez créé précédemment :

    az network vnet create \
       --resource-group $RESOURCEGROUP \
       --name aro-vnet \
       --address-prefixes 10.0.0.0/22
    

    L’exemple de sortie suivant montre le réseau virtuel qui a été créé :

    {
      "newVNet": {
        "addressSpace": {
          "addressPrefixes": [
            "10.0.0.0/22"
          ]
        },
        "dhcpOptions": {
          "dnsServers": []
        },
        "id": "/subscriptions/<guid>/resourceGroups/aro-rg/providers/Microsoft.Network/virtualNetworks/aro-vnet",
        "location": "eastus",
        "name": "aro-vnet",
        "provisioningState": "Succeeded",
        "resourceGroup": "aro-rg",
        "type": "Microsoft.Network/virtualNetworks"
      }
    }
    
  4. Ajoutez un sous-réseau vide pour les nœuds principaux.

    az network vnet subnet create \
      --resource-group $RESOURCEGROUP \
      --vnet-name aro-vnet \
      --name master-subnet \
      --address-prefixes 10.0.0.0/23
    
  5. Ajoutez un sous-réseau vide pour les nœuds worker.

    az network vnet subnet create \
      --resource-group $RESOURCEGROUP \
      --vnet-name aro-vnet \
      --name worker-subnet \
      --address-prefixes 10.0.2.0/23
    

Créer le cluster

Exécutez la commande suivante pour créer un cluster. Si vous choisissez d’utiliser l’une des options suivantes, modifiez la commande en conséquence :

  • Vous pouvez éventuellement transmettre votre secret d’extraction Red Hat pour permettre à votre cluster d’accéder à des registres de conteneurs Red Hat et à un autre contenu. Ajoutez l’argument --pull-secret @pull-secret.txt à votre commande.
  • Si vous le souhaitez, vous pouvez utiliser un domaine personnalisé. Ajoutez l’argument --domain foo.example.com à votre commande en remplaçant foo.example.com par votre propre domaine personnalisé.

Notes

Si vous ajoutez des arguments facultatifs à votre commande, veillez à fermer l’argument situé sur la ligne précédente de la commande à l’aide d’une barre oblique inverse de fin.

az aro create \
  --resource-group $RESOURCEGROUP \
  --name $CLUSTER \
  --vnet aro-vnet \
  --master-subnet master-subnet \
  --worker-subnet worker-subnet

Après l’exécution de la commande az aro create, la création d’un cluster prend normalement une trentaine de minutes.

Sélection d’une autre version ARO

Vous pouvez choisir d’utiliser une version spécifique de ARO pendant la création de votre cluster. Utilisez en premier l’interface CLI pour rechercher les versions ARO disponibles :

az aro get-versions --location <region>

Une fois la version choisie, spécifiez-la à l’aide du paramètre --versiondans la commande az aro create :

az aro create \
  --resource-group $RESOURCEGROUP \
  --name $CLUSTER \
  --vnet aro-vnet \
  --master-subnet master-subnet \
  --worker-subnet worker-subnet \
  --version <x.y.z>

Étapes suivantes

Dans cette partie du tutoriel, vous avez appris à :

  • Préparer les prérequis, et créer le réseau virtuel et ses sous-réseaux nécessaires
  • Déployer un cluster

Passez au tutoriel suivant :