Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
In deze zelfstudie leert u hoe u uw AKS-toepassingen (Azure Kubernetes Service) verbindt met Azure OpenAI met behulp van Service Connector met verificatie van de workloadidentiteit. U brengt verbindingen zonder referenties tot stand door een Python-voorbeeldtoepassing te implementeren die communiceert met de Azure OpenAI.
U voert de volgende taken uit:
- Een AKS-cluster en Azure OpenAI-resource maken met GPT-4-model
- Serviceconnector configureren om de verbinding met workloadidentiteit tot stand te brengen
- Een voorbeeldtoepassing klonen
- Containerinstallatiekopieën bouwen en pushen naar Azure Container Registry
- De toepassing implementeren in AKS en de verbinding controleren
- Resources opschonen
Vereisten
- Een Azure-account met een actief abonnement. Gratis een account maken
-
Gebruik de Bash-omgeving in Azure Cloud Shell. Zie Aan de slag met Azure Cloud Shell voor meer informatie.
Installeer de Azure CLI, indien gewenst, om CLI-referentieopdrachten uit te voeren. Als u in Windows of macOS werkt, kunt u Azure CLI uitvoeren in een Docker-container. Zie De Azure CLI uitvoeren in een Docker-container voor meer informatie.
Als u een lokale installatie gebruikt, meldt u zich aan bij Azure CLI met behulp van de opdracht az login. Volg de stappen die worden weergegeven in de terminal, om het verificatieproces te voltooien. Zie Verifiëren bij Azure met behulp van Azure CLI voor andere aanmeldingsopties.
Installeer de Azure CLI-extensie bij het eerste gebruik, wanneer u hierom wordt gevraagd. Zie Extensies gebruiken en beheren met de Azure CLIvoor meer informatie over extensies.
Voer az version uit om de geïnstalleerde versie en afhankelijke bibliotheken te vinden. Voer az upgrade uit om te upgraden naar de nieuwste versie.
- Docker en kubectl voor het beheren van containerinstallatiekopieën en Kubernetes-resources.
- Basiskennis van containers en AKS. Ga aan de slag met het voorbereiden van een toepassing voor AKS.
- Toegangsmachtigingen voor het maken van Azure OpenAI-resources en het implementeren van modellen.
Azure OpenAI- en AKS-resources maken
U start deze zelfstudie door verschillende Azure-resources te maken.
Maak een resourcegroep voor deze zelfstudie.
az group create \ --name MyResourceGroup \ --location eastusMaak een AKS-cluster met de volgende opdracht of door te verwijzen naar de AKS-quickstart. In deze zelfstudie maken we de serviceverbinding en poddefinitie en implementeren we de voorbeeldtoepassing in dit cluster.
az aks create \ --resource-group MyResourceGroup \ --name MyAKSCluster \ --enable-managed-identity \ --node-count 1 \ --generate-ssh-keysMaak verbinding met het cluster met behulp van de opdracht az aks get-credentials .
az aks get-credentials \ --resource-group MyResourceGroup \ --name MyAKSClusterMaak een Azure OpenAI-resource met behulp van de opdracht az cognitiveservices account create . Raadpleeg deze zelfstudie desgewenst voor meer instructies. Azure OpenAI is de doelservice waarmee het AKS-cluster verbinding maakt.
az cognitiveservices account create \ --resource-group MyResourceGroup \ --name MyOpenAI \ --location eastus \ --kind OpenAI \ --sku s0 \ --custom-domain myopenai \ --subscription <SubscriptionID>Implementeer een model met de opdracht az cognitiveservices deployment create . Het model wordt gebruikt in de voorbeeldtoepassing om de verbinding te testen.
az cognitiveservices account deployment create \ --resource-group MyResourceGroup \ --name MyOpenAI \ --deployment-name MyModel \ --model-name gpt-4 \ --model-version 0613 \ --model-format OpenAI \ --sku-name "Standard" \ --capacity 1Maak een ACR (Azure Container Registry) om de containertoepassing op te slaan. Gebruik de opdracht az acr create of raadpleeg deze zelfstudie.
az acr create \ --resource-group MyResourceGroup \ --name myregistry \ --sku StandardSchakel anonieme pull in met behulp van az acr update-opdracht , zodat het AKS-cluster de installatiekopieën in het register kan gebruiken.
az acr update \ --resource-group MyResourceGroup \ --name myregistry \ --anonymous-pull-enabledMaak een door de gebruiker toegewezen beheerde identiteit met de opdracht az identity create of door te verwijzen naar deze zelfstudie. Wanneer de verbinding wordt gemaakt, wordt de door de gebruiker toegewezen beheerde identiteit gebruikt om de workloadidentiteit voor AKS-workloads in te schakelen.
az identity create \ --resource-group MyResourceGroup \ --name MyIdentity
Een serviceverbinding maken van AKS naar Azure OpenAI
Maak een serviceverbinding tussen een AKS-cluster en Azure OpenAI in Azure Portal of de Azure CLI.
Raadpleeg de quickstart voor de AKS-serviceverbinding voor instructies voor het maken van een nieuwe verbinding en vul de instellingen in die verwijzen naar de voorbeelden in de volgende tabel. Laat alle andere instellingen met de standaardwaarden staan.
Tabblad Basisbeginselen:
Instelling Voorbeeldwaarde Beschrijving Kubernetes-naamruimte default De Kubernetes-naamruimte. Servicetype OpenAI-service Het doelservicetype. Verbindingsnaam openai_conn Gebruik de verbindingsnaam die is opgegeven door Service Connector of kies uw eigen verbindingsnaam. Abonnement Mijn abonnement Het Azure-abonnement met uw Azure OpenAI-resource. OpenAI MyOpenAI De Azure OpenAI-doelresource waarmee u verbinding wilt maken. Clienttype Python De programmeertaal of het framework voor de verbindingsconfiguratie. Tabblad Verificatie:
| Verificatie-instelling | Voorbeeldwaarde | Beschrijving |
|---|---|---|
| Verificatietype | Workloadidentiteit | De verificatiemethode om de app te verbinden met Azure OpenAI. Workloadidentiteit wordt aanbevolen voor verbeterde beveiliging. Alternatieve methoden zijn verbindingsreeks en service-principal en vereisen overwegingen voor referentiebeheer. |
| Abonnement | Mijn abonnement | Het abonnement dat de door de gebruiker toegewezen beheerde identiteit bevat. |
| Door de gebruiker toegewezen beheerde identiteit | myidentiteit | De door de gebruiker toegewezen beheerde identiteit die verificatie van workloadidentiteit voor het AKS-cluster mogelijk maakt. |
Zodra de verbinding is gemaakt, kunt u de details ervan bekijken in het deelvenster Serviceconnector .
Python-voorbeeldtoepassing klonen
Kloon de voorbeeldopslagplaats:
git clone https://github.com/Azure-Samples/serviceconnector-aks-samples.gitGa naar de voorbeeldmap van de opslagplaats voor Azure OpenAI:
cd serviceconnector-aks-samples/azure-openai-workload-identityVervang de
<MyModel>tijdelijke aanduiding in hetapp.pybestand door de modelnaam die we hebben geïmplementeerd.
Containerinstallatiekopieën bouwen en pushen naar Azure Container Registry
Bouw en push de installatiekopieën naar uw containerregister met behulp van de Azure CLI az acr build command.
az acr build --registry myregistry --image sc-demo-openai-identity:latest ./Bekijk de installatiekopieën in uw containerregister met behulp van de opdracht az acr repository list .
az acr repository list --name myregistry --output table
AKS implementeren en testen in Azure OpenAI-verbinding
Vervang de tijdelijke aanduidingen in het
pod.yamlbestand in deazure-openai-workload-identitymap.- Vervang
<YourContainerImage>door de naam van de installatiekopie die u eerder hebt gemaakt. Bijvoorbeeld<myregistry>.azurecr.io/<sc-demo-openai-identity>:<latest>. - Vervang door
<ServiceAccountCreatedByServiceConnector>de naam van het serviceaccount. Deze vindt u in Azure Portal, in het deelvenster Serviceconnector . - Vervang door
<SecretCreatedByServiceConnector>de geheime naam. Deze vindt u in Azure Portal, in het deelvenster Serviceconnector .
- Vervang
Implementeer de pod in uw cluster met de
kubectl applyopdracht. Hiermee maakt u een pod met de naam insc-demo-openai-identityde standaardnaamruimte van uw AKS-cluster. Installeerkubectllokaal met behulp van de opdracht az aks install-cli als deze niet is geïnstalleerd.kubectl apply -f pod.yamlControleer of de implementatie is geslaagd door de pod te bekijken met
kubectl.kubectl get pod/sc-demo-openai-identityControleer of de verbinding tot stand is gebracht door de logboeken te bekijken met
kubectl.kubectl logs pod/sc-demo-openai-identity
Resources opschonen
Als u de resources die u in deze zelfstudie hebt gemaakt niet meer nodig hebt, verwijdert u deze door de resourcegroep te verwijderen.
az group delete \
--resource-group MyResourceGroup