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 dit artikel leert u hoe u de verbonden registerextensie implementeert in een Kubernetes-cluster met Arc met behulp van Azure CLI.
De verbonden registerfunctie van Azure Container Registry maakt efficiënt beheer en toegang tot in containers geplaatste workloads mogelijk, zowel on-premises als op externe sites. Het implementeren van de verbonden register arc-extensie op Kubernetes-clusters met Arc vereenvoudigt het beheer en de toegang van deze workloads.
Vereiste voorwaarden
Een Azure Container Registry (ACR) met de Premium-servicelaag (SKU), met ten minste één opslagplaats en een verbonden register. Als u nog geen verbonden registerresource hebt, volgt u de stappen in Een verbonden register maken.
De nieuwste versie van Azure CLI.
De nieuwste versies van de
connectedk8senk8s-extensionAzure CLI-extensies. Voer de volgende opdrachten uit om deze extensies te installeren:az extension add --name k8s-extension az extension add --name connectedk8s
De verbonden registerextensie implementeren in het Kubernetes-cluster met Arc
Door de Arc-uitbreiding van het verbonden register te implementeren, kunt u container afbeeldingen en andere Open Container Initiative (OCI) artefacten synchroniseren met uw ACR-register. De implementatie helpt de toegang tot registerartefacten te versnellen en maakt het bouwen van geavanceerde scenario's mogelijk. De implementatie van de extensie zorgt voor een veilige distributie van vertrouwen tussen het verbonden register en alle clientknooppunten in het cluster en installeert de cert-manager-service voor TLS-versleuteling (Transport Layer Security).
Zie Een Kubernetes-clusterextensie met Azure Arc implementeren en beheren voor meer informatie over het implementeren van extensies voor Kubernetes-clusters met Azure Arc.
Genereer de verbindingsreeks en beveiligde instellingen JSON-bestand
Voor een veilige implementatie van de verbonden registerextensie genereert u de verbindingsreeks, inclusief een nieuw wachtwoord en de specificatie van het transportprotocol, en slaat u de details op in het protected-settings-extension.json bestand.
cat << EOF > protected-settings-extension.json
{
"connectionString": "$(az acr connected-registry get-settings \
--name myconnectedregistry \
--registry myacrregistry \
--parent-protocol https \
--generate-password 1 \
--query ACR_REGISTRY_CONNECTION_STRING --output tsv --yes)"
}
EOF
De verbonden registerextensie implementeren
Implementeer vervolgens de verbonden register extensie naar uw Kubernetes-cluster met Arc-functionaliteit en verwijzing naar het JSON-bestand dat u hebt gemaakt. Gebruik de opdracht az k8s-extension create :
az k8s-extension create --cluster-name myarck8scluster \
--cluster-type connectedClusters \
--extension-type Microsoft.ContainerRegistry.ConnectedRegistry \
--name myconnectedregistry \
--resource-group myresourcegroup \
--config service.clusterIP=192.100.100.1 \
--config-protected-file protected-settings-extension.json
--auto-upgrade-minor-version true
De clusterIP moet afkomstig zijn van het IP-adresbereik van het clustersubnet. De service.clusterIP parameter specificeert het IP-adres van de verbonden registerservice in het cluster. Zorg ervoor dat het IP-adres dat u opgeeft service.clusterIP binnen het toegewezen IP-bereik van de service valt dat is gedefinieerd tijdens de initiële configuratie van het cluster, meestal gevonden in de netwerkinstellingen van het cluster. Als het service.clusterIP bereik zich niet binnen dit bereik bevindt, werkt u het bij naar een IP-adres dat zich zowel binnen het geldige bereik bevindt als momenteel niet wordt gebruikt door een andere service.
Aanbeveling
In dit voorbeeld worden automatische upgrades voor de verbonden registerextensie ingeschakeld wanneer er een nieuwe versie beschikbaar is. Als u liever niet automatisch een upgrade uitvoert, gebruikt u --auto-upgrade-minor-version false.
Als u een specifieke versie van de verbonden registerextensie wilt implementeren, neemt u de parameter op in de --version <version number> opdracht az-k8s-extension-create .
Implementatie van verbonden registerextensie controleren
Als u de implementatie van de verbonden registerextensie in het Kubernetes-cluster met Arc wilt controleren, voert u de opdracht az k8s-extension show uit om de implementatiestatus van de verbonden registerextensie te controleren:
az k8s-extension show
--name myconnectedregistry \
--cluster-name myarck8scluster \
--resource-group myresourcegroup \
--cluster-type connectedClusters
Zie Details van de extensie weergeven voor een voorbeeld van de uitvoer.
Bekijk vervolgens de status en toestand van elke aangesloten registratie met de opdracht az acr connected-registry list :
az acr connected-registry list --registry myacrregistry \
--output table
U zou uitvoer moeten zien die lijkt op het volgende voorbeeld:
| NAME | MODE | CONNECTION STATE | PARENT | LOGIN SERVER | LAST SYNC(UTC) |
|------|------|------------------|--------|--------------|----------------|
| myconnectedregistry | ReadWrite | online | myacrregistry | myacrregistry.azurecr.io | 2026-01-09 12:00:00 |
| myreadonlyacr | ReadOnly | offline | myacrregistry | myacrregistry.azurecr.io | 2026-01-09 12:00:00 |
Gebruik az acr connected-registry show voor meer informatie over een specifiek verbonden register:
az acr connected-registry show --registry myacrregistry \
--name myreadonlyacr \
--output table
Met deze opdracht wordt uitvoer weergegeven die vergelijkbaar is met het volgende voorbeeld:
| NAME | MODE | CONNECTION STATE | PARENT | LOGIN SERVER | LAST SYNC(UTC) | SYNC SCHEDULE | SYNC WINDOW |
| ------------------- | --------- | ---------------- | ------------- | ------------------------ | ------------------- | ------------- | ----------------- |
| myconnectedregistry | ReadWrite | online | myacrregistry | myacrregistry.azurecr.io | 2026-01-09 12:00:00 | 0 0 * * * | 00:00:00-23:59:59 |
Een pod uitrollen die gebruikmaakt van een image uit een verbonden register
Om een pod te implementeren die gebruikmaakt van een image uit het verbonden register binnen het cluster, voert u de bewerking uit vanaf het clusterknooppunt zelf.
Voer de opdracht kubectl create secret docker-registry uit om een geheim in het cluster te maken om te verifiëren met het verbonden register:
kubectl create secret docker-registry regcred --docker-server=192.100.100.1 --docker-username=mytoken --docker-password=mypasswordImplementeer de pod die gebruikmaakt van de gewenste installatiekopieën uit het verbonden register. In dit voorbeeld wordt het service.clusterIP-adres
192.100.100.1en de imagenaamhello-worldmet taglatestgebruikt:kubectl apply -f - <<EOF apiVersion: apps/v1 kind: Deployment metadata: name: hello-world-deployment labels: app: hello-world spec: selector: matchLabels: app: hello-world replicas: 1 template: metadata: labels: app: hello-world spec: imagePullSecrets: - name: regcred containers: - name: hello-world image: 192.100.100.1/hello-world:latest EOF
De hulpbronnen opschonen
Als u het verbonden register niet meer wilt gebruiken, verwijdert u de extensie uit uw Kubernetes-cluster met Arc en verwijdert u vervolgens de verbonden registerresource.
Voer de opdracht az k8s-extension delete uit om de verbonden registerextensie te verwijderen:
az k8s-extension delete --name myconnectedregistry --cluster-name myarcakscluster \ --resource-group myresourcegroup \ --cluster-type connectedClustersVoer de opdracht az acr connected-registry delete uit om de verbonden registerresource te verwijderen:
az acr connected-registry delete --registry myacrregistry \ --name myconnectedregistry \ --resource-group myresourcegroup