Delen via


Quickstart: Vereisten voor operator- en containernetwerkfunctie (CNF)

Deze quickstart bevat de vereiste taken voor De functie Operator en Containerized Network Function (CNF). Hoewel het mogelijk is om deze taken binnen uw NSD (Network Service Definition) te automatiseren, worden de acties in deze quickstart handmatig uitgevoerd.

Notitie

Het kan enige tijd duren voordat de taken in dit artikel zijn voltooid.

Machtigingen

U hebt een Azure-abonnement nodig met een bestaande resourcegroep waarvoor u de rol Inzender en de rol Beheerder voor gebruikerstoegang hebt.

De AOSM CLI-extensie kan ook de resourcegroep voor u maken. In dat geval hebt u de rol Inzender voor dit abonnement nodig. Als u deze functie gebruikt, moet u de rol Gebruikerstoegangsbeheerder toevoegen aan uw gebruiker met het bereik van deze zojuist gemaakte resourcegroep.

U hebt ook de rol Administrator voor gebruikerstoegang nodig via de resourcegroep uitgever van de netwerkfunctiedefinitie. De resourcegroep Network Function Definition Publisher is gebruikt in quickstart: Nginx-container publiceren als CNF (Containerized Network Function). Controleer het bestand input-cnf-nfd.jsonc voor de naam van de resourcegroep.

Omgevingsvariabelen instellen

Pas de instellingen en verwijzingen van de omgevingsvariabele naar wens aan voor uw specifieke omgeving. In Windows PowerShell stelt u bijvoorbeeld de omgevingsvariabelen als volgt in:

$env:ARC_RG="<my rg>"

Als u een omgevingsvariabele wilt gebruiken, verwijst u ernaar als $env:ARC_RG.

export resourceGroup=operator-rg
export location=<region>
export clusterName=<replace with clustername>
export customlocationId=${clusterName}-custom-location
export extensionId=${clusterName}-extension

Een resourcegroep maken

Maak een resourcegroep voor het hosten van uw AKS-cluster (Azure Kubernetes Service). Hier worden ook uw Operator-resources gemaakt in latere handleidingen.

az account set --subscription <subscription>
az group create -n ${resourceGroup} -l ${location}

AKS-cluster (Azure Kubernetes Service) inrichten

az aks create -g ${resourceGroup} -n ${clusterName} --node-count 3 --generate-ssh-keys

Azure Arc inschakelen

Schakel Azure Arc in voor het AKS-cluster (Azure Kubernetes Service). Als u de onderstaande opdrachten uitvoert, moet u voldoende zijn. Zie Aangepaste locaties maken en beheren in Kubernetes met Azure Arc voor meer informatie.

Het configuratiebestand voor het AKS-cluster ophalen

az aks get-credentials --resource-group ${resourceGroup} --name ${clusterName}

Een verbonden cluster maken

Maak het cluster:

az connectedk8s connect --name ${clusterName} --resource-group ${resourceGroup}

Uw abonnement registreren

Registreer uw abonnement bij de resourceprovider Microsoft.ExtendedLocation:

az provider register --namespace Microsoft.ExtendedLocation

Aangepaste locaties inschakelen

Aangepaste locaties inschakelen op het cluster:

az connectedk8s enable-features -n ${clusterName} -g ${resourceGroup} --features cluster-connect custom-locations

Cluster verbinden

Verbinding maken met het cluster:

az connectedk8s connect --name ${clusterName} -g ${resourceGroup} --location $location

Extensie maken

Een extensie maken:

az k8s-extension create -g ${resourceGroup} --cluster-name ${clusterName} --cluster-type connectedClusters --name ${extensionId} --extension-type microsoft.azure.hybridnetwork --release-train preview --scope cluster

Aangepaste locatie maken

Een aangepaste locatie maken:

export ConnectedClusterResourceId=$(az connectedk8s show --resource-group ${resourceGroup} --name ${clusterName} --query id -o tsv)
export ClusterExtensionResourceId=$(az k8s-extension show -c $clusterName -n $extensionId -t connectedClusters -g ${resourceGroup} --query id -o tsv)
az customlocation create -g ${resourceGroup} -n ${customlocationId} --namespace "azurehybridnetwork" --host-resource-id $ConnectedClusterResourceId --cluster-extension-ids $ClusterExtensionResourceId

Aangepaste locatiewaarde ophalen

Haal de waarde van de aangepaste locatie op. U hebt deze informatie nodig om de waarden van de configuratiegroep voor uw SNS (Site Network Service) in te vullen.

Zoek in Azure Portal naar de naam van de aangepaste locatie (customLocationId) en selecteer vervolgens Eigenschappen. Zoek de volledige resource-id onder het informatiegebied Essentials en zoek naar veldnaam-id. In de volgende afbeelding ziet u een voorbeeld van de locatie van de resource-id.

Schermopname van het zoekveld en de informatie over eigenschappen.

Tip

De volledige resource-id heeft de volgende indeling: /subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/microsoft.extendedlocation/customlocations/{customLocationName}

Door de gebruiker toegewezen beheerde identiteit maken voor de sitenetwerkservice

  1. Sla het volgende Bicep-script lokaal op als prerequisites.bicep.

    param location string = resourceGroup().location
    param identityName string = 'identity-for-nginx-sns'
    
    
    resource managedIdentity 'Microsoft.ManagedIdentity/userAssignedIdentities@2018-11-30' = {
      name: identityName
      location: location
    }
    output managedIdentityId string = managedIdentity.id
    
  2. Start de implementatie van de door de gebruiker toegewezen beheerde identiteit door de volgende opdracht uit te geven.

    az deployment group create --name prerequisites --resource-group ${resourceGroup}  --template-file prerequisites.bicep
    
  3. Het script maakt een beheerde identiteit.

Resource-id voor beheerde identiteit ophalen

  1. Voer de volgende opdracht uit om de resource-id van de gemaakte beheerde identiteit te vinden.

    az deployment group list -g ${resourceGroup} | jq -r --arg Deployment prerequisites '.[] | select(.name == $Deployment).properties.outputs.managedIdentityId.value'
    
  2. Kopieer en sla de uitvoer op. Dit is de resource-id. U hebt deze uitvoer nodig wanneer u de sitenetwerkservice maakt.

SNS-machtigingen (Site Network Service) bijwerken

Als u deze taken wilt uitvoeren, hebt u de rol 'Eigenaar' of 'Beheerder voor gebruikerstoegang' nodig in zowel de operator als de Publisher-resourcegroepen voor de definitie van de netwerkfunctie. U hebt de operatorresourcegroep gemaakt in eerdere taken. De resourcegroep Network Function Definition Publisher is gemaakt in quickstart: Publish Nginx container as Containerized Network Function (CNF) en named nginx-publisher-rg in het bestand input.json.

In eerdere stappen hebt u een beheerde identiteit gemaakt met het label identity-for-nginx-sns in uw referentieresourcegroep. Deze identiteit speelt een cruciale rol bij het implementeren van de SNS (Site Network Service). Volg de stappen in de volgende secties om de identiteit de rol Inzender te verlenen voor de Publisher-resourcegroep en de rol Managed Identity Operator voor zichzelf. Via deze identiteit bereikt de Site Network Service (SNS) de vereiste machtigingen.

De rol Inzender verlenen via de resourcegroep van de uitgever aan beheerde identiteit

  1. Open De Azure-portal en open de publisher-resourcegroep die is gemaakt bij het publiceren van de definitie van de netwerkfunctie.

  2. Selecteer toegangsbeheer (IAM) in het zijmenu van de resourcegroep.

  3. Kies Roltoewijzing toevoegen.

    Schermopname van de resourcegroep van de uitgever die roltoewijzing toevoegt.

  4. Kies Inzender onder de rollen Bevoegde beheerder en ga vervolgens verder met Volgende.

    Schermopname van de bevoorrechte beheerdersrol met inzender geselecteerd.

  5. Selecteer Beheerde identiteit.

  6. Kies + Leden selecteren en kies vervolgens de door de gebruiker toegewezen beheerde identiteit-for-nginx-sns.

    Schermopname van de geselecteerde beheerde identiteiten met door de gebruiker toegewezen beheerde identiteit.

Rol Inzender verlenen via aangepaste locatie aan beheerde identiteit

  1. Open Azure Portal en open de operatorresourcegroep, operator-rg.

  2. Selecteer toegangsbeheer (IAM) in het zijmenu van de resourcegroep.

  3. Kies Roltoewijzing toevoegen.

    Schermopname van de uitgeverresourcegroep die roltoewijzing toevoegt aan een aangepaste locatie.

  4. Kies Inzender onder de rollen Bevoegde beheerder en ga vervolgens verder met Volgende.

    Schermopname van de bevoorrechte beheerdersrol met inzender geselecteerd.

  5. Selecteer Beheerde identiteit.

  6. Kies + Leden selecteren en kies vervolgens de door de gebruiker toegewezen beheerde identiteit-for-nginx-sns.

    Schermopname van de geselecteerde beheerde identiteiten met door de gebruiker toegewezen beheerde identiteit.

De rol Managed Identity Operator aan zichzelf toekennen

  1. Ga naar Azure Portal en zoek naar beheerde identiteiten.

  2. Selecteer identity-for-nginx-sns in de lijst met beheerde identiteiten.

  3. Selecteer Toegangsbeheer (IAM) in het zijmenu.

  4. Kies Roltoewijzing toevoegen.

    Schermopname van identiteit voor nginx SNS-roltoewijzing toevoegen.

  5. Selecteer de rol Managed Identity Operator en ga vervolgens verder met Volgende.

    Schermopname van het toevoegen van roltoewijzing met een operator voor beheerde identiteit geselecteerd.

  6. Selecteer Beheerde identiteit.

  7. Selecteer + Leden selecteren en navigeer naar de door de gebruiker toegewezen beheerde identiteit met de naam identity-for-nginx-sns en ga verder met de toewijzing.

    Schermopname van de geselecteerde beheerde identiteiten met door de gebruiker toegewezen beheerde identiteit.

  8. Selecteer Controleren en toewijzen.

Het voltooien van alle taken die in deze artikelen worden beschreven, zorgen ervoor dat de SNS (Site Network Service) over de benodigde machtigingen beschikt om effectief te functioneren binnen de opgegeven Azure-omgeving.

Volgende stappen