Een Azure Red Hat OpenShift 4-cluster maken
Azure Red Hat OpenShift is een beheerde OpenShift-service waarmee u snel clusters kunt implementeren en beheren. In dit artikel leest u hoe u een Azure Red Hat OpenShift-cluster implementeert met behulp van Azure CLI of Azure Portal.
Voordat u begint
Als u ervoor kiest om de CLI lokaal te installeren en te gebruiken, moet u Azure CLI versie 2.30.0 of hoger uitvoeren. Voer az --version
uit om de versie te bekijken. Als u Azure CLI 2.0 wilt installeren of upgraden, raadpleegt u Azure CLI 2.0 installeren.
Azure Red Hat OpenShift vereist minimaal 40 kernen om een OpenShift-cluster te maken en uit te voeren. Het standaardquotum voor Azure-resources voor een nieuw Azure-abonnement voldoet niet aan deze vereiste. Als u een verhoging van uw resourcelimiet wilt aanvragen, raadpleegt u Standaardquotum: Limieten verhogen per VM-reeks.
Als u bijvoorbeeld het huidige abonnementsquotum wilt controleren van de SKU van de kleinste ondersteunde virtuele-machinefamilie 'Standard DSv3':
LOCATION=eastus az vm list-usage -l $LOCATION \ --query "[?contains(name.value, 'standardDSv3Family')]" \ -o table
Uw machtigingen controleren
In dit artikel maakt u een resourcegroep die het virtuele netwerk voor het cluster bevat. Hiervoor hebt u inzender- en gebruikerstoegangsbeheerdersmachtigingen of eigenaarsmachtigingen nodig, rechtstreeks in het virtuele netwerk of in de resourcegroep of het abonnement dat deze bevat.
U hebt ook voldoende Microsoft Entra-machtigingen nodig (een lidgebruiker van de tenant of een gast die is toegewezen met roltoepassingsbeheerder) voor de hulpprogramma's om namens het cluster een toepassing en service-principal te maken. Zie leden en gasten en wijs beheerders- en niet-beheerdersrollen toe aan gebruikers met Microsoft Entra-id voor meer informatie.
De resourceproviders registreren
Als u meerdere Azure-abonnementen hebt, geeft u de relevante abonnements-id op:
az account set --subscription <SUBSCRIPTION ID>
Registreer de resourceprovider
Microsoft.RedHatOpenShift
:az provider register -n Microsoft.RedHatOpenShift --wait
Registreer de resourceprovider
Microsoft.Compute
:az provider register -n Microsoft.Compute --wait
Registreer de resourceprovider
Microsoft.Storage
:az provider register -n Microsoft.Storage --wait
Registreer de resourceprovider
Microsoft.Authorization
:az provider register -n Microsoft.Authorization --wait
Een pull-geheim voor Red Hat ophalen (optioneel)
Notitie
Met ARO-pull-geheim worden de kosten van de RH OpenShift-licentie voor ARO niet gewijzigd.
Met een Red Hat-pull-geheim kan uw cluster toegang krijgen tot Red Hat-containerregisters, samen met andere inhoud, zoals operators van OperatorHub. Deze stap is optioneel, maar wordt wel aanbevolen. Als u besluit het pull-geheim later toe te voegen, volgt u deze richtlijnen. Het veld cloud.openshift.com
wordt verwijderd uit uw geheim, zelfs als uw pull-geheim dat veld bevat. Dit veld maakt een extra bewakingsfunctie mogelijk, die gegevens naar RedHat verzendt en dus standaard is uitgeschakeld. Als u deze functie wilt inschakelen, raadpleegt u https://docs.openshift.com/container-platform/4.11/support/remote_health_monitoring/enabling-remote-health-reporting.html .
Navigeer naar uw Red Hat OpenShift-clusterbeheerportal en meld u aan.
U moet zich aanmelden bij uw Red Hat-account of een nieuw Red Hat-account maken met uw zakelijke e-mailadres en de voorwaarden accepteren.
Selecteer Pull-geheim downloaden en download een pull-geheim dat moet worden gebruikt met uw ARO-cluster.
Bewaar het opgeslagen bestand
pull-secret.txt
op een veilige plek. Het bestand wordt gebruikt bij elke clusteraanmaak als u een cluster moet maken dat voorbeelden of operators voor Red Hat of gecertificeerde partners bevat.Wanneer u de opdracht
az aro create
uitvoert, kunt u verwijzen naar uw pull-geheim met behulp van de parameter--pull-secret @pull-secret.txt
. Voeraz aro create
uit vanuit de map waarin u hetpull-secret.txt
-bestand hebt opgeslagen. Vervang anders@pull-secret.txt
door@/path/to/my/pull-secret.txt
.Als u uw pull-geheim kopieert of ernaar verwijst in andere scripts, moet uw pull-geheim worden opgemaakt als een geldige JSON-tekenreeks.
Een aangepast domein voorbereiden voor uw cluster (optioneel)
Wanneer u de opdracht az aro create
uitvoert, kunt u een aangepast domein opgeven voor uw cluster, met behulp van de parameter --domain foo.example.com
.
Notitie
Hoewel het toevoegen van een domeinnaam optioneel is bij het maken van een cluster via Azure CLI, is een domeinnaam (of een voorvoegsel dat wordt gebruikt als onderdeel van de automatisch gegenereerde DNS-naam voor de OpenShift-console en API-servers) nodig bij het toevoegen van een cluster via de portal. Zie quickstart: Een Azure Red Hat OpenShift-cluster implementeren met behulp van Azure Portal voor meer informatie.
Als u een aangepast domein voor uw cluster opgeeft, moet u rekening houden met de volgende punten:
Nadat u het cluster hebt gemaakt, moet u twee DNS A-records maken op uw DNS-server voor de
--domain
opgegeven:- api - verwijzend naar het IP-adres van de API-server
- *.apps - wijzend naar het IP-adres voor inkomend verkeer
- Haal deze waarden op door na het maken van het cluster de volgende opdracht uit te voeren:
az aro show -n -g --query '{api:apiserverProfile.ip, ingress:ingressProfiles[0].ip}'
.
De OpenShift-console is beschikbaar op een URL, zoals
https://console-openshift-console.apps.example.com
, in plaats van het ingebouwde domeinhttps://console-openshift-console.apps.<random>.<location>.aroapp.io
.OpenShift maakt standaard gebruik van zelfondertekende certificaten voor alle routes die op
*.apps.example.com
voor aangepaste domeinen worden gemaakt. Als u ervoor kiest om aangepaste DNS te gebruiken nadat u verbinding hebt gemaakt met het cluster, moet u de OpenShift-documentatie volgen om een aangepaste certificeringsinstantie voor uw ingangscontroller en een aangepaste certificeringsinstantie voor uw API-server te configureren.
Een virtueel netwerk met twee lege subnetten maken
Vervolgens maakt u een virtueel netwerk met twee lege subnetten. Als u een bestaand virtueel netwerk hebt dat aan uw behoeften voldoet, kunt u deze stap overslaan.
Stel de volgende variabelen in de shell-omgeving in waarin u de opdrachten en
az
wilt uitvoeren.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
Maak een resourcegroep.
Een Azure-resourcegroep is een logische groep waarin Azure-resources worden geïmplementeerd en beheerd. Wanneer u een resourcegroep maakt, wordt u gevraagd een locatie op te geven. Op deze locatie worden de metagegevens van de resourcegroep opgeslagen. Dit is ook de locatie waar uw resources worden uitgevoerd in Azure als u tijdens het maken van de resource geen andere regio opgeeft. Maak een resourcegroep met de opdracht az group create.
Notitie
Azure Red Hat OpenShift is niet in alle regio’s beschikbaar waarin een Azure-resource kan worden gemaakt. Zie Beschikbare regio's voor informatie over waar Azure Red Hat OpenShift wordt ondersteund.
az group create \ --name $RESOURCEGROUP \ --location $LOCATION
In de volgende voorbeelduitvoer ziet u dat de resourcegroep is gemaakt:
{ "id": "/subscriptions/<guid>/resourceGroups/aro-rg", "location": "eastus", "name": "aro-rg", "properties": { "provisioningState": "Succeeded" }, "type": "Microsoft.Resources/resourceGroups" }
Maak een virtueel netwerk.
Azure Red Hat OpenShift-clusters met OpenShift 4 vereisen een virtueel netwerk met twee lege subnetten voor de hoofd- en werkknooppunten. U kunt hiervoor een nieuw virtueel netwerk maken of een bestaand virtueel netwerk gebruiken.
Maak een nieuw virtueel netwerk in de resourcegroep die u eerder hebt gemaakt:
az network vnet create \ --resource-group $RESOURCEGROUP \ --name aro-vnet \ --address-prefixes 10.0.0.0/22
In de volgende voorbeelduitvoer ziet u dat het virtuele netwerk is gemaakt:
{ "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" } }
Voeg een leeg subnet toe voor de hoofdknooppunten.
az network vnet subnet create \ --resource-group $RESOURCEGROUP \ --vnet-name aro-vnet \ --name master-subnet \ --address-prefixes 10.0.0.0/23
Voeg een leeg subnet toe voor de werkknooppunten.
az network vnet subnet create \ --resource-group $RESOURCEGROUP \ --vnet-name aro-vnet \ --name worker-subnet \ --address-prefixes 10.0.2.0/23
Het cluster maken
Voer de volgende opdracht uit om een cluster te maken. Als u een van de volgende opties wilt gebruiken, wijzigt u de opdracht dienovereenkomstig:
- U kunt eventueel uw Red Hat-pull-geheim doorgeven, zodat uw cluster toegang heeft tot Red Hat-containerregisters, samen met andere inhoud. Voeg het argument
--pull-secret @pull-secret.txt
toe aan de opdracht. - U kunt desgewenst een aangepast domein gebruiken. Voeg het argument
--domain foo.example.com
toe aan de opdracht, en vervangfoo.example.com
door uw eigen aangepaste domein.
Notitie
Het maximum aantal werkknooppunten dat tijdens het maken kan worden gedefinieerd, is 50. U kunt maximaal 250 knooppunten uitschalen nadat het cluster is gemaakt.
az aro create \
--resource-group $RESOURCEGROUP \
--name $CLUSTER \
--vnet aro-vnet \
--master-subnet master-subnet \
--worker-subnet worker-subnet
Na het uitvoeren van de az aro create
opdracht duurt het normaal gesproken ongeveer 45 minuten om een cluster te maken.
Grootschalige ARO-clusters
Als u een Azure Red Hat OpenShift-cluster wilt implementeren met meer dan 100 werkknooppunten, raadpleegt u het azure Red Hat OpenShift-cluster implementeren
Een andere ARO-versie selecteren
U kunt ervoor kiezen om een specifieke versie van ARO te gebruiken bij het maken van uw cluster. Gebruik eerst de CLI om te zoeken naar beschikbare ARO-versies:
az aro get-versions --location <region>
Nadat u de versie hebt gekozen, geeft u deze op met behulp van de --version
parameter in de az aro create
opdracht:
az aro create \
--resource-group $RESOURCEGROUP \
--name $CLUSTER \
--vnet aro-vnet \
--master-subnet master-subnet \
--worker-subnet worker-subnet \
--version <x.y.z>