Azure Resource Manager nedir?

Azure Resource Manager, Azure için dağıtım ve yönetim hizmetidir. Azure hesabınızda kaynak oluşturma, güncelleştirme ve silme işlemlerini gerçekleştirmenizi sağlayan bir yönetim katmanı sunar. Dağıtım sonrasında kaynaklarınızın güvenliğini sağlamak ve onları düzenlemek için erişim denetimleri, kilitler ve etiketler gibi yönetim özelliklerini kullanabilirsiniz.

Azure Resource Manager şablonları (ARM şablonları) hakkında bilgi edinmek için bkz. ARM şablonuna genel bakış. Bicep hakkında bilgi edinmek için bkz . Bicep'e genel bakış.

Aşağıdaki videoda Azure Resource Manager'ın temel kavramları yer alır.

Tutarlı yönetim katmanı

Azure API'leri, araçları veya SDK'larından herhangi biri aracılığıyla istek gönderdiğinizde Resource Manager isteği alır. İsteğin kimliğini doğrular ve uygun Azure hizmetine iletmeden önce yetkisini alır. Tüm istekler aynı API tarafından işlendiğinden farklı araçlar da kullansanız tutarlı sonuçlar ve özelliklerle karşılaşırsınız.

Aşağıdaki görüntüde Azure Resource Manager'ın Azure isteklerini işleme konusundaki rolü gösterilmiştir.

Azure Resource Manager'ın Azure isteklerini işlemedeki rolünü gösteren diyagram.

Portalda kullanılabilen tüm özellikler aynı zamanda PowerShell, Azure CLI, REST API'leri ve istemci SDK'ları aracılığıyla da kullanılabilir. Başlangıçta API'ler aracılığıyla yayınlanan işlevler, ilk sürümden sonraki 180 gün içinde portalda gösterilir.

Önemli

Azure Resource Manager, Aktarım Katmanı Güvenliği (TLS) 1.2 veya üzerini yalnızca Sonbahar 2023'e kadar destekleyecektir. Daha fazla bilgi için bkz . Azure Resource Manager için TLS 1.2'ye Geçiş.

Terminoloji

Azure Resource Manager’ı kullanmaya yeni başladıysanız bilmiyor olabileceğiniz bazı terimler vardır.

  • kaynak - Azure ile kullanılabilen yönetilebilir bir öğe. Sanal makineler, depolama hesapları, web uygulamaları, veritabanları ve sanal ağlar kaynaklara örnek olarak verilebilir. Kaynak grupları, abonelikler, yönetim grupları ve etiketler de kaynak örnekleridir.
  • kaynak grubu - Bir Azure çözümü için ilgili kaynakları bir arada tutan bir kapsayıcıdır. Kaynak grubu, grup olarak yönetmek istediğiniz kaynakları içerir. Kuruluşunuz açısından en mantıklı duruma göre hangi kaynakların bir kaynak grubuna ait olduğuna siz karar verirsiniz. Bkz. Kaynak grubu nedir?.
  • kaynak sağlayıcısı - Azure kaynaklarını sağlayan bir hizmettir. Örneğin, sanal makine kaynağını sağlayan ortak bir kaynak sağlayıcısıdır Microsoft.Compute. Microsoft.Storage bir diğer yaygın kaynak sağlayıcısıdır. Bkz. Kaynak sağlayıcıları ve türleri.
  • bildirim temelli söz dizimi - Oluşturmak için programlama komutlarının sırasını yazmak zorunda kalmadan "Oluşturmak istediğim şey şu" durumunu belirlemenize olanak tanıyan söz dizimi. ARM şablonları ve Bicep dosyaları bildirim temelli söz dizimine örnektir. Bu dosyalarda, Azure'a dağıtılacak altyapının özelliklerini tanımlarsınız.
  • ARM şablonu - Kaynak grubuna, aboneliğe, yönetim grubuna veya kiracıya dağıtılacak bir veya daha fazla kaynağı tanımlayan bir JavaScript Nesne Gösterimi (JSON) dosyası. Şablon, kaynakları tutarlı ve sürekli olarak dağıtmak için kullanılabilir. Bkz. Şablon dağıtımına genel bakış.
  • Bicep dosyası - Azure kaynaklarını bildirimli olarak dağıtmaya yönelik bir dosya. Bicep, Azure'da kod çözümleri olarak altyapı için en iyi yazma deneyimini sağlamak üzere tasarlanmış bir dildir. Bkz. Bicep'e genel bakış.
  • uzantı kaynağı - Başka bir kaynağın özelliklerine ekleyen bir kaynak. Örneğin, rol ataması bir uzantı kaynağıdır. Erişimi belirtmek için başka bir kaynağa rol ataması uygularsınız. Bkz. Uzantı kaynakları.

Azure terminolojisinin diğer tanımları için bkz . Azure temel kavramları.

Resource Manager’ı kullanmanın avantajları

Resource Manager ile şunları yapabilirsiniz:

  • Altyapınızı yönetmek için betikler yerine bildirim temelli şablonlar kullanın.

  • Çözümünüze ait kaynakları ayrı ayrı işlemek yerine tümünü grup olarak birlikte dağıtın, yönetin ve izleyin.

  • Çözümünüzü geliştirme yaşam döngüsü boyunca yeniden dağıtın ve kaynaklarınızın tutarlı bir şekilde dağıtılacağından emin olun.

  • Kaynaklar arasındaki bağımlılıkları tanımlayarak doğru sırada dağıtılmalarını sağlayın.

  • Azure rol tabanlı erişim denetimi (Azure RBAC) yönetim platformuyla yerel olarak tümleştirildiğinden tüm hizmetlere erişim denetimi uygulayın.

  • Aboneliğinizdeki tüm kaynakları mantıksal olarak düzenlemek için kaynaklara etiket uygulayın.

  • Aynı etiketi paylaşan bir grup kaynak ile ilgili maliyetleri görüntüleyerek kuruluşunuzun faturalandırma süreçlerini kolaylaştırın.

Kapsamı anlama

Azure dört yönetim kapsamı düzeyi sağlar: yönetim grupları, abonelikler, kaynak grupları ve kaynaklar. Aşağıdaki görüntüde bu katmanlara ait bir örnek gösterilmiştir.

Azure'daki dört kapsam düzeyini gösteren diyagram: yönetim grupları, abonelikler, kaynak grupları ve kaynaklar.

Yönetim ayarlarını bu kapsam düzeylerinden herhangi birine uygulayabilirsiniz. Seçtiğiniz düzey, ayarın ne kadar geniş ölçüde uygulanacağını belirler. Alt düzeyler, üst düzeylerdeki ayarları devralır. Örneğin, aboneliğe bir ilke uyguladığınızda, ilke aboneliğinizdeki tüm kaynak gruplarına ve kaynaklara uygulanır. Kaynak grubuna bir ilke uyguladığınızda, bu ilke kaynak grubuna ve tüm kaynaklarına uygulanır. Ancak bu ilke diğer kaynak gruplarına atanmaz.

Kimlikleri ve erişimi yönetme hakkında bilgi için bkz . Microsoft Entra Id.

Şablonları kiracılara, yönetim gruplarına, aboneliklere veya kaynak gruplarına dağıtabilirsiniz.

Kaynak grubu nedir?

Kaynak grubu, bir Azure çözümü için ilgili kaynakları yönetmenizi sağlayan bir kapsayıcıdır. Kaynak grubunu kullanarak ilgili kaynaklarda yapılan değişiklikleri koordine edebilirsiniz. Örneğin, kaynak grubuna bir güncelleştirme dağıtabilir ve kaynakların eşgüdümlü bir işlemle güncelleştirildiğinden güvenebilirsiniz. Alternatif olarak, çözümle işiniz bittiğinde kaynak grubunu silebilir ve tüm kaynakların silindiğini bilebilirsiniz.

Kaynak gruplarınızı tanımlarken göz önüne almanız gereken bazı önemli faktörler bulunur:

  • Kaynak grubunuzdaki tüm kaynaklar aynı yaşam döngüsünü paylaşmalıdır. Bunları birlikte dağıtır, güncelleştirir ve silersiniz. Sunucu gibi bir kaynağın farklı bir dağıtım döngüsünde mevcut olması gerekiyorsa, başka bir kaynak grubunda olmalıdır.

  • Her kaynak yalnızca bir kaynak grubunda yer alabilir.

  • Bir kaynak grubuna dilediğiniz zaman kaynak ekleyebilir veya kaldırabilirsiniz.

  • Bir kaynağı, bir kaynak grubundan bir diğerine taşıyabilirsiniz. Daha fazla bilgi için bkz. Kaynakları yeni kaynak grubuna veya aboneliğe taşıma.

  • Kaynak grubundaki kaynaklar kaynak grubundan farklı bölgelerde bulunabilir, ancak aynı konumu kullanmanızı öneririz. Bkz. Kaynak grubum için hangi konumu kullanmalıyım?

  • Bir kaynak grubu, yönetim eylemleri için erişim denetimini incelemek üzere kullanılabilir. Kaynak grubunu yönetmek için Azure İlkeleri, Azure rolleri veya kaynak kilitleri atayabilirsiniz.

  • Bir kaynak grubuna etiket uygulayabilirsiniz. Kaynak grubundaki kaynaklar bu etiketleri devralmıyor.

  • Bir kaynak, diğer kaynak gruplarındaki kaynaklara bağlanabilir. Bu senaryo, iki kaynak birbiriyle ilişkili olduğunda ancak aynı yaşam döngüsünü paylaşmadığında yaygındır. Örneğin, farklı bir kaynak grubundaki veritabanına bağlanan bir web uygulamanız olabilir.

  • Bir kaynak grubunu sildiğinizde, kaynak grubundaki tüm kaynaklar da silinir. Azure Resource Manager'ın bu silmeleri nasıl düzenleyip düzenlemediğini öğrenmek için bkz . Azure Resource Manager kaynak grubu ve kaynak silme.

  • Her kaynak grubuna en fazla 800 kaynak türü örneği dağıtabilirsiniz. Bazı kaynak türleri 800 örnek sınırından muaftır. Daha fazla bilgi için bkz . kaynak grubu sınırları.

  • Bazı kaynaklar bir kaynak grubunun dışında bulunabilir. Bu kaynaklar aboneliğe, yönetim grubuna veya kiracıya dağıtılır. Bu kapsamlarda yalnızca belirli kaynak türleri desteklenir.

  • Kaynak grubu oluşturmak için portalı, PowerShell'i, Azure CLI'yı veya ARM şablonunu kullanabilirsiniz.

Kaynak grubum için hangi konumu kullanmalıyım?

Bir kaynak grubu oluşturduğunuzda, bu kaynak grubu için bir konum sağlamanız gerekir.

"Bir kaynak grubu için neden konum gerekli olsun? Ayrıca kaynaklar kaynak grubundan farklı konumlarda olabiliyorsa kaynak grubu konumu neden önemli olsun?" diye soruyor olabilirsiniz

Kaynak grubu, kaynaklarla ilgili meta verileri depolar. Kaynak grubu için bir konum belirttiğinizde, meta verilerin nerede depolandığını belirtirsiniz. Uyumluluk nedeniyle verilerinizin belirli bir bölgeye depolandığından emin olmanız gerekebilir.

Kaynak grubu için durum tutarlılığı sağlamak için tüm denetim düzlemi işlemleri kaynak grubunun konumu üzerinden yönlendirilir. Bir kaynak grubu konumu seçerken, denetim işlemlerinizin kaynağı olan yere yakın bir konum seçmenizi öneririz. Bu konum genellikle geçerli konumunuza en yakın konumdur. Bu yönlendirme gereksinimi yalnızca kaynak grubu için denetim düzlemi işlemleri için geçerlidir. Uygulamalarınıza gönderilen istekleri etkilemez.

Kaynak grubunun bölgesi geçici olarak kullanılamıyorsa, meta veriler kullanılamadığından kaynak grubundaki kaynakları güncelleştiremeyebilirsiniz. Diğer bölgelerdeki kaynaklar hala beklendiği gibi çalışır, ancak bunları güncelleştiremeyebilirsiniz. Bu koşul Azure DNS, Azure DNS Özel Bölgeleri, Azure Traffic Manager ve Azure Front Door gibi genel kaynaklar için de geçerli olabilir. Meta verilerinin Azure Resource Manager tarafından yönetildiği türleri, Azure Kaynak Grafı kaynakları tablosunun türleri listesi aracılığıyla görüntüleyebilirsiniz.

Bölgesel kesintilerin etkisini azaltmak için kaynak grubuyla aynı bölgedeki kaynakları bulmanızı öneririz. Kaynak grubunun bölgesi kullanılamıyorsa, Azure Resource Manager kaynağınızın meta verilerini güncelleştiremez ve yazma çağrılarınızı engeller. Kaynak ve kaynak grubu bölgenizi birlikte konumlandırarak, kaynaklarınız ve meta verileriniz birden çok bölge yerine tek bir bölgede bulunduğundan bölge kullanılamama riskini azaltmış olursunuz.

Güvenilir uygulamalar oluşturma hakkında daha fazla bilgi için bkz . Güvenilir Azure uygulamaları tasarlama.

Azure Resource Manager'ın dayanıklılığı

Azure Resource Manager hizmeti dayanıklılık ve sürekli kullanılabilirlik için tasarlanmıştır. REST API'de Resource Manager ve denetim düzlemi işlemleri (adresine gönderilen management.azure.comistekler) şunlardır:

  • Bölgeler arasında dağıtılır. Azure Resource Manager'ın Azure'ın her bölgesinde ayrı bir örneği vardır; başka bir deyişle bir bölgedeki Azure Resource Manager örneğinin başarısız olması, Azure Resource Manager'ın veya başka bir bölgedeki diğer Azure hizmetlerinin kullanılabilirliğini etkilemez. Azure Resource Manager bölgeler arasında dağıtılmış olsa da, bazı hizmetler bölgeseldir. Bu ayrım, denetim düzlemi işleminin ilk işlenmesi dayanıklı olsa da isteğin hizmete iletildiğinde bölgesel kesintilere karşı duyarlı olabileceği anlamına gelir.

  • Birden çok Kullanılabilirlik Alanları olan konumlarda Kullanılabilirlik Alanları (ve bölgeler) arasında dağıtılır. Bu dağıtım, bir bölge bir veya daha fazla bölgeyi kaybettiğinde Azure Resource Manager'ın başka bir bölgeye veya başka bir bölgeye yük devrederek kaynaklar için denetim düzlemi özelliği sağlamaya devam etmesini sağlar.

  • Tek bir mantıksal veri merkezine bağımlı değildir.

  • Bakım etkinlikleri için hiçbir zaman indirilmemiş.

Bu dayanıklılık Resource Manager aracılığıyla istek alan hizmetler için geçerlidir. Örneğin, Key Vault bu dayanıklılıktan yararlanır.

Eşzamanlı işlemleri çözme

İki veya daha fazla işlem aynı anda aynı kaynağı güncelleştirmeye çalıştığında, Azure Resource Manager çakışmayı algılar ve yalnızca bir işlemin başarıyla tamamlanmasına izin verir. Azure Resource Manager diğer işlemleri engeller ve bir hata döndürür.

Eşzamanlı kaynak güncelleştirmeleri beklenmeyen sonuçlara neden olabilir. Bu çözüm, güncelleştirmelerinizin belirleyici ve güvenilir olmasını sağlar. Kaynaklarınızın durumunu biliyorsunuz ve tutarsızlık veya veri kaybını önleyebilirsiniz.

Aynı kaynağı aynı anda güncelleştirmeye çalışan iki isteğiniz (A ve B) olduğunu varsayalım. A isteği B isteği öncesinde biterse, A isteği başarılı olur ve B isteği başarısız olur. B isteği 409 hatasını döndürür. Bu hata kodunu aldıktan sonra kaynağın güncelleştirilmiş durumunu alabilir ve B isteğini yeniden göndermek isteyip istemediğinizi belirleyebilirsiniz.

Sonraki adımlar