Rychlý start: Požadavky pro operátor a kontejnerizovanou síťovou funkci (CNF)
Tento rychlý start obsahuje požadované úlohy pro operátor a kontejnerizovanou síťovou funkci (CNF). I když je možné tyto úlohy automatizovat v rámci NSD (Network Service Definition), v tomto rychlém startu se akce provádějí ručně.
Poznámka:
Úkoly uvedené v tomto článku mohou nějakou dobu vyžadovat dokončení.
Oprávnění
Potřebujete předplatné Azure se stávající skupinou prostředků, ve které máte roli Přispěvatel a roli Správce uživatelských přístupů.
Případně můžete rozšíření rozhraní příkazového řádku AOSM vytvořit skupinu prostředků za vás, v takovém případě potřebujete roli Přispěvatel pro toto předplatné. Pokud tuto funkci použijete, budete muset do uživatele přidat roli Správce uživatelských přístupů s oborem této nově vytvořené skupiny prostředků.
Potřebujete také roli Správce uživatelských přístupů ve skupině prostředků Vydavatele definic síťových funkcí. Skupina prostředků Publisheru definice síťové funkce byla použita v rychlém startu: Publikování kontejneru Nginx jako kontejnerizované síťové funkce (CNF) Zkontrolujte název skupiny prostředků v souboru input-cnf-nfd.jsonc.
Nastavení proměnných prostředí
Upravte nastavení proměnných prostředí a odkazy podle potřeby pro vaše konkrétní prostředí. Například ve Windows PowerShellu byste nastavili proměnné prostředí následujícím způsobem:
$env:ARC_RG="<my rg>"
Pokud chcete použít proměnnou prostředí, odkazujte na ni jako $env:ARC_RG
na .
export resourceGroup=operator-rg
export location=<region>
export clusterName=<replace with clustername>
export customlocationId=${clusterName}-custom-location
export extensionId=${clusterName}-extension
Vytvoření skupiny prostředků
Vytvořte skupinu prostředků pro hostování clusteru Azure Kubernetes Service (AKS). To bude také místo, kde se prostředky operátora vytvoří v dalších příručkách.
az account set --subscription <subscription>
az group create -n ${resourceGroup} -l ${location}
Zřízení clusteru Azure Kubernetes Service (AKS)
az aks create -g ${resourceGroup} -n ${clusterName} --node-count 3 --generate-ssh-keys
Povolení služby Azure Arc
Povolte Azure Arc pro cluster Azure Kubernetes Service (AKS). Spuštění následujících příkazů by mělo být dostatečné. Další informace najdete v tématu Vytváření a správa vlastních umístění v Kubernetes s podporou Služby Azure Arc.
Načtení konfiguračního souboru pro cluster AKS
az aks get-credentials --resource-group ${resourceGroup} --name ${clusterName}
Vytvoření připojeného clusteru
Vytvořte cluster:
az connectedk8s connect --name ${clusterName} --resource-group ${resourceGroup}
Registrace předplatného
Zaregistrujte své předplatné u poskytovatele prostředků Microsoft.ExtendedLocation:
az provider register --namespace Microsoft.ExtendedLocation
Povolení vlastních umístění
Povolení vlastních umístění v clusteru:
az connectedk8s enable-features -n ${clusterName} -g ${resourceGroup} --features cluster-connect custom-locations
Připojení clusteru
Připojení clusteru:
az connectedk8s connect --name ${clusterName} -g ${resourceGroup} --location $location
Vytvoření rozšíření
Vytvoření rozšíření:
az k8s-extension create -g ${resourceGroup} --cluster-name ${clusterName} --cluster-type connectedClusters --name ${extensionId} --extension-type microsoft.azure.hybridnetwork --release-train preview --scope cluster
Vytvoření vlastního umístění
Vytvořte vlastní umístění:
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
Načtení hodnoty vlastního umístění
Načtěte hodnotu Vlastní umístění. Tyto informace potřebujete k vyplnění hodnot skupiny konfigurace pro vaši síťovou službu lokality (SNS).
Na webu Azure Portal vyhledejte název vlastního umístění (customLocationId) a pak vyberte Vlastnosti. Vyhledejte úplné ID zdroje v oblasti Základní informace a vyhledejte ID názvu pole. Následující obrázek obsahuje příklad umístění informací o ID prostředku.
Tip
Úplné ID prostředku má formát: /subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/microsoft.extendedlocation/customlocations/{customLocationName}
Vytvoření spravované identity přiřazené uživatelem pro síťovou službu lokality
Uložte následující skript Bicep místně jako požadavky.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
Spuštěním následujícího příkazu spusťte nasazení spravované identity přiřazené uživatelem.
az deployment group create --name prerequisites --resource-group ${resourceGroup} --template-file prerequisites.bicep
Skript vytvoří spravovanou identitu.
Načtení ID prostředku pro spravovanou identitu
Spuštěním následujícího příkazu vyhledejte ID prostředku vytvořené spravované identity.
az deployment group list -g ${resourceGroup} | jq -r --arg Deployment prerequisites '.[] | select(.name == $Deployment).properties.outputs.managedIdentityId.value'
Zkopírujte a uložte výstup, což je identita prostředku. Tento výstup potřebujete při vytváření síťové služby lokality.
Aktualizace oprávnění služby SNS (Site Network Service)
K provedení těchto úloh potřebujete roli Vlastník nebo Správce uživatelských přístupů v operátoru i skupinách prostředků Vydavatele definic síťových funkcí. V předchozích úkolech jste vytvořili skupinu prostředků operátora. Skupina prostředků Publisheru definice síťové funkce byla vytvořena v rychlém startu: Publikujte kontejner Nginx jako kontejnerovou síťovou funkci (CNF) a v souboru input.json pojmenujte nginx-publisher-rg.
V předchozích krocích jste v referenční skupině prostředků vytvořili spravovanou identitu s názvem identity for-nginx-sns. Tato identita hraje zásadní roli při nasazování služby SNS (Site Network Service). Postupujte podle kroků v dalších částech a udělte identitě roli Přispěvatel nad skupinou prostředků vydavatele a rolí Operátor spravované identity. Prostřednictvím této identity dosáhne síťová služba lokality (SNS) požadovaná oprávnění.
Udělení role přispěvatele skupině prostředků vydavatele spravované identitě
Přejděte na web Azure Portal a otevřete skupinu prostředků vydavatele vytvořenou při publikování definice síťové funkce.
V boční nabídce skupiny prostředků vyberte Řízení přístupu (IAM).
Zvolte Přidat přiřazení role.
V části Role privilegovaného správce vyberte kategorii Přispěvatel a pokračujte dalším.
Vyberte Spravovaná identita.
Zvolte + Vybrat členy a pak vyhledejte a zvolte identitu spravovanou identitu přiřazenou uživatelem pro-nginx-sns.
Udělení role Přispěvatel nad vlastním umístěním spravované identitě
Přejděte na web Azure Portal a otevřete skupinu prostředků operátora, operátor-rg.
V boční nabídce skupiny prostředků vyberte Řízení přístupu (IAM).
Zvolte Přidat přiřazení role.
V části Role privilegovaného správce vyberte kategorii Přispěvatel a pokračujte dalším.
Vyberte Spravovaná identita.
Zvolte + Vybrat členy a pak vyhledejte a zvolte identitu spravovanou identitu přiřazenou uživatelem pro-nginx-sns.
Udělení role operátora spravované identity sobě
Přejděte na web Azure Portal a vyhledejte spravované identity.
Ze seznamu spravovaných identit vyberte identity for-nginx-sns.
V boční nabídce vyberte Řízení přístupu (IAM).
Zvolte Přidat přiřazení role.
Vyberte roli Operátor spravované identity a pokračujte dalším.
Vyberte Spravovaná identita.
Vyberte a vyberte členy a přejděte na spravovanou identitu přiřazenou uživatelem s názvem identity-for-nginx-sns a pokračujte s přiřazením.
Vyberte Zkontrolovat a přiřadit.
Dokončení všech úkolů uvedených v těchto článcích zajistí, že síťová služba lokality (SNS) má potřebná oprávnění k efektivnímu fungování v rámci zadaného prostředí Azure.