Dayanıklılık ve yüksek kullanılabilirlik için Azure Container Registry'de alanlar arası yedekliliği etkinleştirme
Azure Container Registry, bölgesel işlemler için kullanılabilirlik sağlamak ve gecikme süresini azaltmak için kayıt defteri verilerini bir veya daha fazla Azure bölgesinde çoğaltan coğrafi çoğaltmaya ek olarak isteğe bağlı bölge yedekliliğini destekler. Bölge yedekliliği , belirli bir bölgedeki bir kayıt defterine veya çoğaltma kaynağına (çoğaltma) dayanıklılık ve yüksek kullanılabilirlik sağlar.
Bu makalede Azure CLI, Azure portalı veya Azure Resource Manager şablonu kullanılarak alanlar arası yedekli kapsayıcı kayıt defteri veya çoğaltmanın nasıl ayarlanacağı gösterilmektedir.
Alanlar arası yedeklilik, Premium kapsayıcı kayıt defteri hizmet katmanının bir özelliğidir. Kayıt defteri hizmet katmanları ve sınırları hakkında bilgi için bkz . Azure Container Registry hizmet katmanları.
Bölgesel Destek
ACR Kullanılabilirlik Alanları aşağıdaki bölgelerde desteklenir:
Kuzey ve Güney Amerika Avrupa Afrika Asya Pasifik Güney Brezilya
Orta Kanada
Central US
Doğu ABD
Doğu ABD 2
Doğu ABD 2 EUAP
Orta Güney ABD
US Government Virginia
Batı ABD 2
Batı ABD 3Orta Fransa
Orta Batı Almanya
Kuzey İtalya
Kuzey Avrupa
Doğu Norveç
Orta İsveç
Kuzey İsviçre
Güney Birleşik Krallık
West EuropeGüney Afrika Kuzey Doğu Avustralya
Orta Hindistan
Kuzey Çin 3
Doğu Asya
Doğu Japonya
Güney Kore - Orta
Katar Merkezi
Güneydoğu Asya
Kuzey BAEKullanılabilirlik alanlarına bölge dönüştürmeleri şu anda desteklenmemektedir.
Bir bölgede kullanılabilirlik alanı desteğini etkinleştirmek için, kullanılabilirlik alanı desteği etkinleştirilmiş olarak istenen bölgede kayıt defterini oluşturun veya kullanılabilirlik alanı desteği etkinleştirilmiş çoğaltılmış bir bölge ekleyin.
AZ etkin damgalı bir kayıt defteri, varsayılan olarak AZ özellikli bir damga pulu ile bir giriş bölgesi çoğaltması oluşturur. AZ damgası etkinleştirildikten sonra devre dışı bırakılamaz.
Giriş bölgesi çoğaltması, giriş bölgesi kayıt defterini temsil eder. Kullanılabilirlik alanı özelliklerini görüntülemeye ve yönetmeye yardımcı olur ve silinemez.
Kullanılabilirlik alanı bölge başınadır; çoğaltmalar oluşturulduktan sonra, çoğaltmaları silip yeniden oluşturma dışında durumları değiştirilemez.
Bölgede alanlar arası yedeklilik devre dışı bırakılamaz.
ACR Görevleri henüz kullanılabilirlik alanlarını desteklemez.
Alanlar arası yedeklilik hakkında
Azure bölgesinde dayanıklı ve yüksek kullanılabilirliğe sahip bir Azure kapsayıcı kayıt defteri oluşturmak için Azure kullanılabilirlik alanlarını kullanın. Örneğin, kuruluşlar veri yerleşimi veya diğer uyumluluk gereksinimlerini karşılamak için desteklenen diğer Azure kaynaklarıyla alanlar arası yedekli bir Azure kapsayıcı kayıt defteri ayarlayabilir ve bir bölgede yüksek kullanılabilirlik sağlayabilir.
Azure Container Registry ayrıca coğrafi çoğaltmayı da destekler ve bu sayede hizmeti birden çok bölgede çoğaltır ve diğer konumlardaki kaynakları hesaplamak için yedeklilik ve yerellik sağlar. Bir bölge içinde yedeklilik için kullanılabilirlik alanlarının ve birden çok bölgede coğrafi çoğaltmanın birleşimi, bir kayıt defterinin hem güvenilirliğini hem de performansını artırır.
Kullanılabilirlik alanları, bir Azure bölgesi içindeki benzersiz fiziksel konumlardır. Dayanıklılığı güvence altına almak için etkinleştirilmiş tüm bölgelerde en az üç ayrı alan vardır. Her bölgede bağımsız güç, soğutma ve ağ ile donatılmış bir veya daha fazla veri merkezi vardır. Alanlar arası yedeklilik için yapılandırıldığında, bölgedeki tüm kullanılabilirlik alanlarında bir kayıt defteri (veya farklı bir bölgedeki kayıt defteri çoğaltması) çoğaltılır ve veri merkezi hataları olduğunda kullanılabilir durumda olur.
Alanlar arası yedekli kayıt defteri oluşturma - CLI
Azure CLI'yi kullanarak alanlar arası yedekliliği etkinleştirmek için Azure CLI sürüm 2.17.0 veya üzeri ya da Azure Cloud Shell gerekir. Yüklemeniz veya yükseltmeniz gerekirse, bkz. Azure CLI yükleme.
Kaynak grubu oluşturma
Gerekirse az group create komutunu çalıştırarak kayıt defteri için bir kaynak grubu oluşturun.
az group create --name <resource-group-name> --location <location>
Bölge etkin kayıt defteri oluşturma
Premium hizmet katmanında alanlar arası yedekli bir kayıt defteri oluşturmak için az acr create komutunu çalıştırın. Azure Container Registry için kullanılabilirlik alanlarını destekleyen bir bölge seçin. Aşağıdaki örnekte, eastus bölgesinde alanlar arası yedeklilik etkinleştirilmiştir. az acr create
Daha fazla kayıt defteri seçeneği için komut yardımına bakın.
az acr create \
--resource-group <resource-group-name> \
--name <container-registry-name> \
--location eastus \
--zone-redundancy enabled \
--sku Premium
Komut çıkışında kayıt defterinin zoneRedundancy
özelliğini not edin. Etkinleştirildiğinde, kayıt defteri alanlar arası yedeklidir:
{
[...]
"zoneRedundancy": "Enabled",
}
Alanlar arası yedekli çoğaltma oluşturma
Westus2 gibi Azure Container Registry için kullanılabilirlik alanlarını destekleyen bir bölgede alanlar arası yedekli kayıt defteri çoğaltması oluşturmak için az acr replication create komutunu çalıştırın.
az acr replication create \
--location westus2 \
--resource-group <resource-group-name> \
--registry <container-registry-name> \
--zone-redundancy enabled
Komut çıkışında, çoğaltmanın zoneRedundancy
özelliğini not edin. Etkinleştirildiğinde, çoğaltma alanlar arası yedekli olur:
{
[...]
"zoneRedundancy": "Enabled",
}
Alanlar arası yedekli kayıt defteri oluşturma - portal
Azure Portal’ında oturum açın.
Kaynak oluştur>Kapsayıcılar>Container Registry'yi seçin.
Temel Bilgiler sekmesinde bir kaynak grubu seçin veya oluşturun ve benzersiz bir kayıt defteri adı girin.
Konum bölümünde, Doğu ABD gibi Azure Container Registry için bölge yedekliliğini destekleyen bir bölge seçin.
SKU'da Premium'ı seçin.
Kullanılabilirlik alanları'nda Etkin'i seçin.
İsteğe bağlı olarak, daha fazla kayıt defteri ayarı yapılandırın ve gözden geçir + oluştur'u seçin.
Kayıt defteri örneğini dağıtmak için Oluştur'u seçin.
Alanlar arası yedekli çoğaltma oluşturmak için:
Premium katmanı kapsayıcı kayıt defterinize gidin ve Çoğaltmalar'ı seçin.
Görüntülenen haritada, Batı ABD 2 gibi Azure Container Registry için alanlar arası yedekliliği destekleyen bir bölgede yeşil bir altıgen seçin. İsterseniz + Ekle'yi de seçebilirsiniz.
Çoğaltma oluştur penceresinde Konum'u onaylayın. Kullanılabilirlik alanları'nda Etkin'i ve ardından Oluştur'u seçin.
Alanlar arası yedekli kayıt defteri oluşturma - şablon
Kaynak grubu oluşturma
Gerekirse az group create komutunu çalıştırarak eastus gibi Azure Container Registry için kullanılabilirlik alanlarını destekleyen bir bölgede kayıt defteri için bir kaynak grubu oluşturun. Bu bölge, kayıt defteri konumunu ayarlamak için şablon tarafından kullanılır.
az group create --name <resource-group-name> --location eastus
Şablonu dağıtma
Alanlar arası yedekli, coğrafi olarak çoğaltılmış bir kayıt defteri oluşturmak için aşağıdaki Resource Manager şablonunu kullanabilirsiniz. Şablon varsayılan olarak kayıt defterinde ve bölgesel çoğaltmada alanlar arası yedekliliği etkinleştirir.
Aşağıdaki içeriği yeni bir dosyaya kopyalayın ve gibi registryZone.json
bir dosya adı kullanarak kaydedin.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"acrName": {
"type": "string",
"defaultValue": "[concat('acr', uniqueString(resourceGroup().id))]",
"minLength": 5,
"maxLength": 50,
"metadata": {
"description": "Globally unique name of your Azure Container Registry"
}
},
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]",
"metadata": {
"description": "Location for registry home replica."
}
},
"acrSku": {
"type": "string",
"defaultValue": "Premium",
"allowedValues": [
"Premium"
],
"metadata": {
"description": "Tier of your Azure Container Registry. Geo-replication and zone redundancy require Premium SKU."
}
},
"acrZoneRedundancy": {
"type": "string",
"defaultValue": "Enabled",
"metadata": {
"description": "Enable zone redundancy of registry's home replica. Requires registry location to support availability zones."
}
},
"acrReplicaLocation": {
"type": "string",
"metadata": {
"description": "Short name for registry replica location."
}
},
"acrReplicaZoneRedundancy": {
"type": "string",
"defaultValue": "Enabled",
"metadata": {
"description": "Enable zone redundancy of registry replica. Requires replica location to support availability zones."
}
}
},
"resources": [
{
"comments": "Container registry for storing docker images",
"type": "Microsoft.ContainerRegistry/registries",
"apiVersion": "2020-11-01",
"name": "[parameters('acrName')]",
"location": "[parameters('location')]",
"sku": {
"name": "[parameters('acrSku')]",
"tier": "[parameters('acrSku')]"
},
"tags": {
"displayName": "Container Registry",
"container.registry": "[parameters('acrName')]"
},
"properties": {
"adminUserEnabled": "[parameters('acrAdminUserEnabled')]",
"zoneRedundancy": "[parameters('acrZoneRedundancy')]"
}
},
{
"type": "Microsoft.ContainerRegistry/registries/replications",
"apiVersion": "2020-11-01",
"name": "[concat(parameters('acrName'), '/', parameters('acrReplicaLocation'))]",
"location": "[parameters('acrReplicaLocation')]",
"dependsOn": [
"[resourceId('Microsoft.ContainerRegistry/registries/', parameters('acrName'))]"
],
"properties": {
"zoneRedundancy": "[parameters('acrReplicaZoneRedundancy')]"
}
}
],
"outputs": {
"acrLoginServer": {
"value": "[reference(resourceId('Microsoft.ContainerRegistry/registries',parameters('acrName')),'2019-12-01').loginServer]",
"type": "string"
}
}
}
Yukarıdaki şablon dosyasını kullanarak kayıt defterini oluşturmak için aşağıdaki az deployment group create komutunu çalıştırın. Gösterildiği yerde şunları sağlayın:
- benzersiz bir kayıt defteri adı kullanın veya şablonu parametresiz dağıttığınızda sizin için benzersiz bir ad oluşturur
- çoğaltma için westus2 gibi kullanılabilirlik alanlarını destekleyen bir konum
az deployment group create \
--resource-group <resource-group-name> \
--template-file registryZone.json \
--parameters acrName=<registry-name> acrReplicaLocation=<replica-location>
Komut çıktısında, kayıt defteri ve çoğaltma özelliğini not edin zoneRedundancy
. Etkinleştirildiğinde her kaynak alanlar arası yedeklidir:
{
[...]
"zoneRedundancy": "Enabled",
}
Sonraki adımlar
- Kullanılabilirlik alanlarını destekleyen bölgeler hakkında daha fazla bilgi edinin.
- Azure'da güvenilirlik oluşturma hakkında daha fazla bilgi edinin.