Självstudie: Skapa ett Azure Red Hat OpenShift 4-kluster

I den här självstudien, som är del ett av tre, förbereder du din miljö för att skapa ett Azure Red Hat OpenShift-kluster som kör OpenShift 4 och skapa ett kluster. Du lär dig att:

  • Konfigurera förutsättningarna
  • Skapa det virtuella nätverk och undernät som krävs
  • Distribuera ett kluster

Innan du börjar

Om du väljer att installera och använda CLI lokalt kräver den här självstudien att du kör Azure CLI version 2.30.0 eller senare. Kör az --version för att hitta versionen. Om du behöver installera eller uppgradera kan du läsa Installera Azure CLI.

Azure Red Hat OpenShift kräver minst 40 kärnor för att kunna skapa och köra ett OpenShift-kluster. Azure-resurskvoten av standardtyp för en ny Azure-prenumeration uppfyller inte det här kravet. Information om hur du begär en ökning av resursgränsen finns i Standardkvot: Öka gränserna per VM-serie.

  • Om du till exempel vill kontrollera den aktuella prenumerationskvoten för den minsta virtuella datorfamiljens SKU "Standard DSv3":

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

Verifiera dina behörigheter

Under den här självstudien skapar du en resursgrupp som innehåller det virtuella nätverket för klustret. För att göra detta behöver du behörigheter som deltagare och administratör för användaråtkomst eller ägarbehörigheter, antingen direkt i det virtuella nätverket eller i resursgruppen eller prenumerationen som innehåller den.

Du behöver också tillräckliga Microsoft Entra-behörigheter (antingen en medlem av klientorganisationen eller en gäst som tilldelats rollen Programadministratör) för att kunna skapa ett program och tjänstens huvudnamn åt dig för klustret. Mer information finns i Medlem och gäster och Tilldela administratörs- och icke-administratörsroller till användare med Microsoft Entra-ID .

Registrera resursprovidrar

  1. Om du har flera Azure-prenumerationer anger du relevant prenumerations-ID:

    az account set --subscription <SUBSCRIPTION ID>
    
  2. Registrera resursprovidern Microsoft.RedHatOpenShift :

    az provider register -n Microsoft.RedHatOpenShift --wait
    
  3. Registrera resursprovidern Microsoft.Compute :

    az provider register -n Microsoft.Compute --wait
    
  4. Registrera resursprovidern Microsoft.Storage :

    az provider register -n Microsoft.Storage --wait
    
  5. Registrera resursprovidern Microsoft.Authorization :

    az provider register -n Microsoft.Authorization --wait
    

Hämta en Red Hat-pullhemlighet (valfritt)

Kommentar

ARO-pullhemlighet ändrar inte kostnaden för RH OpenShift-licensen för ARO.

Med en Red Hat-pullhemlighet kan klustret komma åt Red Hat-containerregister, tillsammans med annat innehåll, till exempel operatorer från OperatorHub. Det här steget är valfritt men rekommenderas. Om du bestämmer dig för att lägga till pull-hemligheten senare följer du den här vägledningen. Fältet cloud.openshift.com tas bort från din hemlighet även om pull-hemligheten innehåller det fältet. Det här fältet aktiverar en extra övervakningsfunktion som skickar data till RedHat och därför inaktiveras som standard. Information om hur du aktiverar den här funktionen finns i https://docs.openshift.com/container-platform/4.11/support/remote_health_monitoring/enabling-remote-health-reporting.html .

  1. Gå till Red Hat OpenShift-klusterhanterarens portal och logga in.

    Du måste logga in på ditt Red Hat-konto eller skapa ett nytt Red Hat-konto med din företags-e-post och godkänna villkoren.

  2. Välj Hämta pull-hemlighet och ladda ned en pull-hemlighet som ska användas med ditt ARO-kluster.

    Skydda den sparade pull-secret.txt filen. Filen används i varje kluster som skapas om du behöver skapa ett kluster som innehåller exempel eller operatorer för Red Hat eller certifierade partner.

    När du kör az aro create kommandot kan du referera till din pull-hemlighet med hjälp av parametern --pull-secret @pull-secret.txt . Kör az aro create från katalogen där du lagrade pull-secret.txt filen. Annars ersätter du @pull-secret.txt med @/path/to/my/pull-secret.txt.

    Om du kopierar din pull-hemlighet eller refererar till den i andra skript ska pull-hemligheten formateras som en giltig JSON-sträng.

Förbereda en anpassad domän för klustret (valfritt)

När du kör az aro create kommandot kan du ange en anpassad domän för klustret med hjälp av parametern --domain foo.example.com .

Kommentar

Även om det är valfritt att lägga till ett domännamn när du skapar ett kluster via Azure CLI, krävs ett domännamn (eller ett prefix som används som en del av det automatiskt genererade DNS-namnet för OpenShift-konsolen och API-servrarna) när du lägger till ett kluster via portalen. Mer information finns i Snabbstart: Distribuera ett Azure Red Hat OpenShift-kluster med hjälp av Azure-portalen .

Observera följande om du anger en anpassad domän för klustret:

  • När du har skapat klustret måste du skapa två DNS A-poster på DNS-servern för den --domain angivna:

    • api – pekar på API-serverns IP-adress
    • *.apps – pekar på den inkommande IP-adressen
    • Hämta dessa värden genom att köra följande kommando när klustret har skapats: az aro show -n -g --query '{api:apiserverProfile.ip, ingress:ingressProfiles[0].ip}'.
  • OpenShift-konsolen kommer att vara tillgänglig på en URL, till exempel https://console-openshift-console.apps.example.com, i stället för den inbyggda domänen https://console-openshift-console.apps.<random>.<location>.aroapp.io.

  • Som standard använder OpenShift självsignerade certifikat för alla vägar som skapats på anpassade domäner *.apps.example.com. Om du väljer att använda anpassad DNS när du har anslutit till klustret måste du följa OpenShift-dokumentationen för att konfigurera en anpassad certifikatutfärdare för din ingresskontrollant och en anpassad CA för DIN API-server.

Skapa ett virtuellt nätverk som innehåller två tomma undernät

Därefter skapar du ett virtuellt nätverk som innehåller två tomma undernät. Om du har ett befintligt virtuellt nätverk som uppfyller dina behov kan du hoppa över det här steget.

  1. Ange följande variabler i gränssnittsmiljön där du ska köra kommandona 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. Skapa en resursgrupp.

    En Azure-resursgrupp är en logisk grupp där Azure-resurser distribueras och hanteras. När du skapar en resursgrupp uppmanas du att ange en plats. Den här platsen är platsen där resursgruppsmetadata lagras, och det är också där dina resurser körs i Azure om du inte anger en annan region när du skapar resurser. Skapa en resursgrupp med hjälp av kommandot az group create.

    Kommentar

    Azure Red Hat OpenShift är inte tillgängligt i alla regioner där en Azure-resursgrupp kan skapas. Se Tillgängliga regioner för information om var Azure Red Hat OpenShift stöds.

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

    Följande exempelutdata visar den resursgrupp som skapats:

    {
      "id": "/subscriptions/<guid>/resourceGroups/aro-rg",
      "location": "eastus",
      "name": "aro-rg",
      "properties": {
        "provisioningState": "Succeeded"
      },
      "type": "Microsoft.Resources/resourceGroups"
    }
    
  3. Skapa ett virtuellt nätverk.

    Azure Red Hat OpenShift-kluster som kör OpenShift 4 kräver ett virtuellt nätverk med två tomma undernät för huvud- och arbetsnoderna. Du kan antingen skapa ett nytt virtuellt nätverk för detta eller använda ett befintligt virtuellt nätverk.

    Skapa ett nytt virtuellt nätverk i samma resursgrupp som du skapade tidigare:

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

    Följande exempelutdata visar det virtuella nätverket som har skapats:

    {
      "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. Lägg till ett tomt undernät för huvudnoderna.

    az network vnet subnet create \
      --resource-group $RESOURCEGROUP \
      --vnet-name aro-vnet \
      --name master-subnet \
      --address-prefixes 10.0.0.0/23
    
  5. Lägg till ett tomt undernät för arbetsnoderna.

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

Skapa klustret

Kör följande kommando för att skapa ett kluster. Om du väljer att använda något av följande alternativ ändrar du kommandot i enlighet med detta:

  • Du kan också skicka din Red Hat-pullhemlighet, vilket gör att klustret kan komma åt Red Hat-containerregister tillsammans med annat innehåll. Lägg till argumentet i --pull-secret @pull-secret.txt kommandot.
  • Du kan också använda en anpassad domän. Lägg till argumentet i --domain foo.example.com kommandot och foo.example.com ersätt med din egen anpassade domän.

Kommentar

Om du lägger till valfria argument i kommandot måste du stänga argumentet på föregående rad i kommandot med ett avslutande omvänt snedstreck.

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

När kommandot har körts az aro create tar det normalt cirka 35 minuter att skapa ett kluster.

Välja en annan ARO-version

Du kan välja att använda en specifik version av ARO när du skapar klustret. Använd först CLI för att fråga efter tillgängliga ARO-versioner:

az aro get-versions --location <region>

När du har valt versionen anger du den med hjälp av parametern --versionaz aro create i kommandot:

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

Nästa steg

I den här självstudiedelen lärde du dig att:

  • Konfigurera förutsättningarna och skapa det nödvändiga virtuella nätverket och undernäten
  • Distribuera ett kluster

Gå vidare till nästa kurs: