Azure Kaynak Yöneticisi’ne (Resource Manager) Genel Bakış – Bölüm 3
Şablon Dağıtımı (Template Deployment)
Kaynak Yöneticisi ile, Azure çözümünüzün altyapısını ve yapılandırmasını tanımlayan bir şablon (JSON formatında) oluşturabilirsiniz. Bir şablon kullanarak, çözümünüzü yaşam döngüsü boyunca defalarca dağıtabilir ve kaynaklarınızın istikrarlı bir biçimde dağıtıldığından emin olabilirsiniz. Portaldan bir çözüm oluştururken, çözüm otomatik olarak bir dağıtım şablonu içermektedir. Şablonunuzu sıfırdan oluşturmak zorunda değilsiniz, çünkü çözümünüzün şablonuyla başlayabilir ve özel ihtiyaçlarınızı karşılamak üzere özelleştirebilirsiniz. Kaynak grubunun geçerli durumunu dışa aktararak veya belirli bir dağıtım için kullanılan şablonu görüntüleyerek var olan bir kaynak grubu için bir şablon alabilirsiniz. Dışa aktarılan şablonun görüntülenmesi, şablon sözdizimi hakkında bilgi edinmek için yararlı bir yöntemdir.
Kaynak Yöneticisi, şablonu başka herhangi bir istek gibi işler. Şablonu ayrıştırır ve sözdizimini, uygun kaynak sağlayıcıları için REST API’sı işlemlerine dönüştürür.
Örneğin: Kaynak Yöneticisi, aşağıdaki kaynak tanımıyla bir şablon aldığında:
“resources”: [
{
“apiVersion”: “2016-01-01”,
“type”: “Microsoft.Storage/storageAccounts”,
“name”: “mystorageaccount”,
“location”: “westus”,
“sku”: {
“name”: “Standard_LRS”
},
“kind”: “Storage”,
“properties”: {
}
}
]
Microsoft.Storage kaynak sağlayıcısına gönderilen aşağıdaki REST API işlemine dönüştürür:
PUT
https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/mystorageaccount?api-version=2016-01-01
REQUEST BODY
{
“location”: “westus”,
“properties”: {
}
“sku”: {
“name”: “Standard_LRS”
},
“kind”: “Storage”
}
Şablonları ve kaynak gruplarını nasıl tanımladığınız tamamen size kalmıştır ve çözümünüzü nasıl isterseniz öyle yönetebilirsiniz. Örneğin, üç katmanlı uygulamanızı tek bir şablon aracılığıyla tek bir kaynak grubuna dağıtabilirsiniz.
Ancak, tüm altyapınızı tek bir şablonda tanımlamak zorunda değilsiniz. Genellikle, dağıtım gereksinimlerini hedeflenmiş, amaca özel şablon setine bölmek mantıklıdır. Bu şablonları farklı çözümler için kolayca yeniden kullanabilirsiniz. Belirli bir çözümü dağıtmak için gerekli tüm şablonları bağlayan bir ana şablon oluşturursunuz. Aşağıdaki resim, üç iç içe geçmiş şablon içeren bir üst şablon aracılığıyla üç katmanlı çözümü dağıtmayı göstermektedir.
Ayrı yaşam döngülerine sahip olan katmanlarınız varsa, üç katmanınızı ayrı kaynak gruplarına dağıtabilirsiniz. Kaynaklar hala diğer kaynaklardaki kaynaklara bağlanabilir.
Azure Kaynak Yöneticisi kaynakların doğru sırayla oluşturulmasını sağlamak için bağımlılıklarını analiz eder. Bir kaynak başka bir kaynaktaki (diskler için bir depolama hesabı gerektiren sanal makine gibi) bir değere dayanıyorsa, bir bağımlılık ayarlayabilirsiniz. Altyapı güncellemeleri için şablonu da kullanabilirsiniz. Örneğin, çözümünüze bir kaynak ekleyebilir ve halihazırda dağıtılan kaynaklar için yapılandırma kuralları ekleyebilirsiniz. Şablon bir kaynak oluşturmayı belirtir, ancak bu kaynak zaten mevcutsa, Azure Kaynak Yöneticisi yeni bir varlık oluşturmak yerine bir güncelleme yapar. Azure Resource Manager varolan varlığı, yeni olacak kadarıyla aynı duruma günceller.
Kaynak Yöneticisi, kuruma dahil olmayan belirli bir yazılımı yüklemek gibi ek işlemleri yapmanız gerektiğinde senaryolar için uzantılar sağlar. Zaten DSC, Chef yada Puppet gibi bir yapılandırma yönetimi hizmeti kullanıyorsanız, uzantıları kullanarak bu hizmetle çalışmaya devam edebilirsiniz. Son olarak, şablon uygulamanız için kaynak kodun bir parçası haline gelir. Kaynak kod deponuzda kontrol edebilir ve uygulamanız geliştikçe güncelleyebilirsiniz. Şablonu Visual Studio aracılığıyla düzenleyebilirsiniz.