Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
V tomto rychlém návodu se dozvíte, jak nasadit rozšíření Připojeného registru Arc pomocí příkazového řádku s výchozím nastavením zabezpečení, abyste zajistili robustní zabezpečení a provozní integritu.
Připojený registr je klíčový nástroj pro edge zákazníky, který umožňuje efektivní správu a přístup ke kontejnerizovaným úlohám, ať už místně nebo ve vzdálených lokalitách. Díky integraci se službou Azure Arc zajišťuje služba bezproblémové a jednotné prostředí pro správu životního cyklu pro kontejnerizované úlohy založené na Kubernetes. Nasazení připojeného rozšíření Registru Arc v clusterech Kubernetes s podporou Arc zjednodušuje správu a přístup k těmto úlohám.
Požadavky
Nastavte Azure CLI pro připojení k Azure a Kubernetes.
Vytvořte nebo použijte existující službu Azure Container Registry (ACR) s rychlým startem.
Povolením vyhrazených datových koncových bodů nastavte přístup k bráně firewall a komunikaci mezi ACR a připojeným registrem.
V tomto kurzu vytvořte nebo použijte existující cluster Azure KubernetesService (AKS).
Podle rychlého startu nastavte připojení mezi Kubernetes clusterem a Azure Arc.
Ke správě Kubernetesextensions použijte příkaz k8s-extension .
az extension add --name k8s-extensionZaregistrujte požadované poskytovatele prostředků Azure ve vašem předplatném a použijte Kubernetes s podporou Azure Arc:
az provider register --namespace Microsoft.Kubernetes az provider register --namespace Microsoft.KubernetesConfiguration az provider register --namespace Microsoft.ExtendedLocationPoskytovatel prostředků Azure je sada operací REST, které umožňují funkce pro konkrétní službu Azure.
Úložiště v registru ACR pro synchronizaci s připojeným registrem.
az acr import --name myacrregistry --source mcr.microsoft.com/mcr/hello-world:latest --image hello-world:latestÚložiště
hello-worldse vytvoří v registrumyacrregistryACR pro synchronizaci s připojeným registrem.
Nasazení rozšíření Arc pro připojený registr s výchozím bezpečnostním nastavením
Jakmile jsou splněné požadavky a nezbytné podmínky a komponenty, postupujte podle zjednodušeného přístupu k bezpečnému nasazení připojeného rozšíření registru do clusteru Kubernetes s podporou Arc pomocí následujících nastavení. Tato nastavení definují následující konfiguraci pomocí protokolu HTTPS, jen pro čtení, distribuce důvěryhodnosti a služby Cert Manager. Postupujte podle kroků pro úspěšné nasazení:
- Vytvořte připojený registr.
- Nasaďte rozšíření Arc pro připojený registr.
- Ověřte nasazení připojeného rozšíření registru.
- Nasaďte pod, který používá image z připojeného registru.
Vytvoření připojeného registru a synchronizace s ACR
Vytvoření připojeného registru pro synchronizaci s ACR je základním krokem pro nasazení připojeného rozšíření registru Arc.
Vytvořte připojený registr, který se synchronizuje s registrem ACR:
Pokud chcete vytvořit připojený registr
myconnectedregistry, který se synchronizuje s registremmyacrregistryACR ve skupiněmyresourcegroupprostředků a úložištihello-world, můžete spustit příkaz az acr connected-registry create :az acr connected-registry create --registry myacrregistry \ --name myconnectedregistry \ --resource-group myresourcegroup \ --repository "hello-world"
- Příkaz az acr connected-registry create vytvoří připojený registr se zadaným úložištěm.
- Příkaz az acr connected-registry create přepíše akce, pokud mapování oboru synchronizace s názvem
myscopemapexistuje, a přepíše vlastnosti, pokud existuje tokenmysynctokensynchronizace. - Příkaz az acr connected-registry create během vytváření připojeného registru ověří vyhrazený datový koncový bod a poskytne příkaz, který povolí vyhrazený datový koncový bod v registru ACR.
Nasazení připojeného rozšíření Registru Arc v clusteru Kubernetes s podporou Arc
Nasazením připojeného rozšíření Registry Arc můžete synchronizovat image kontejnerů a další artefakty OCI (Open Container Initiative) s registrem ACR. Nasazení pomáhá urychlit přístup k artefaktům registru a umožňuje vytváření pokročilých scénářů. Nasazení rozšíření zajišťuje zabezpečenou distribuci důvěryhodnosti mezi připojeným registrem a všemi klientskými uzly v clusteru a nainstaluje službu cert-manager pro šifrování TLS (Transport Layer Security).
Vygenerujte připojovací řetězec a soubor JSON chráněného nastavení
Pro zabezpečené nasazení připojeného rozšíření registru vygenerujte připojovací řetězec, včetně nového hesla, přenosového protokolu a vytvořte
protected-settings-extension.jsonsoubor potřebný pro nasazení rozšíření pomocí příkazu az acr connected-registry get-settings :
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
Poznámka:
Příkazy cat a echo vytvoří protected-settings-extension.json soubor s podrobnostmi připojovacího řetězce, vloží obsah připojovacího řetězce do protected-settings-extension.json souboru, nezbytný krok pro nasazení rozšíření. Příkaz az acr connected-registry get-settings vygeneruje připojovací řetězec, včetně vytvoření nového hesla a specifikace přenosového protokolu.
Nasadit připojené rozšíření registru
Nasaďte připojené rozšíření registru se zadanými podrobnostmi konfigurace pomocí příkazu 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
- Příkaz az k8s-extension create nasadí připojené rozšíření registru na Kubernetescluster se zadanými parametry konfigurace a souborem chráněných nastavení.
- Zajišťuje zabezpečenou distribuci důvěryhodnosti mezi připojeným registrem a všemi klientskými uzly v clusteru a nainstaluje službu cert-manager pro šifrování TLS (Transport Layer Security).
- Ip adresa clusteru musí být z rozsahu IP adres podsítě clusteru AKS. Parametr
service.clusterIPurčuje IP adresu připojené služby registru v rámci clusteru. Je nezbytné nastavitservice.clusterIPv rámci rozsahu platných IP adres služeb pro Kubernetes cluster. Ujistěte se, že IP adresa zadaná proservice.clusterIPspadá do určeného rozsahu IP adres služby definovaného během počáteční konfigurace clusteru, obvykle se nachází v nastavení sítě clusteru.service.clusterIPPokud tento rozsah není v tomto rozsahu, musí být aktualizován na IP adresu, která je v platném rozsahu a aktuálně ji nepoužívá jiná služba.
Ověřte nasazení propojeného rozšíření registru
Pokud chcete ověřit nasazení připojeného rozšíření registru v Kubernetescluster s podporou Arc, postupujte takto:
Ověření stavu nasazení
Spuštěním příkazu az k8s-extension show zkontrolujte stav nasazení připojeného rozšíření registru:
az k8s-extension show --name myconnectedregistry \
--cluster-name myarck8scluster \
--resource-group myresourcegroup \
--cluster-type connectedClusters
Příklad výstupu
{
"aksAssignedIdentity": null,
"autoUpgradeMinorVersion": true,
"configurationProtectedSettings": {
"connectionString": ""
},
"configurationSettings": {
"pvc.storageClassName": "standard",
"pvc.storageRequest": "250Gi",
"service.clusterIP": "[your service cluster ip]"
},
"currentVersion": "0.11.0",
"customLocationSettings": null,
"errorInfo": null,
"extensionType": "microsoft.containerregistry.connectedregistry",
"id": "/subscriptions/[your subscription id]/resourceGroups/[your resource group name]/providers/Microsoft.Kubernetes/connectedClusters/[your arc cluster name]/providers/Microsoft.KubernetesConfiguration/extensions/[your extension name]",
"identity": {
"principalId": "[identity principal id]",
"tenantId": null,
"type": "SystemAssigned"
},
"isSystemExtension": false,
"name": "[your extension name]",
"packageUri": null,
"plan": null,
"provisioningState": "Succeeded",
"releaseTrain": "preview",
"resourceGroup": "[your resource group]",
"scope": {
"cluster": {
"releaseNamespace": "connected-registry"
},
"namespace": null
},
"statuses": [],
"systemData": {
"createdAt": "2024-07-12T18:17:51.364427+00:00",
"createdBy": null,
"createdByType": null,
"lastModifiedAt": "2024-07-12T18:22:42.156799+00:00",
"lastModifiedBy": null,
"lastModifiedByType": null
},
"type": "Microsoft.KubernetesConfiguration/extensions",
"version": null
}
Ověření stavu připojeného registru
Pro každý připojený registr můžete pomocí příkazu az acr connected-registry list zobrazit stav a stav připojeného registru:
az acr connected-registry list --registry myacrregistry \ --output table
Příklad výstupu
| NAME | MODE | CONNECTION STATE | PARENT | LOGIN SERVER | LAST SYNC(UTC) |
|------|------|------------------|--------|--------------|----------------|
| myconnectedregistry | ReadWrite | online | myacrregistry | myacrregistry.azurecr.io | 2024-05-09 12:00:00 |
| myreadonlyacr | ReadOnly | offline | myacrregistry | myacrregistry.azurecr.io | 2024-05-09 12:00:00 |
Ověření konkrétních podrobností připojeného registru
Podrobnosti o konkrétním připojeném registru najdete pomocí příkazu az acr connected-registry show :
az acr connected-registry show --registry myacrregistry \
--name myreadonlyacr \
--output table
Příklad výstupu
| NAME | MODE | CONNECTION STATE | PARENT | LOGIN SERVER | LAST SYNC(UTC) | SYNC SCHEDULE | SYNC WINDOW |
| ------------------- | --------- | ---------------- | ------------- | ------------------------ | ------------------- | ------------- | ----------------- |
| myconnectedregistry | ReadWrite | online | myacrregistry | myacrregistry.azurecr.io | 2024-05-09 12:00:00 | 0 0 * * * | 00:00:00-23:59:59 |
- Příkaz az k8s-extension show ověří stav nasazení rozšíření.
- Příkaz také poskytuje podrobnosti o stavu připojení připojeného registru, poslední synchronizaci, okně synchronizace, plánu synchronizace a dalších.
Nasazení podu, který používá image z připojeného registru
Pokud chcete nasadit pod, který používá image z připojeného registru v clusteru, musí být operace provedena přímo v samotném uzlu clusteru. Postupujte takto:
- Vytvořte v clusteru tajný klíč pro ověření pomocí připojeného registru:
Spuštěním příkazu kubectl create secret docker-registry vytvořte v clusteru tajný kód pro ověření pomocí připojeného registru:
kubectl create secret docker-registry regcred --docker-server=192.100.100.1 --docker-username=mytoken --docker-password=mypassword
Nasaďte pod, který používá požadovaný obraz ze spojeného registru, využitím hodnoty service.clusterIP adresy
192.100.100.1daného registru a názvu obrazuhello-worlds tagemlatest.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
Vyčistěte zdroje
Odstraněním nasazeného připojeného rozšíření registru odeberete odpovídající připojené pody registru a nastavení konfigurace.
Odstraňte připojené rozšíření registru
Spuštěním příkazu az k8s-extension delete odstraňte připojené rozšíření registru:
az k8s-extension delete --name myconnectedregistry --cluster-name myarcakscluster \ --resource-group myresourcegroup \ --cluster-type connectedClusters
Odstraněním nasazeného připojeného registru odeberete připojenou instanci cloudu registru a její podrobnosti o konfiguraci.
Odstranění připojeného registru
Spuštěním příkazu az acr connected-registry delete odstraňte připojený registr:
az acr connected-registry delete --registry myacrregistry \ --name myconnectedregistry \ --resource-group myresourcegroup