2.3. Création d'un ensemble de machines de calcul sur Azure


Vous pouvez créer un ensemble de machines de calcul différent pour répondre à un besoin spécifique dans votre cluster OpenShift Container Platform sur Microsoft Azure. Par exemple, vous pouvez créer des jeux de machines d'infrastructure et des machines connexes afin de pouvoir déplacer des charges de travail de support vers les nouvelles machines.

Important

Vous ne pouvez utiliser les fonctionnalités avancées de gestion et de mise à l'échelle des machines que dans les clusters où l'API Machine est opérationnelle. Les clusters dont l'infrastructure est fournie par l'utilisateur nécessitent une validation et une configuration supplémentaires pour utiliser l'API Machine.

Les clusters avec le type de plateforme d'infrastructure none ne peuvent pas utiliser l'API Machine. Cette limitation s'applique même si les machines de calcul attachées au cluster sont installées sur une plateforme qui prend en charge cette fonctionnalité. Ce paramètre ne peut pas être modifié après l'installation.

Pour afficher le type de plateforme de votre cluster, exécutez la commande suivante :

$ oc get infrastructure cluster -o jsonpath='{.status.platform}'

2.3.1. Exemple de YAML pour une ressource personnalisée d'un ensemble de machines de calcul sur Azure

Cet exemple YAML définit un ensemble de machines de calcul qui fonctionne dans la zone 1 Microsoft Azure d'une région et crée des nœuds étiquetés avec node-role.kubernetes.io/<role>: "".

Dans cet exemple, <infrastructure_id> est l'étiquette d'ID d'infrastructure basée sur l'ID de cluster que vous avez défini lors du provisionnement du cluster, et <role> est l'étiquette de nœud à ajouter.

apiVersion: machine.openshift.io/v1beta1
kind: MachineSet
metadata:
  labels:
    machine.openshift.io/cluster-api-cluster: <infrastructure_id> 1
    machine.openshift.io/cluster-api-machine-role: <role> 2
    machine.openshift.io/cluster-api-machine-type: <role> 3
  name: <infrastructure_id>-<role>-<region> 4
  namespace: openshift-machine-api
spec:
  replicas: 1
  selector:
    matchLabels:
      machine.openshift.io/cluster-api-cluster: <infrastructure_id> 5
      machine.openshift.io/cluster-api-machineset: <infrastructure_id>-<role>-<region> 6
  template:
    metadata:
      creationTimestamp: null
      labels:
        machine.openshift.io/cluster-api-cluster: <infrastructure_id> 7
        machine.openshift.io/cluster-api-machine-role: <role> 8
        machine.openshift.io/cluster-api-machine-type: <role> 9
        machine.openshift.io/cluster-api-machineset: <infrastructure_id>-<role>-<region> 10
    spec:
      metadata:
        creationTimestamp: null
        labels:
          machine.openshift.io/cluster-api-machineset: <machineset_name> 11
          node-role.kubernetes.io/<role>: "" 12
      providerSpec:
        value:
          apiVersion: azureproviderconfig.openshift.io/v1beta1
          credentialsSecret:
            name: azure-cloud-credentials
            namespace: openshift-machine-api
          image: 13
            offer: ""
            publisher: ""
            resourceID: /resourceGroups/<infrastructure_id>-rg/providers/Microsoft.Compute/images/<infrastructure_id> 14
            sku: ""
            version: ""
          internalLoadBalancer: ""
          kind: AzureMachineProviderSpec
          location: <region> 15
          managedIdentity: <infrastructure_id>-identity 16
          metadata:
            creationTimestamp: null
          natRule: null
          networkResourceGroup: ""
          osDisk:
            diskSizeGB: 128
            managedDisk:
              storageAccountType: Premium_LRS
            osType: Linux
          publicIP: false
          publicLoadBalancer: ""
          resourceGroup: <infrastructure_id>-rg 17
          sshPrivateKey: ""
          sshPublicKey: ""
          tags:
            - name: <custom_tag_name> 18
              value: <custom_tag_value> 19
          subnet: <infrastructure_id>-<role>-subnet 20 21
          userDataSecret:
            name: worker-user-data 22
          vmSize: Standard_D4s_v3
          vnet: <infrastructure_id>-vnet 23
          zone: "1" 24
1 5 7 16 17 20 23
Spécifiez l'ID d'infrastructure qui est basé sur l'ID de cluster que vous avez défini lorsque vous avez provisionné le cluster. Si le CLI OpenShift est installé, vous pouvez obtenir l'ID d'infrastructure en exécutant la commande suivante :
$ oc get -o jsonpath='{.status.infrastructureName}{"\n"}' infrastructure cluster

Vous pouvez obtenir le sous-réseau en exécutant la commande suivante :

$  oc -n openshift-machine-api \
    -o jsonpath='{.spec.template.spec.providerSpec.value.subnet}{"\n"}' \
    get machineset/<infrastructure_id>-worker-centralus1

Vous pouvez obtenir le vnet en exécutant la commande suivante :

$  oc -n openshift-machine-api \
    -o jsonpath='{.spec.template.spec.providerSpec.value.vnet}{"\n"}' \
    get machineset/<infrastructure_id>-worker-centralus1
2 3 8 9 12 21 22
Spécifiez l'étiquette de nœud à ajouter.
4 6 10
Spécifiez l'ID de l'infrastructure, l'étiquette du nœud et la région.
11
Facultatif : Spécifiez le nom de l'ensemble de machines de calcul pour activer l'utilisation des ensembles de disponibilité. Ce paramètre ne s'applique qu'aux nouvelles machines de calcul.
13
Spécifiez les détails de l'image pour votre ensemble de machines de calcul. Si vous souhaitez utiliser une image Azure Marketplace, voir "Sélection d'une image Azure Marketplace".
14
Spécifiez une image compatible avec votre type d'instance. Les images Hyper-V de génération V2 créées par le programme d'installation ont un suffixe -gen2, tandis que les images V1 portent le même nom sans suffixe.
15
Spécifiez la région où placer les machines.
24
Indiquez la zone de votre région où placer les machines. Assurez-vous que votre région prend en charge la zone que vous spécifiez.
18 19
Optionnel : Spécifiez des balises personnalisées dans votre jeu de machines. Indiquez le nom de la balise dans le champ <custom_tag_name> et la valeur de la balise correspondante dans le champ <custom_tag_value>.

2.3.2. Création d'un ensemble de machines de calcul

En plus des ensembles de machines de calcul créés par le programme d'installation, vous pouvez créer vos propres ensembles pour gérer dynamiquement les ressources de calcul des machines pour les charges de travail spécifiques de votre choix.

Conditions préalables

  • Déployer un cluster OpenShift Container Platform.
  • Installez le CLI OpenShift (oc).
  • Connectez-vous à oc en tant qu'utilisateur disposant de l'autorisation cluster-admin.

Procédure

  1. Créez un nouveau fichier YAML contenant l'échantillon de ressources personnalisées (CR) de l'ensemble de machines de calcul et nommé <file_name>.yaml.

    Veillez à définir les valeurs des paramètres <clusterID> et <role>.

  2. Facultatif : si vous n'êtes pas sûr de la valeur à définir pour un champ spécifique, vous pouvez vérifier un ensemble de machines de calcul existant dans votre cluster.

    1. Pour répertorier les ensembles de machines de calcul de votre cluster, exécutez la commande suivante :

      $ oc get machinesets -n openshift-machine-api

      Exemple de sortie

      NAME                                DESIRED   CURRENT   READY   AVAILABLE   AGE
      agl030519-vplxk-worker-us-east-1a   1         1         1       1           55m
      agl030519-vplxk-worker-us-east-1b   1         1         1       1           55m
      agl030519-vplxk-worker-us-east-1c   1         1         1       1           55m
      agl030519-vplxk-worker-us-east-1d   0         0                             55m
      agl030519-vplxk-worker-us-east-1e   0         0                             55m
      agl030519-vplxk-worker-us-east-1f   0         0                             55m

    2. Pour afficher les valeurs d'une ressource personnalisée (CR) d'un ensemble de machines de calcul spécifique, exécutez la commande suivante :

      $ oc get machineset <machineset_name> \
        -n openshift-machine-api -o yaml

      Exemple de sortie

      apiVersion: machine.openshift.io/v1beta1
      kind: MachineSet
      metadata:
        labels:
          machine.openshift.io/cluster-api-cluster: <infrastructure_id> 1
        name: <infrastructure_id>-<role> 2
        namespace: openshift-machine-api
      spec:
        replicas: 1
        selector:
          matchLabels:
            machine.openshift.io/cluster-api-cluster: <infrastructure_id>
            machine.openshift.io/cluster-api-machineset: <infrastructure_id>-<role>
        template:
          metadata:
            labels:
              machine.openshift.io/cluster-api-cluster: <infrastructure_id>
              machine.openshift.io/cluster-api-machine-role: <role>
              machine.openshift.io/cluster-api-machine-type: <role>
              machine.openshift.io/cluster-api-machineset: <infrastructure_id>-<role>
          spec:
            providerSpec: 3
              ...

      1
      L'ID de l'infrastructure du cluster.
      2
      Une étiquette de nœud par défaut.
      Note

      Pour les clusters disposant d'une infrastructure fournie par l'utilisateur, un ensemble de machines de calcul ne peut créer que des machines de type worker et infra.

      3
      Les valeurs de la section <providerSpec> du CR de l'ensemble de machines de calcul sont spécifiques à la plate-forme. Pour plus d'informations sur les paramètres <providerSpec> dans le CR, consultez l'exemple de configuration du CR de l'ensemble de machines de calcul pour votre fournisseur.
  3. Créez un CR MachineSet en exécutant la commande suivante :

    oc create -f <nom_du_fichier>.yaml

Vérification

  • Affichez la liste des ensembles de machines de calcul en exécutant la commande suivante :

    $ oc get machineset -n openshift-machine-api

    Exemple de sortie

    NAME                                DESIRED   CURRENT   READY   AVAILABLE   AGE
    agl030519-vplxk-infra-us-east-1a    1         1         1       1           11m
    agl030519-vplxk-worker-us-east-1a   1         1         1       1           55m
    agl030519-vplxk-worker-us-east-1b   1         1         1       1           55m
    agl030519-vplxk-worker-us-east-1c   1         1         1       1           55m
    agl030519-vplxk-worker-us-east-1d   0         0                             55m
    agl030519-vplxk-worker-us-east-1e   0         0                             55m
    agl030519-vplxk-worker-us-east-1f   0         0                             55m

    Lorsque le nouveau jeu de machines de calcul est disponible, les valeurs DESIRED et CURRENT correspondent. Si le jeu de machines de calcul n'est pas disponible, attendez quelques minutes et exécutez à nouveau la commande.

2.3.3. Selecting an Azure Marketplace image

Vous pouvez créer un jeu de machines fonctionnant sur Azure qui déploie des machines utilisant l'offre Azure Marketplace. Pour utiliser cette offre, vous devez d'abord obtenir l'image Azure Marketplace. Lorsque vous obtenez votre image, tenez compte des éléments suivants :

  • While the images are the same, the Azure Marketplace publisher is different depending on your region. If you are located in North America, specify redhat as the publisher. If you are located in EMEA, specify redhat-limited as the publisher.
  • The offer includes a rh-ocp-worker SKU and a rh-ocp-worker-gen1 SKU. The rh-ocp-worker SKU represents a Hyper-V generation version 2 VM image. The default instance types used in OpenShift Container Platform are version 2 compatible. If you plan to use an instance type that is only version 1 compatible, use the image associated with the rh-ocp-worker-gen1 SKU. The rh-ocp-worker-gen1 SKU represents a Hyper-V version 1 VM image.
Important

Installing images with the Azure marketplace is not supported on clusters with arm64 instances.

Conditions préalables

  • You have installed the Azure CLI client (az).
  • Your Azure account is entitled for the offer and you have logged into this account with the Azure CLI client.

Procédure

  1. Display all of the available OpenShift Container Platform images by running one of the following commands:

    • North America:

      $  az vm image list --all --offer rh-ocp-worker --publisher redhat -o table

      Exemple de sortie

      Offer          Publisher       Sku                 Urn                                                             Version
      -------------  --------------  ------------------  --------------------------------------------------------------  --------------
      rh-ocp-worker  RedHat          rh-ocp-worker       RedHat:rh-ocp-worker:rh-ocpworker:4.8.2021122100               4.8.2021122100
      rh-ocp-worker  RedHat          rh-ocp-worker-gen1  RedHat:rh-ocp-worker:rh-ocp-worker-gen1:4.8.2021122100         4.8.2021122100

    • EMEA:

      $  az vm image list --all --offer rh-ocp-worker --publisher redhat-limited -o table

      Exemple de sortie

      Offer          Publisher       Sku                 Urn                                                             Version
      -------------  --------------  ------------------  --------------------------------------------------------------  --------------
      rh-ocp-worker  redhat-limited  rh-ocp-worker       redhat-limited:rh-ocp-worker:rh-ocp-worker:4.8.2021122100       4.8.2021122100
      rh-ocp-worker  redhat-limited  rh-ocp-worker-gen1  redhat-limited:rh-ocp-worker:rh-ocp-worker-gen1:4.8.2021122100  4.8.2021122100

    Note

    Regardless of the version of OpenShift Container Platform that you install, the correct version of the Azure Marketplace image to use is 4.8. If required, your VMs are automatically upgraded as part of the installation process.

  2. Inspect the image for your offer by running one of the following commands:

    • North America:

      $ az vm image show --urn redhat:rh-ocp-worker:rh-ocp-worker:<version>
    • EMEA:

      $ az vm image show --urn redhat-limited:rh-ocp-worker:rh-ocp-worker:<version>
  3. Review the terms of the offer by running one of the following commands:

    • North America:

      $ az vm image terms show --urn redhat:rh-ocp-worker:rh-ocp-worker:<version>
    • EMEA:

      $ az vm image terms show --urn redhat-limited:rh-ocp-worker:rh-ocp-worker:<version>
  4. Accept the terms of the offering by running one of the following commands:

    • North America:

      $ az vm image terms accept --urn redhat:rh-ocp-worker:rh-ocp-worker:<version>
    • EMEA:

      $ az vm image terms accept --urn redhat-limited:rh-ocp-worker:rh-ocp-worker:<version>
  5. Enregistrez les détails de l'image de votre offre, en particulier les valeurs de publisher, offer, sku et version.
  6. Ajoutez les paramètres suivants à la section providerSpec de votre fichier YAML de configuration de la machine en utilisant les détails de l'image pour votre offre :

    Exemple de valeurs d'image providerSpec pour les machines Azure Marketplace

    providerSpec:
      value:
        image:
          offer: rh-ocp-worker
          publisher: redhat
          resourceID: ""
          sku: rh-ocp-worker
          type: MarketplaceWithPlan
          version: 4.8.2021122100

2.3.4. Activation des diagnostics de démarrage Azure

Vous pouvez activer les diagnostics de démarrage sur les machines Azure créées par votre jeu de machines.

Conditions préalables

  • Disposer d'un cluster Microsoft Azure existant.

Procédure

  • Ajoutez la configuration diagnostics applicable à votre type de stockage au champ providerSpec de votre fichier YAML machine set :

    • Pour un compte de stockage géré par Azure :

      providerSpec:
        diagnostics:
          boot:
            storageAccountType: AzureManaged 1
      1
      Spécifie un compte de stockage Azure Managed.
    • Pour un compte de stockage Azure non géré :

      providerSpec:
        diagnostics:
          boot:
            storageAccountType: CustomerManaged 1
            customerManaged:
              storageAccountURI: https://<storage-account>.blob.core.windows.net 2
      1
      Spécifie un compte de stockage Azure non géré.
      2
      Remplacez <storage-account> par le nom de votre compte de stockage.
      Note

      Seul le service de données Azure Blob Storage est pris en charge.

Vérification

  • Sur le portail Microsoft Azure, consultez la page Boot diagnostics pour une machine déployée par le jeu de machines et vérifiez que vous pouvez voir les journaux de série pour la machine.

2.3.5. Jeux de machines qui déploient des machines en tant que VM Spot

Vous pouvez réaliser des économies en créant un ensemble de machines de calcul fonctionnant sur Azure qui déploie des machines en tant que VM Spot non garanties. Les VM Spot utilisent la capacité inutilisée d'Azure et sont moins coûteuses que les VM standard. Vous pouvez utiliser les Spot VM pour les charges de travail qui peuvent tolérer des interruptions, telles que les charges de travail par lots ou sans état, évolutives horizontalement.

Azure peut mettre fin à une VM Spot à tout moment. Azure donne un avertissement de 30 secondes à l'utilisateur lorsqu'une interruption se produit. OpenShift Container Platform commence à supprimer les charges de travail des instances concernées lorsque Azure émet l'avertissement de résiliation.

Des interruptions peuvent se produire lors de l'utilisation des VM Spot pour les raisons suivantes :

  • Le prix de l'instance dépasse votre prix maximum
  • L'offre de machines virtuelles Spot diminue
  • Azure a besoin d'un retour de capacité

Lorsqu'Azure met fin à une instance, un gestionnaire de fin s'exécutant sur le nœud Spot VM supprime la ressource machine. Pour satisfaire la quantité de l'ensemble de machines de calcul replicas, l'ensemble de machines de calcul crée une machine qui demande une VM Spot.

2.3.5.1. Création de machines virtuelles Spot à l'aide d'ensembles de machines de calcul

Vous pouvez lancer une VM Spot sur Azure en ajoutant spotVMOptions à votre fichier YAML d'ensemble de machine de calcul.

Procédure

  • Ajoutez la ligne suivante sous le champ providerSpec:

    providerSpec:
      value:
        spotVMOptions: {}

    Vous pouvez éventuellement définir le champ spotVMOptions.maxPrice pour limiter le coût de la VM Spot. Par exemple, vous pouvez définir maxPrice: '0.98765'. Si le champ maxPrice est défini, cette valeur est utilisée comme prix maximum horaire de la VM Spot. S'il n'est pas défini, le prix maximum est fixé par défaut à -1 et les frais sont portés au prix standard de la VM.

    Azure plafonne les prix des VM Spot au prix standard. Azure n'expulsera pas une instance en raison de la tarification si l'instance est configurée avec le prix par défaut maxPrice. Cependant, une instance peut toujours être expulsée en raison de restrictions de capacité.

Note

Il est fortement recommandé d'utiliser le prix standard par défaut des VM comme valeur maxPrice et de ne pas fixer le prix maximum pour les VM Spot.

2.3.6. Jeux de machines qui déploient des machines sur des disques d'OS éphémères

Vous pouvez créer un ensemble de machines de calcul fonctionnant sur Azure qui déploie des machines sur des disques OS éphémères. Les disques OS éphémères utilisent la capacité locale des VM plutôt que le stockage Azure distant. Cette configuration n'entraîne donc aucun coût supplémentaire et offre une latence réduite pour la lecture, l'écriture et la réimagerie.

Ressources complémentaires

2.3.6.1. Création de machines sur des disques OS éphémères à l'aide d'ensembles de machines de calcul

Vous pouvez lancer des machines sur des disques OS éphémères sur Azure en modifiant votre fichier YAML d'ensemble de machine de calcul.

Conditions préalables

  • Disposer d'un cluster Microsoft Azure existant.

Procédure

  1. Modifiez la ressource personnalisée (CR) en exécutant la commande suivante :

    oc edit machineset <machine-set-name> $ oc edit machineset <machine-set-name>

    <machine-set-name> est l'ensemble de machines de calcul que vous souhaitez provisionner sur des disques OS éphémères.

  2. Ajoutez ce qui suit au champ providerSpec:

    providerSpec:
      value:
        ...
        osDisk:
           ...
           diskSettings: 1
             ephemeralStorageLocation: Local 2
           cachingType: ReadOnly 3
           managedDisk:
             storageAccountType: Standard_LRS 4
           ...
    1 2 3
    Ces lignes permettent d'utiliser des disques OS éphémères.
    4
    Les disques OS éphémères ne sont pris en charge que pour les VM ou les instances de jeux d'échelle qui utilisent le type de compte de stockage LRS standard.
    Important

    L'implémentation de la prise en charge des disques OS éphémères dans OpenShift Container Platform ne prend en charge que le type de placement CacheDisk. Ne modifiez pas le paramètre de configuration placement.

  3. Créez un ensemble de machines de calcul en utilisant la configuration mise à jour :

    oc create -f <machine-set-config>.yaml

Vérification

  • Sur le portail Microsoft Azure, consultez la page Overview pour une machine déployée par l'ensemble de machines de calcul et vérifiez que le champ Ephemeral OS disk est défini sur OS cache placement.

2.3.7. Jeux de machines qui déploient des machines avec des disques ultra comme disques de données

Vous pouvez créer un jeu de machines fonctionnant sur Azure qui déploie des machines avec des ultra-disques. Les disques ultra sont des systèmes de stockage haute performance destinés à être utilisés avec les charges de travail les plus exigeantes.

Vous pouvez également créer une revendication de volume persistant (PVC) qui se lie dynamiquement à une classe de stockage soutenue par des disques Azure ultra et les monte sur des pods.

Note

Les disques de données ne permettent pas de spécifier le débit ou l'IOPS du disque. Vous pouvez configurer ces propriétés en utilisant des PVC.

2.3.7.1. Création de machines avec ultra-disques à l'aide de jeux de machines

Vous pouvez déployer des machines avec des ultra-disques sur Azure en modifiant votre fichier YAML de configuration des machines.

Conditions préalables

  • Disposer d'un cluster Microsoft Azure existant.

Procédure

  1. Créez un secret personnalisé dans l'espace de noms openshift-machine-api en utilisant le secret de données worker en exécutant la commande suivante :

    $ oc -n openshift-machine-api \
    get secret <role>-user-data \ 1
    --template='{{index .data.userData | base64decode}}' | jq > userData.txt 2
    1
    Remplacer <role> par worker.
    2
    Indiquez userData.txt comme nom du nouveau secret personnalisé.
  2. Dans un éditeur de texte, ouvrez le fichier userData.txt et localisez le caractère final } dans le fichier.

    1. Sur la ligne immédiatement précédente, ajouter un ,.
    2. Créez une nouvelle ligne après le site , et ajoutez les détails de configuration suivants :

      "storage": {
        "disks": [ 1
          {
            "device": "/dev/disk/azure/scsi1/lun0", 2
            "partitions": [ 3
              {
                "label": "lun0p1", 4
                "sizeMiB": 1024, 5
                "startMiB": 0
              }
            ]
          }
        ],
        "filesystems": [ 6
          {
            "device": "/dev/disk/by-partlabel/lun0p1",
            "format": "xfs",
            "path": "/var/lib/lun0p1"
          }
        ]
      },
      "systemd": {
        "units": [ 7
          {
            "contents": "[Unit]\nBefore=local-fs.target\n[Mount]\nWhere=/var/lib/lun0p1\nWhat=/dev/disk/by-partlabel/lun0p1\nOptions=defaults,pquota\n[Install]\nWantedBy=local-fs.target\n", 8
            "enabled": true,
            "name": "var-lib-lun0p1.mount"
          }
        ]
      }
      1
      Les détails de configuration du disque que vous souhaitez attacher à un nœud en tant qu'ultra disque.
      2
      Indiquez la valeur lun définie dans la strophe dataDisks du jeu de machines que vous utilisez. Par exemple, si le jeu de machines contient lun: 0, indiquez lun0. Vous pouvez initialiser plusieurs disques de données en spécifiant plusieurs entrées "disks" dans ce fichier de configuration. Si vous spécifiez plusieurs entrées "disks", assurez-vous que la valeur lun de chaque entrée correspond à la valeur du jeu de machines.
      3
      Les détails de la configuration d'une nouvelle partition sur le disque.
      4
      Indiquez un nom pour la partition. Il peut être utile d'utiliser des noms hiérarchiques, tels que lun0p1 pour la première partition de lun0.
      5
      Indiquez la taille totale en Mo de la partition.
      6
      Spécifiez le système de fichiers à utiliser lors du formatage d'une partition. Utilisez l'étiquette de partition pour spécifier la partition.
      7
      Indiquez une unité systemd pour monter la partition au démarrage. Utilisez l'étiquette de partition pour spécifier la partition. Vous pouvez créer plusieurs partitions en spécifiant plusieurs entrées "partitions" dans ce fichier de configuration. Si vous spécifiez plusieurs entrées "partitions", vous devez spécifier une unité systemd pour chacune d'entre elles.
      8
      Pour Where, spécifiez la valeur de storage.filesystems.path. Pour What, spécifiez la valeur de storage.filesystems.device.
  3. Extrayez la valeur du modèle de désactivation dans un fichier appelé disableTemplating.txt en exécutant la commande suivante :

    $ oc -n openshift-machine-api get secret <role>-user-data \ 1
    --template='{{index .data.disableTemplating | base64decode}}' | jq > disableTemplating.txt
    1
    Remplacer <role> par worker.
  4. Combinez les fichiers userData.txt et disableTemplating.txt pour créer un fichier de données secrètes en exécutant la commande suivante :

    $ oc -n openshift-machine-api create secret generic <role>-user-data-x5 \ 1
    --from-file=userData=userData.txt \
    --from-file=disableTemplating=disableTemplating.txt
    1
    Pour <role>-user-data-x5, indiquez le nom du secret. Remplacez <role> par worker.
  5. Copiez une ressource personnalisée (CR) Azure MachineSet existante et modifiez-la en exécutant la commande suivante :

    oc edit machineset <machine-set-name> $ oc edit machineset <machine-set-name>

    <machine-set-name> est l'ensemble de machines que vous voulez provisionner avec des ultra-disques.

  6. Ajouter les lignes suivantes aux endroits indiqués :

    apiVersion: machine.openshift.io/v1beta1
    kind: MachineSet
    spec:
      template:
        spec:
          metadata:
            labels:
              disk: ultrassd 1
          providerSpec:
            value:
              ultraSSDCapability: Enabled 2
              dataDisks: 3
              - nameSuffix: ultrassd
                lun: 0
                diskSizeGB: 4
                deletionPolicy: Delete
                cachingType: None
                managedDisk:
                  storageAccountType: UltraSSD_LRS
              userDataSecret:
                name: <role>-user-data-x5 4
    1
    Indiquez une étiquette à utiliser pour sélectionner un nœud créé par ce jeu de machines. Cette procédure utilise disk.ultrassd pour cette valeur.
    2 3
    Ces lignes permettent d'utiliser des disques ultra. Pour dataDisks, inclure la strophe entière.
    4
    Spécifiez le secret des données de l'utilisateur créé précédemment. Remplacez <role> par worker.
  7. Créez un jeu de machines à l'aide de la configuration mise à jour en exécutant la commande suivante :

    oc create -f <machine-set-name>.yaml

Vérification

  1. Validez la création des machines en exécutant la commande suivante :

    $ oc get machines

    Les machines doivent être dans l'état Running.

  2. Pour une machine en cours d'exécution et à laquelle un nœud est attaché, validez la partition en exécutant la commande suivante :

    $ oc debug node/<node-name> -- chroot /host lsblk

    Dans cette commande, oc debug node/<node-name> démarre un shell de débogage sur le nœud <node-name> et transmet une commande à --. La commande passée chroot /host permet d'accéder aux binaires du système d'exploitation hôte sous-jacent, et lsblk montre les périphériques de bloc attachés à la machine du système d'exploitation hôte.

Prochaines étapes

  • Pour utiliser un ultra disque à partir d'un pod, créez une charge de travail qui utilise le point de montage. Créez un fichier YAML similaire à l'exemple suivant :

    apiVersion: v1
    kind: Pod
    metadata:
      name: ssd-benchmark1
    spec:
      containers:
      - name: ssd-benchmark1
        image: nginx
        ports:
          - containerPort: 80
            name: "http-server"
        volumeMounts:
        - name: lun0p1
          mountPath: "/tmp"
      volumes:
        - name: lun0p1
          hostPath:
            path: /var/lib/lun0p1
            type: DirectoryOrCreate
      nodeSelector:
        disktype: ultrassd

2.3.7.2. Ressources de dépannage pour les ensembles de machines qui activent les ultra-disques

Utilisez les informations de cette section pour comprendre et résoudre les problèmes que vous pourriez rencontrer.

2.3.7.2.1. Configuration incorrecte de l'ultra disque

Si une configuration incorrecte du paramètre ultraSSDCapability est spécifiée dans le jeu de machines, le provisionnement de la machine échoue.

Par exemple, si le paramètre ultraSSDCapability est défini sur Disabled, mais qu'un disque ultra est spécifié dans le paramètre dataDisks, le message d'erreur suivant apparaît :

StorageAccountType UltraSSD_LRS can be used only when additionalCapabilities.ultraSSDEnabled is set.
  • Pour résoudre ce problème, vérifiez que la configuration de votre jeu de machines est correcte.
2.3.7.2.2. Paramètres de disque non pris en charge

Si une région, une zone de disponibilité ou une taille d'instance qui n'est pas compatible avec les disques ultra est spécifiée dans le jeu de machines, le provisionnement de la machine échoue. Vérifiez les journaux pour le message d'erreur suivant :

failed to create vm <machine_name> : failure sending request for machine <machine_name> : cannot create vm : compute.VirtualMachinesClient#CreateOrUpdate : Échec de l'envoi de la requête : StatusCode=400 -- Erreur d'origine : Code="BadRequest" Message="Le type de compte de stockage 'UltraSSD_LRS' n'est pas pris en charge <more_information_about_why>."
  • Pour résoudre ce problème, vérifiez que vous utilisez cette fonctionnalité dans un environnement pris en charge et que la configuration de votre jeu de machines est correcte.
2.3.7.2.3. Impossible de supprimer des disques

Si la suppression des ultra-disques en tant que disques de données ne fonctionne pas comme prévu, les machines sont supprimées et les disques de données sont orphelins. Vous devez supprimer les disques orphelins manuellement si vous le souhaitez.

2.3.8. Activation des clés de chiffrement gérées par le client pour un ensemble de machines

Vous pouvez fournir une clé de chiffrement à Azure pour chiffrer les données sur les disques gérés au repos. Vous pouvez activer le chiffrement côté serveur avec des clés gérées par le client en utilisant l'API Machine.

Un Azure Key Vault, un ensemble de chiffrement de disque et une clé de chiffrement sont nécessaires pour utiliser une clé gérée par le client. Le jeu de chiffrement de disque doit se trouver dans un groupe de ressources auquel le Cloud Credential Operator (CCO) a accordé des autorisations. Si ce n'est pas le cas, un rôle de lecteur supplémentaire doit être accordé à l'ensemble de chiffrement de disque.

Procédure

  • Configurez le cryptage du disque dans le champ providerSpec de votre fichier YAML de configuration de la machine. Par exemple :

    providerSpec:
      value:
        osDisk:
          diskSizeGB: 128
          managedDisk:
            diskEncryptionSet:
              id: /subscriptions/<subscription_id>/resourceGroups/<resource_group_name>/providers/Microsoft.Compute/diskEncryptionSets/<disk_encryption_set_name>
            storageAccountType: Premium_LRS

2.3.9. Mise en réseau accélérée pour les machines virtuelles Microsoft Azure

Accelerated Networking utilise la virtualisation d'E/S à racine unique (SR-IOV) pour fournir aux VM Microsoft Azure un chemin plus direct vers le commutateur. Les performances du réseau s'en trouvent améliorées. Cette fonctionnalité peut être activée pendant ou après l'installation.

2.3.9.1. Limitations

Tenez compte des limitations suivantes lorsque vous décidez d'utiliser ou non la mise en réseau accélérée :

  • La mise en réseau accélérée n'est prise en charge que sur les clusters où l'API Machine est opérationnelle.
  • Bien que la configuration minimale requise pour un nœud de travail Azure soit de deux vCPU, Accelerated Networking nécessite une taille de VM Azure comprenant au moins quatre vCPU. Pour répondre à cette exigence, vous pouvez modifier la valeur de vmSize dans votre jeu de machines. Pour plus d'informations sur les tailles de VM Azure, consultez la documentation Microsoft Azure.

  • Lorsque cette fonctionnalité est activée sur un cluster Azure existant, seuls les nœuds nouvellement provisionnés sont concernés. Les nœuds en cours d'exécution ne sont pas rapprochés. Pour activer la fonctionnalité sur tous les nœuds, vous devez remplacer chaque machine existante. Cette opération peut être effectuée pour chaque machine individuellement, ou en réduisant le nombre de réplicas à zéro, puis en l'augmentant jusqu'au nombre de réplicas souhaité.

2.3.10. Ajouter un nœud GPU à un cluster OpenShift Container Platform existant

Vous pouvez copier et modifier la configuration d'un ensemble de machines de calcul par défaut pour créer un ensemble de machines et des machines compatibles avec le GPU pour le fournisseur de cloud Azure.

Le tableau suivant énumère les types d'instance validés :

vmSizeAccélérateur GPU NVIDIANombre maximal de GPUL'architecture

Standard_NC24s_v3

V100

4

x86

Standard_NC4as_T4_v3

T4

1

x86

ND A100 v4

A100

8

x86

Note

Par défaut, les abonnements Azure n'ont pas de quota pour les types d'instances Azure avec GPU. Les clients doivent demander une augmentation de quota pour les familles d'instances Azure listées ci-dessus.

Procédure

  1. Affichez les machines et les ensembles de machines qui existent dans l'espace de noms openshift-machine-api en exécutant la commande suivante. Chaque ensemble de machines de calcul est associé à une zone de disponibilité différente dans la région Azure. Le programme d'installation équilibre automatiquement la charge des machines de calcul entre les zones de disponibilité.

    $ oc get machineset -n openshift-machine-api

    Exemple de sortie

    NAME                              DESIRED   CURRENT   READY   AVAILABLE   AGE
    myclustername-worker-centralus1   1         1         1       1           6h9m
    myclustername-worker-centralus2   1         1         1       1           6h9m
    myclustername-worker-centralus3   1         1         1       1           6h9m

  2. Faites une copie de l'une des définitions de compute MachineSet existantes et produisez le résultat dans un fichier YAML en exécutant la commande suivante. Ce fichier servira de base à la définition de l'ensemble de machines de calcul compatibles avec le GPU.

    $ oc get machineset -n openshift-machine-api myclustername-worker-centralus1 -o yaml > machineset-azure.yaml
  3. Voir le contenu du jeu de machines :

    $ cat machineset-azure.yaml

    Exemple de fichier machineset-azure.yaml

    apiVersion: machine.openshift.io/v1beta1
    kind: MachineSet
    metadata:
      annotations:
        machine.openshift.io/GPU: "0"
        machine.openshift.io/memoryMb: "16384"
        machine.openshift.io/vCPU: "4"
      creationTimestamp: "2023-02-06T14:08:19Z"
      generation: 1
      labels:
        machine.openshift.io/cluster-api-cluster: myclustername
        machine.openshift.io/cluster-api-machine-role: worker
        machine.openshift.io/cluster-api-machine-type: worker
      name: myclustername-worker-centralus1
      namespace: openshift-machine-api
      resourceVersion: "23601"
      uid: acd56e0c-7612-473a-ae37-8704f34b80de
    spec:
      replicas: 1
      selector:
        matchLabels:
          machine.openshift.io/cluster-api-cluster: myclustername
          machine.openshift.io/cluster-api-machineset: myclustername-worker-centralus1
      template:
        metadata:
          labels:
            machine.openshift.io/cluster-api-cluster: myclustername
            machine.openshift.io/cluster-api-machine-role: worker
            machine.openshift.io/cluster-api-machine-type: worker
            machine.openshift.io/cluster-api-machineset: myclustername-worker-centralus1
        spec:
          lifecycleHooks: {}
          metadata: {}
          providerSpec:
            value:
              acceleratedNetworking: true
              apiVersion: machine.openshift.io/v1beta1
              credentialsSecret:
                name: azure-cloud-credentials
                namespace: openshift-machine-api
              diagnostics: {}
              image:
                offer: ""
                publisher: ""
                resourceID: /resourceGroups/myclustername-rg/providers/Microsoft.Compute/galleries/gallery_myclustername_n6n4r/images/myclustername-gen2/versions/latest
                sku: ""
                version: ""
              kind: AzureMachineProviderSpec
              location: centralus
              managedIdentity: myclustername-identity
              metadata:
                creationTimestamp: null
              networkResourceGroup: myclustername-rg
              osDisk:
                diskSettings: {}
                diskSizeGB: 128
                managedDisk:
                  storageAccountType: Premium_LRS
                osType: Linux
              publicIP: false
              publicLoadBalancer: myclustername
              resourceGroup: myclustername-rg
              spotVMOptions: {}
              subnet: myclustername-worker-subnet
              userDataSecret:
                name: worker-user-data
              vmSize: Standard_D4s_v3
              vnet: myclustername-vnet
              zone: "1"
    status:
      availableReplicas: 1
      fullyLabeledReplicas: 1
      observedGeneration: 1
      readyReplicas: 1
      replicas: 1

  4. Faites une copie du fichier machineset-azure.yaml en exécutant la commande suivante :

    $ cp machineset-azure.yaml machineset-azure-gpu.yaml
  5. Mettez à jour les champs suivants dans machineset-azure-gpu.yaml:

    • Remplacer .metadata.name par un nom contenant gpu.
    • Modifier .spec.selector.matchLabels["machine.openshift.io/cluster-api-machineset"] pour qu'il corresponde au nouveau nom .metadata.
    • Modifier .spec.template.metadata.labels["machine.openshift.io/cluster-api-machineset"] pour qu'il corresponde au nouveau .metadata.name.
    • Remplacer .spec.template.spec.providerSpec.value.vmSize par Standard_NC4as_T4_v3.

      Exemple de fichier machineset-azure-gpu.yaml

      apiVersion: machine.openshift.io/v1beta1
      kind: MachineSet
      metadata:
        annotations:
          machine.openshift.io/GPU: "1"
          machine.openshift.io/memoryMb: "28672"
          machine.openshift.io/vCPU: "4"
        creationTimestamp: "2023-02-06T20:27:12Z"
        generation: 1
        labels:
          machine.openshift.io/cluster-api-cluster: myclustername
          machine.openshift.io/cluster-api-machine-role: worker
          machine.openshift.io/cluster-api-machine-type: worker
        name: myclustername-nc4ast4-gpu-worker-centralus1
        namespace: openshift-machine-api
        resourceVersion: "166285"
        uid: 4eedce7f-6a57-4abe-b529-031140f02ffa
      spec:
        replicas: 1
        selector:
          matchLabels:
            machine.openshift.io/cluster-api-cluster: myclustername
            machine.openshift.io/cluster-api-machineset: myclustername-nc4ast4-gpu-worker-centralus1
        template:
          metadata:
            labels:
              machine.openshift.io/cluster-api-cluster: myclustername
              machine.openshift.io/cluster-api-machine-role: worker
              machine.openshift.io/cluster-api-machine-type: worker
              machine.openshift.io/cluster-api-machineset: myclustername-nc4ast4-gpu-worker-centralus1
          spec:
            lifecycleHooks: {}
            metadata: {}
            providerSpec:
              value:
                acceleratedNetworking: true
                apiVersion: machine.openshift.io/v1beta1
                credentialsSecret:
                  name: azure-cloud-credentials
                  namespace: openshift-machine-api
                diagnostics: {}
                image:
                  offer: ""
                  publisher: ""
                  resourceID: /resourceGroups/myclustername-rg/providers/Microsoft.Compute/galleries/gallery_myclustername_n6n4r/images/myclustername-gen2/versions/latest
                  sku: ""
                  version: ""
                kind: AzureMachineProviderSpec
                location: centralus
                managedIdentity: myclustername-identity
                metadata:
                  creationTimestamp: null
                networkResourceGroup: myclustername-rg
                osDisk:
                  diskSettings: {}
                  diskSizeGB: 128
                  managedDisk:
                    storageAccountType: Premium_LRS
                  osType: Linux
                publicIP: false
                publicLoadBalancer: myclustername
                resourceGroup: myclustername-rg
                spotVMOptions: {}
                subnet: myclustername-worker-subnet
                userDataSecret:
                  name: worker-user-data
                vmSize: Standard_NC4as_T4_v3
                vnet: myclustername-vnet
                zone: "1"
      status:
        availableReplicas: 1
        fullyLabeledReplicas: 1
        observedGeneration: 1
        readyReplicas: 1
        replicas: 1

  6. Pour vérifier vos modifications, exécutez la commande suivante : diff de la définition originale du calcul et de la nouvelle définition du nœud compatible avec le GPU :

    $ diff machineset-azure.yaml machineset-azure-gpu.yaml

    Exemple de sortie

    14c14
    <   name: myclustername-worker-centralus1
    ---
    >   name: myclustername-nc4ast4-gpu-worker-centralus1
    23c23
    <       machine.openshift.io/cluster-api-machineset: myclustername-worker-centralus1
    ---
    >       machine.openshift.io/cluster-api-machineset: myclustername-nc4ast4-gpu-worker-centralus1
    30c30
    <         machine.openshift.io/cluster-api-machineset: myclustername-worker-centralus1
    ---
    >         machine.openshift.io/cluster-api-machineset: myclustername-nc4ast4-gpu-worker-centralus1
    67c67
    <           vmSize: Standard_D4s_v3
    ---
    >           vmSize: Standard_NC4as_T4_v3

  7. Créez l'ensemble de machines de calcul compatibles avec le GPU à partir du fichier de définition en exécutant la commande suivante :

    $ oc create -f machineset-azure-gpu.yaml

    Exemple de sortie

    machineset.machine.openshift.io/myclustername-nc4ast4-gpu-worker-centralus1 created

  8. Affichez les machines et les ensembles de machines qui existent dans l'espace de noms openshift-machine-api en exécutant la commande suivante. Chaque ensemble de machines de calcul est associé à une zone de disponibilité différente dans la région Azure. Le programme d'installation équilibre automatiquement la charge des machines de calcul entre les zones de disponibilité.

    $ oc get machineset -n openshift-machine-api

    Exemple de sortie

    NAME                                               DESIRED   CURRENT   READY   AVAILABLE   AGE
    clustername-n6n4r-nc4ast4-gpu-worker-centralus1    1         1         1       1           122m
    clustername-n6n4r-worker-centralus1                1         1         1       1           8h
    clustername-n6n4r-worker-centralus2                1         1         1       1           8h
    clustername-n6n4r-worker-centralus3                1         1         1       1           8h

  9. Affichez les machines qui existent dans l'espace de noms openshift-machine-api en exécutant la commande suivante. Vous ne pouvez configurer qu'une machine de calcul par ensemble, mais vous pouvez faire évoluer un ensemble de machines de calcul pour ajouter un nœud dans une région et une zone particulières.

    $ oc get machines -n openshift-machine-api

    Exemple de sortie

    NAME                                                PHASE     TYPE                   REGION      ZONE   AGE
    myclustername-master-0                              Running   Standard_D8s_v3        centralus   2      6h40m
    myclustername-master-1                              Running   Standard_D8s_v3        centralus   1      6h40m
    myclustername-master-2                              Running   Standard_D8s_v3        centralus   3      6h40m
    myclustername-nc4ast4-gpu-worker-centralus1-w9bqn   Running      centralus   1      21m
    myclustername-worker-centralus1-rbh6b               Running   Standard_D4s_v3        centralus   1      6h38m
    myclustername-worker-centralus2-dbz7w               Running   Standard_D4s_v3        centralus   2      6h38m
    myclustername-worker-centralus3-p9b8c               Running   Standard_D4s_v3        centralus   3      6h38m

  10. Affichez les nœuds, les machines et les jeux de machines existants en exécutant la commande suivante. Notez que chaque nœud est une instance d'une définition de machine avec une région Azure et un rôle OpenShift Container Platform spécifiques.

    $ oc get nodes

    Exemple de sortie

    NAME                                                STATUS   ROLES                  AGE     VERSION
    myclustername-master-0                              Ready    control-plane,master   6h39m   v1.25.4+a34b9e9
    myclustername-master-1                              Ready    control-plane,master   6h41m   v1.25.4+a34b9e9
    myclustername-master-2                              Ready    control-plane,master   6h39m   v1.25.4+a34b9e9
    myclustername-nc4ast4-gpu-worker-centralus1-w9bqn   Ready    worker                 14m     v1.25.4+a34b9e9
    myclustername-worker-centralus1-rbh6b               Ready    worker                 6h29m   v1.25.4+a34b9e9
    myclustername-worker-centralus2-dbz7w               Ready    worker                 6h29m   v1.25.4+a34b9e9
    myclustername-worker-centralus3-p9b8c               Ready    worker                 6h31m   v1.25.4+a34b9e9

  11. Afficher la liste des ensembles de machines de calcul :

    $ oc get machineset -n openshift-machine-api

    Exemple de sortie

    NAME                                   DESIRED   CURRENT   READY   AVAILABLE   AGE
    myclustername-worker-centralus1        1         1         1       1           8h
    myclustername-worker-centralus2        1         1         1       1           8h
    myclustername-worker-centralus3        1         1         1       1           8h

  12. Créez l'ensemble de machines de calcul compatibles avec le GPU à partir du fichier de définition en exécutant la commande suivante :

    $ oc create -f machineset-azure-gpu.yaml
  13. Afficher la liste des ensembles de machines de calcul :

    oc get machineset -n openshift-machine-api

    Exemple de sortie

    NAME                                          DESIRED   CURRENT   READY   AVAILABLE   AGE
    myclustername-nc4ast4-gpu-worker-centralus1   1         1         1       1           121m
    myclustername-worker-centralus1               1         1         1       1           8h
    myclustername-worker-centralus2               1         1         1       1           8h
    myclustername-worker-centralus3               1         1         1       1           8h

Vérification

  1. Affichez le jeu de machines que vous avez créé en exécutant la commande suivante :

    $ oc get machineset -n openshift-machine-api | grep gpu

    Le nombre de répliques de MachineSet étant fixé à 1, un nouvel objet Machine est créé automatiquement.

    Exemple de sortie

    myclustername-nc4ast4-gpu-worker-centralus1   1         1         1       1           121m

  2. Affichez l'objet Machine créé par le jeu de machines en exécutant la commande suivante :

    $ oc -n openshift-machine-api get machines | grep gpu

    Exemple de sortie

    myclustername-nc4ast4-gpu-worker-centralus1-w9bqn   Running   Standard_NC4as_T4_v3   centralus   1      21m

Note

Il n'est pas nécessaire de spécifier un espace de noms pour le nœud. La définition du nœud est limitée à la grappe.

2.3.11. Déploiement de l'opérateur de découverte de fonctionnalités des nœuds

Une fois le nœud compatible avec le GPU créé, vous devez le découvrir afin de pouvoir le planifier. Pour ce faire, installez l'opérateur NFD (Node Feature Discovery). L'opérateur NFD identifie les caractéristiques des dispositifs matériels dans les nœuds. Il résout le problème général de l'identification et du catalogage des ressources matérielles dans les nœuds d'infrastructure afin qu'elles puissent être mises à la disposition d'OpenShift Container Platform.

Procédure

  1. Installez l'opérateur de découverte de fonctionnalités Node à partir de OperatorHub dans la console OpenShift Container Platform.
  2. Après avoir installé l'opérateur NFD dans OperatorHub, sélectionnez Node Feature Discovery dans la liste des opérateurs installés et sélectionnez Create instance. Ceci installe les pods nfd-master et nfd-worker, un pod nfd-worker pour chaque nœud de calcul, dans l'espace de noms openshift-nfd.
  3. Vérifiez que l'opérateur est installé et fonctionne en exécutant la commande suivante :

    $ oc get pods -n openshift-nfd

    Exemple de sortie

    NAME                                       READY    STATUS     RESTARTS   AGE
    
    nfd-controller-manager-8646fcbb65-x5qgk    2/2      Running 7  (8h ago)   1d

  4. Recherchez l'Oerator installé dans la console et sélectionnez Create Node Feature Discovery.
  5. Sélectionnez Create pour créer une ressource personnalisée NFD. Cela crée des pods NFD dans l'espace de noms openshift-nfd qui interrogent les nœuds OpenShift Container Platform à la recherche de ressources matérielles et les cataloguent.

Vérification

  1. Après une construction réussie, vérifiez qu'un pod NFD fonctionne sur chaque nœud en exécutant la commande suivante :

    $ oc get pods -n openshift-nfd

    Exemple de sortie

    NAME                                       READY   STATUS      RESTARTS        AGE
    nfd-controller-manager-8646fcbb65-x5qgk    2/2     Running     7 (8h ago)      12d
    nfd-master-769656c4cb-w9vrv                1/1     Running     0               12d
    nfd-worker-qjxb2                           1/1     Running     3 (3d14h ago)   12d
    nfd-worker-xtz9b                           1/1     Running     5 (3d14h ago)   12d

    L'opérateur NFD utilise les identifiants PCI des fournisseurs pour identifier le matériel dans un nœud. NVIDIA utilise l'ID PCI 10de.

  2. Affichez le GPU NVIDIA découvert par l'opérateur NFD en exécutant la commande suivante :

    $ oc describe node ip-10-0-132-138.us-east-2.compute.internal | egrep 'Roles|pci'

    Exemple de sortie

    Roles: worker
    
    feature.node.kubernetes.io/pci-1013.present=true
    
    feature.node.kubernetes.io/pci-10de.present=true
    
    feature.node.kubernetes.io/pci-1d0f.present=true

    10de apparaît dans la liste des caractéristiques du nœud compatible avec le GPU. Cela signifie que l'opérateur NFD a correctement identifié le nœud de l'ensemble de machines équipé d'un GPU.

2.3.11.1. Activation de l'Accelerated Networking sur un cluster Microsoft Azure existant

Vous pouvez activer Accelerated Networking sur Azure en ajoutant acceleratedNetworking à votre fichier YAML machine set.

Conditions préalables

  • Disposer d'un cluster Microsoft Azure existant où l'API Machine est opérationnelle.

Procédure

  • Ajoutez ce qui suit au champ providerSpec:

    providerSpec:
      value:
        acceleratedNetworking: true 1
        vmSize: <azure-vm-size> 2
    1
    This line enables Accelerated Networking.
    2
    Specify an Azure VM size that includes at least four vCPUs. For information about VM sizes, see Microsoft Azure documentation.

Prochaines étapes

  • Pour activer la fonctionnalité sur les nœuds en cours d'exécution, vous devez remplacer chaque machine existante. Cette opération peut être effectuée pour chaque machine individuellement, ou en réduisant les répliques à zéro, puis en les augmentant jusqu'au nombre de répliques souhaité.

Vérification

  • Sur le portail Microsoft Azure, consultez la page des paramètres Networking pour une machine approvisionnée par le jeu de machines et vérifiez que le champ Accelerated networking est défini sur Enabled.
Red Hat logoGithubRedditYoutubeTwitter

Apprendre

Essayez, achetez et vendez

Communautés

À propos de la documentation Red Hat

Nous aidons les utilisateurs de Red Hat à innover et à atteindre leurs objectifs grâce à nos produits et services avec un contenu auquel ils peuvent faire confiance.

Rendre l’open source plus inclusif

Red Hat s'engage à remplacer le langage problématique dans notre code, notre documentation et nos propriétés Web. Pour plus de détails, consultez leBlog Red Hat.

À propos de Red Hat

Nous proposons des solutions renforcées qui facilitent le travail des entreprises sur plusieurs plates-formes et environnements, du centre de données central à la périphérie du réseau.

© 2024 Red Hat, Inc.