Chapitre 4. Configurer un cluster Red Hat High Availability sur Microsoft Azure
Pour configurer un cluster Red Hat High Availability (HA) sur Azure en utilisant des instances de machines virtuelles (VM) Azure comme nœuds de cluster, consultez les sections suivantes. Les procédures de ces sections supposent que vous créez une image personnalisée pour Azure. Vous disposez d'un certain nombre d'options pour obtenir les images RHEL 9 que vous utilisez pour votre cluster. Voir Options d'image Red Hat Enterprise Linux sur Azure pour obtenir des informations sur les options d'image pour Azure.
Les sections suivantes fournissent des informations :
- Procédures préalables à la configuration de votre environnement pour Azure. Après avoir configuré votre environnement, vous pouvez créer et configurer des instances de VM Azure.
- Procédures spécifiques à la création de clusters HA, qui transforment des nœuds individuels en un cluster de nœuds HA sur Azure. Il s'agit notamment des procédures d'installation des packages et des agents de haute disponibilité sur chaque nœud de cluster, de la configuration de la clôture et de l'installation des agents de ressources réseau Azure.
Conditions préalables
- Créez un compte sur le portail client de Red Hat.
- Ouvrez un compte Microsoft Azure avec des privilèges d'administrateur.
- Vous devez installer l'interface de ligne de commande Azure (CLI). Pour plus d'informations, voir Installation de l'interface de ligne de commande Azure.
4.1. Créer des ressources dans Azure
Suivez la procédure suivante pour créer une région, un groupe de ressources, un compte de stockage, un réseau virtuel et un ensemble de disponibilité. Vous avez besoin de ces ressources pour configurer un cluster sur Microsoft Azure.
Procédure
Authentifiez votre système avec Azure et connectez-vous.
$ az login
NoteSi un navigateur est disponible dans votre environnement, l'interface de programmation ouvre votre navigateur sur la page de connexion Azure.
Exemple :
[clouduser@localhost]$ az login To sign in, use a web browser to open the page https://aka.ms/devicelogin and enter the code FDMSCMETZ to authenticate. [ { "cloudName": "AzureCloud", "id": "Subscription ID", "isDefault": true, "name": "MySubscriptionName", "state": "Enabled", "tenantId": "Tenant ID", "user": { "name": "clouduser@company.com", "type": "user" } } ]
Créer un groupe de ressources dans une région Azure.
$ az group create --name resource-group --location azure-region
Exemple :
[clouduser@localhost]$ az group create --name azrhelclirsgrp --location southcentralus { "id": "/subscriptions//resourceGroups/azrhelclirsgrp", "location": "southcentralus", "managedBy": null, "name": "azrhelclirsgrp", "properties": { "provisioningState": "Succeeded" }, "tags": null }
Créer un compte de stockage.
$ az storage account create -l azure-region -n storage-account-name -g resource-group --sku sku_type --kind StorageV2
Exemple :
[clouduser@localhost]$ az storage account create -l southcentralus -n azrhelclistact -g azrhelclirsgrp --sku Standard_LRS --kind StorageV2 { "accessTier": null, "creationTime": "2017-04-05T19:10:29.855470+00:00", "customDomain": null, "encryption": null, "id": "/subscriptions//resourceGroups/azrhelclirsgrp/providers/Microsoft.Storage/storageAccounts/azrhelclistact", "kind": "StorageV2", "lastGeoFailoverTime": null, "location": "southcentralus", "name": "azrhelclistact", "primaryEndpoints": { "blob": "https://azrhelclistact.blob.core.windows.net/", "file": "https://azrhelclistact.file.core.windows.net/", "queue": "https://azrhelclistact.queue.core.windows.net/", "table": "https://azrhelclistact.table.core.windows.net/" }, "primaryLocation": "southcentralus", "provisioningState": "Succeeded", "resourceGroup": "azrhelclirsgrp", "secondaryEndpoints": null, "secondaryLocation": null, "sku": { "name": "Standard_LRS", "tier": "Standard" }, "statusOfPrimary": "available", "statusOfSecondary": null, "tags": {}, "type": "Microsoft.Storage/storageAccounts" }
Obtenir la chaîne de connexion du compte de stockage.
$ az storage account show-connection-string -n storage-account-name -g resource-group
Exemple :
[clouduser@localhost]$ az storage account show-connection-string -n azrhelclistact -g azrhelclirsgrp { "connectionString": "DefaultEndpointsProtocol=https;EndpointSuffix=core.windows.net;AccountName=azrhelclistact;AccountKey=NreGk...==" }
Exportez la chaîne de connexion en la copiant et en la collant dans la commande suivante. Cette chaîne connecte votre système au compte de stockage.
$ export AZURE_STORAGE_CONNECTION_STRING="storage-connection-string"
Exemple :
[clouduser@localhost]$ export AZURE_STORAGE_CONNECTION_STRING="DefaultEndpointsProtocol=https;EndpointSuffix=core.windows.net;AccountName=azrhelclistact;AccountKey=NreGk...=="
Créer le conteneur de stockage.
$ az storage container create -n container-name
Exemple :
[clouduser@localhost]$ az storage container create -n azrhelclistcont { "created": true }
Créez un réseau virtuel. Tous les nœuds du cluster doivent se trouver dans le même réseau virtuel.
$ az network vnet create -g resource group --name vnet-name --subnet-name subnet-name
Exemple :
[clouduser@localhost]$ az network vnet create --resource-group azrhelclirsgrp --name azrhelclivnet1 --subnet-name azrhelclisubnet1 { "newVNet": { "addressSpace": { "addressPrefixes": [ "10.0.0.0/16" ] }, "dhcpOptions": { "dnsServers": [] }, "etag": "W/\"\"", "id": "/subscriptions//resourceGroups/azrhelclirsgrp/providers/Microsoft.Network/virtualNetworks/azrhelclivnet1", "location": "southcentralus", "name": "azrhelclivnet1", "provisioningState": "Succeeded", "resourceGroup": "azrhelclirsgrp", "resourceGuid": "0f25efee-e2a6-4abe-a4e9-817061ee1e79", "subnets": [ { "addressPrefix": "10.0.0.0/24", "etag": "W/\"\"", "id": "/subscriptions//resourceGroups/azrhelclirsgrp/providers/Microsoft.Network/virtualNetworks/azrhelclivnet1/subnets/azrhelclisubnet1", "ipConfigurations": null, "name": "azrhelclisubnet1", "networkSecurityGroup": null, "provisioningState": "Succeeded", "resourceGroup": "azrhelclirsgrp", "resourceNavigationLinks": null, "routeTable": null } ], "tags": {}, "type": "Microsoft.Network/virtualNetworks", "virtualNetworkPeerings": null } }
Créez un ensemble de disponibilité. Tous les nœuds du cluster doivent se trouver dans le même ensemble de disponibilité.
$ az vm availability-set create --name MyAvailabilitySet --resource-group MyResourceGroup
Exemple :
[clouduser@localhost]$ az vm availability-set create --name rhelha-avset1 --resource-group azrhelclirsgrp { "additionalProperties": {}, "id": "/subscriptions/.../resourceGroups/azrhelclirsgrp/providers/Microsoft.Compute/availabilitySets/rhelha-avset1", "location": "southcentralus", "name": “rhelha-avset1", "platformFaultDomainCount": 2, "platformUpdateDomainCount": 5, [omitted]
Ressources supplémentaires