Udostępnij za pośrednictwem


Szybki start: wymagania wstępne dotyczące funkcji operatorów i konteneryzowanych sieci (CNF)

Ten przewodnik Szybki start zawiera zadania wstępne dotyczące funkcji operatorów i konteneryzowanych sieci (CNF). Chociaż można zautomatyzować te zadania w ramach sieciowej bazy danych (definicja usługi sieciowej), w tym przewodniku Szybki start akcje są wykonywane ręcznie.

Uwaga

Zadania przedstawione w tym artykule mogą wymagać trochę czasu na ukończenie.

Uprawnienia

Potrzebna jest subskrypcja platformy Azure z istniejącą grupą zasobów, dla której masz rolę Współautor i Administrator dostępu użytkowników.

Alternatywnie rozszerzenie interfejsu wiersza polecenia AOSM może utworzyć grupę zasobów, w takim przypadku potrzebujesz roli Współautor w tej subskrypcji. Jeśli używasz tej funkcji, musisz dodać do użytkownika rolę Administrator dostępu użytkowników z zakresem tej nowo utworzonej grupy zasobów.

Potrzebna jest również rola Administrator dostępu użytkowników za pośrednictwem grupy zasobów Wydawca definicji funkcji sieci. Grupa zasobów wydawcy definicji funkcji sieci została użyta w przewodniku Szybki start: publikowanie kontenera Nginx jako konteneryzowanej funkcji sieciowej (CNF) . Sprawdź plik input-cnf-nfd.jsonc dla nazwy grupy zasobów.

Ustawianie zmiennych środowiskowych

Dostosuj ustawienia i odwołania zmiennej środowiskowej zgodnie z potrzebami dla danego środowiska. Na przykład w programie Windows PowerShell można ustawić zmienne środowiskowe w następujący sposób:

$env:ARC_RG="<my rg>"

Aby użyć zmiennej środowiskowej, należy odwołać się do niej jako $env:ARC_RG.

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

Tworzenie grupy zasobów

Utwórz grupę zasobów do hostowania klastra usługi Azure Kubernetes Service (AKS). Będzie to również miejsce, w którym zasoby operatora są tworzone w kolejnych przewodnikach.

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

Aprowizuj klaster usługi Azure Kubernetes Service (AKS)

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

Włączanie usługi Azure Arc

Włącz usługę Azure Arc dla klastra usługi Azure Kubernetes Service (AKS). Uruchomienie poniższych poleceń powinno być wystarczające. Jeśli chcesz dowiedzieć się więcej, zobacz Tworzenie lokalizacji niestandardowych i zarządzanie nimi na platformie Kubernetes z obsługą usługi Azure Arc.

Pobieranie pliku konfiguracji dla klastra usługi AKS

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

Tworzenie połączonego klastra

Utwórz klaster:

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

Rejestrowanie subskrypcji

Zarejestruj swoją subskrypcję u dostawcy zasobów Microsoft.ExtendedLocation:

az provider register --namespace Microsoft.ExtendedLocation

Włączanie lokalizacji niestandardowych

Włącz lokalizacje niestandardowe w klastrze:

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

Połączenie klastra

Połącz klaster:

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

Tworzenie rozszerzenia

Utwórz rozszerzenie:

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

Tworzenie lokalizacji niestandardowej

Utwórz lokalizację niestandardową:

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

Pobieranie wartości lokalizacji niestandardowej

Pobierz wartość Lokalizacja niestandardowa. Te informacje są potrzebne, aby wypełnić wartości grupy konfiguracji dla usługi sieciowej lokacji (SNS).

Wyszukaj nazwę lokalizacji niestandardowej (customLocationId) w witrynie Azure Portal, a następnie wybierz pozycję Właściwości. Znajdź pełny identyfikator zasobu w obszarze Informacje podstawowe i poszukaj identyfikatora nazwy pola. Na poniższej ilustracji przedstawiono przykład lokalizacji informacji o identyfikatorze zasobu.

Zrzut ekranu przedstawiający pole wyszukiwania i informacje o właściwościach.

Napiwek

Pełny identyfikator zasobu ma format: /subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/microsoft.extendedlocation/customlocations/{customLocationName}

Tworzenie tożsamości zarządzanej przypisanej przez użytkownika dla usługi sieciowej lokacji

  1. Zapisz następujący skrypt Bicep lokalnie jako wymagania wstępne.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. Uruchom wdrożenie tożsamości zarządzanej przypisanej przez użytkownika, wydając następujące polecenie.

    az deployment group create --name prerequisites --resource-group ${resourceGroup}  --template-file prerequisites.bicep
    
  3. Skrypt tworzy tożsamość zarządzaną.

Pobieranie identyfikatora zasobu dla tożsamości zarządzanej

  1. Uruchom następujące polecenie, aby znaleźć identyfikator zasobu utworzonej tożsamości zarządzanej.

    az deployment group list -g ${resourceGroup} | jq -r --arg Deployment prerequisites '.[] | select(.name == $Deployment).properties.outputs.managedIdentityId.value'
    
  2. Skopiuj i zapisz dane wyjściowe, czyli tożsamość zasobu. Te dane wyjściowe będą potrzebne podczas tworzenia usługi sieciowej lokacji.

Aktualizowanie uprawnień usługi sieci lokacji (SNS)

Aby wykonać te zadania, musisz mieć rolę "Właściciel" lub "Administrator dostępu użytkowników" zarówno w operatorze, jak i grupach zasobów wydawcy definicji funkcji sieciowej. Grupa zasobów operatora została utworzona w poprzednich zadaniach. Grupa zasobów wydawcy definicji funkcji sieciowej została utworzona w przewodniku Szybki start: publikowanie kontenera Nginx jako konteneryzowanej funkcji sieciowej (CNF) i o nazwie nginx-publisher-rg w pliku input.json.

W poprzednich krokach utworzono tożsamość zarządzaną z etykietą identity-for-nginx-sns wewnątrz referencyjnej grupy zasobów. Ta tożsamość odgrywa kluczową rolę w wdrażaniu usługi sieci lokacji (SNS). Wykonaj kroki opisane w następnych sekcjach, aby przyznać tożsamość roli "Współautor" nad grupą zasobów wydawcy i rolą Operatora tożsamości zarządzanej. Za pomocą tej tożsamości usługa sieci lokacji (SNS) uzyskuje wymagane uprawnienia.

Udzielanie roli Współautor w grupie zasobów wydawcy do tożsamości zarządzanej

  1. Uzyskaj dostęp do witryny Azure Portal i otwórz grupę zasobów wydawcy utworzoną podczas publikowania definicji funkcji sieciowej.

  2. W menu bocznym grupy zasobów wybierz pozycję Kontrola dostępu (Zarządzanie dostępem i tożsamościami).

  3. Wybierz pozycję Dodaj przypisanie roli.

    Zrzut ekranu przedstawiający przypisanie roli grupy zasobów wydawcy.

  4. W obszarze Role administratora uprzywilejowanego wybierz pozycję Współautor , a następnie przejdź do pozycji Dalej.

    Zrzut ekranu przedstawiający rolę administratora uprzywilejowanego z wybranym współautorem.

  5. Wybierz pozycję Tożsamość zarządzana.

  6. Wybierz pozycję + Wybierz członków , a następnie znajdź i wybierz tożsamość zarządzaną przypisaną przez użytkownika-for-nginx-sns.

    Zrzut ekranu przedstawiający wybieranie tożsamości zarządzanych z tożsamością zarządzaną przypisaną przez użytkownika.

Udzielanie roli współautora w lokalizacji niestandardowej tożsamości zarządzanej

  1. Uzyskaj dostęp do witryny Azure Portal i otwórz grupę zasobów operatora, operator-rg.

  2. W menu bocznym grupy zasobów wybierz pozycję Kontrola dostępu (Zarządzanie dostępem i tożsamościami).

  3. Wybierz pozycję Dodaj przypisanie roli.

    Zrzut ekranu przedstawiający grupę zasobów wydawcy z dodawaniem przypisania roli do lokalizacji niestandardowej.

  4. W obszarze Role administratora uprzywilejowanego wybierz pozycję Współautor , a następnie przejdź do pozycji Dalej.

    Zrzut ekranu przedstawiający rolę administratora uprzywilejowanego z wybranym współautorem.

  5. Wybierz pozycję Tożsamość zarządzana.

  6. Wybierz pozycję + Wybierz członków , a następnie znajdź i wybierz tożsamość zarządzaną przypisaną przez użytkownika-for-nginx-sns.

    Zrzut ekranu przedstawiający wybieranie tożsamości zarządzanych z tożsamością zarządzaną przypisaną przez użytkownika.

Przyznaj sobie rolę Operator tożsamości zarządzanej

  1. Przejdź do witryny Azure Portal i wyszukaj pozycję Tożsamości zarządzane.

  2. Wybierz pozycję identity-for-nginx-sns z listy Tożsamości zarządzane.

  3. W menu bocznym wybierz pozycję Kontrola dostępu (Zarządzanie dostępem i tożsamościami).

  4. Wybierz pozycję Dodaj przypisanie roli.

    Zrzut ekranu przedstawiający tożsamość dla polecenia nginx SNS add role assignment (Dodawanie przypisania roli).

  5. Wybierz rolę Operator tożsamości zarządzanej, a następnie przejdź do pozycji Dalej.

    Zrzut ekranu przedstawiający dodawanie przypisania roli z wybranym operatorem tożsamości zarządzanej.

  6. Wybierz pozycję Tożsamość zarządzana.

  7. Wybierz pozycję + Wybierz członków i przejdź do tożsamości zarządzanej przypisanej przez użytkownika o nazwie identity-for-nginx-sns i przejdź do przypisania.

    Zrzut ekranu przedstawiający wybieranie tożsamości zarządzanych z tożsamością zarządzaną przypisaną przez użytkownika.

  8. Wybierz pozycję Przejrzyj i przypisz.

Ukończenie wszystkich zadań opisanych w tych artykułach zapewnia, że usługa sieci lokacji (SNS) ma niezbędne uprawnienia do efektywnego działania w określonym środowisku platformy Azure.

Następne kroki