Azure giriş bölgeleri - Terraform modülü tasarımında dikkat edilmesi gerekenler
Bu makalede, Azure giriş bölgeleri Terraform modülünü kullanırken dikkate alınması gereken önemli alanlar ele alınmaktadır. Modül, Bulut Benimseme Çerçevesi (CAF) ayrıntılarıyla açıklandığı gibi Azure giriş bölgesi kavramsal mimarisini temel alan bir Azure platformunu dağıtmak ve çalıştırmak için ayrıntılı bir yaklaşım sağlar.
Terraform, HashiCorp tarafından oluşturulan ve altyapı kaynaklarını dağıtmak için bildirim temelli söz dizimi kullanan açık kaynak kod olarak altyapı (IaC) aracıdır. Genişletilebilir, platformlar arası desteğe sahiptir ve durum izleme aracılığıyla sabit altyapı sağlar.
Önemli
Bu modül Terraform Kayıt Defteri: Azure giriş bölgeleri Terraform modülünde kullanılabilir. Başlangıç noktası olarak kullanabilir ve gereksinimlerinize göre yapılandırabilirsiniz.
Not
Portal tabanlı, ARM şablonları ve Terraform modülleri dahil olmak üzere çeşitli dağıtım teknolojileri için uygulamalar vardır. Dağıtım teknolojisi seçimi, sonuçta elde edilen Azure giriş bölgeleri dağıtımını etkilememelidir.
ALZ Terraform Hızlandırıcısı
Terraform ile ALZ'yi hızla dağıtmaya başlamak için şablon olarak kullanılmak üzere tasarlanmış ALZ Terraform Hızlandırıcısı'nı kullanabilirsiniz. Bu depo, Azure DevOps işlem hatları ve GitHub eylemleri iş akışlarıyla Azure Giriş Bölgeleri Terraform modülünün destekleyici bir uygulamasını sağlar.
ALZ Terraform Hızlandırıcısı 3 fazlı bir yaklaşım izler:
- Önkoşullar: Kimlik bilgilerini ve abonelikleri yapılandırma yönergeleri.
- Bootstrap: Sürekli teslim ortamını oluşturmak için PowerShell betiğini çalıştırın.
- Çalıştırma: Modülü (gerekirse) kuruluşunuzun gereksinimlerine uyacak şekilde güncelleştirin ve sürekli teslim yoluyla dağıtın.
Azure Giriş Bölgesi ortamınızı çalışır duruma getirmek için adım adım kullanıcı kılavuzuyla başlayın.
Tasarlama
Mimari, Terraform'un yapılandırılabilir doğasından yararlanır ve birincil düzenleme modülünden oluşur. Bu modül, Azure giriş bölgeleri kavramsal mimarisinin birden çok özelliklerini kapsar. Her özelliği tek tek veya kısmen dağıtabilirsiniz. Örneğin, yalnızca bir hub ağını veya yalnızca Azure DDoS Koruması'nı ya da yalnızca DNS kaynaklarını dağıtabilirsiniz. Bunu yaparken, özelliklerin bağımlılıkları olduğunu dikkate almanız gerekir.
Mimari, dağıtım deneyimini basitleştirmek için bir düzenleyici yaklaşımı kullanır. Her birinin mimarinin belirli bir bölümüne ayrılmış olduğu bir veya daha fazla ayrılmış modül örneği kullanarak her özelliği uygulamayı tercih edebilirsiniz. Bunların tümü doğru yapılandırmayla mümkündür
Modül
Terraform'daki temel kavramlardan biri modüllerin kullanılmasıdır. Modüller, dağıtımları mantıksal gruplandırmalar halinde düzenlemenizi sağlar. Modüllerle, dağıtımınızın karmaşık ayrıntılarını kapsülleyerek Terraform dosyalarınızın okunabilirliğini geliştirirsiniz. Ayrıca farklı dağıtımlar için modülleri kolayca yeniden kullanabilirsiniz.
Modülleri yeniden kullanabilme özelliği, giriş bölgelerini tanımlarken ve dağıtırken gerçek bir avantaj sunar. Kodda yinelenebilir ve tutarlı ortamlar sağlarken, büyük ölçekte dağıtım için gereken çabayı azaltır.
Azure giriş bölgelerinin Terraform uygulaması, düzenleme katmanı işlevi gören tek bir modül kullanılarak teslim edilir. Düzenleme katmanı, modülü kullanarak hangi kaynakların dağıtılıp yönetildiğini seçmenize olanak tanır. Modül, kaynakları birbirinden bağımsız olarak dağıtmak için aynı ortamda birden çok kez kullanılabilir. Bu, farklı ekiplerin farklı özelliklerden veya alt kaynak koleksiyonlarından sorumlu olduğu kuruluşlarda yararlı olabilir.
Katmanlar ve hazırlama
Uygulama, Azure giriş bölgesi kavramsal mimarisinin merkezi kaynak hiyerarşisine odaklanır. Tasarım aşağıdaki özelliklere göre ortalanır:
- Çekirdek kaynaklar
- Yönetim kaynakları
- Bağlantı kaynakları
- Kimlik kaynakları
Modül, kaynakları birlikte dağıtılması amaçlandığı için bu özelliklere göre gruplandırıyor. Bu gruplar uygulamanın mantıksal aşamalarını oluşturur.
Özellik bayraklarını kullanarak bu özelliklerin her birinin dağıtımını denetleyebilirsiniz. Bu yaklaşımın bir avantajı, ortamınıza zaman içinde artımlı olarak ekleme olanağıdır. Örneğin, az sayıda yetenekle başlayabilirsiniz. Hazır olduğunuzda kalan özellikleri daha sonraki bir aşamada ekleyebilirsiniz.
Çekirdek kaynaklar
Modülün temel kaynaklar özelliği, Bulut Benimseme Çerçevesi kaynak kuruluşu tasarım alanına hizalanır. Azure giriş bölgeleri için kavramsal mimarinin temel kaynaklarını dağıtır.
Archetypes
Temel kaynaklar özelliği içinde önemli bir kavram, arketiplerin dahil edilmesidir.
Arketipler, belirli bir kapsama hangi ilke tanımlarının, ilke kümesi tanımlarının, ilke atamalarının, rol tanımlarının ve rol atamalarının uygulanması gerektiğini tanımlamak için yeniden kullanılabilir, kod tabanlı bir yaklaşım sağlar. Terraform uygulamasında bu kararlar Archetype Tanımları olarak kapsüllenir.
Giriş bölgesi oluşturmak için yönetim grupları bir arketip tanımıyla ilişkilendirilir. Bir kuruluş giriş bölgesi için aşağıdaki örnekte, archetype_config "es_corp" arketip tanımına bir işaretçisi vardır. Bu tanım, bu yönetim grubuna eklenecek tüm ilke ve rol yapılandırmalarını içerir.
es_corp_landing_zones = {
"contoso-corp" = {
display_name = "Corp"
parent_management_group_id = "contoso-landing-zones"
subscription_ids = []
archetype_config = {
archetype_id ="es_corp"
parameters = {}
access_control = {}
}
}
Yerleşik arketipler gereksinimlerinize uygun olmadığında modül, yeni arketipler oluşturma veya var olanlarda değişiklik yapma seçenekleri sağlar.
Yönetim kaynakları
Modülün yönetim kaynakları özelliği, Bulut Benimseme Çerçevesi yönetim tasarım alanına hizalanır. Bu özellik, yönetim ve izleme kaynaklarını yönetim platformu giriş bölgesine dağıtma seçeneği sağlar.
Bağlantı kaynakları
Modülün bağlantı kaynakları özelliği, Azure giriş bölgeleri için kavramsal mimarinin ağ topolojisini ve bağlantısını dağıtma seçeneği sağlar.
Kimlik kaynakları
Modülün kimlik kaynakları özelliği, Bulut Benimseme Çerçevesi Azure kimlik ve erişim yönetimi tasarım alanına hizalanır. Bu özellik, Kimlik platformu giriş bölgesinde ilkeleri yapılandırma seçeneği sağlar.
Not
Bu özellik ile hiçbir kaynak dağıtılmaz. deploy_identity_resources
Değişken true olarak ayarlandığında, kimlik platformu giriş bölgesi aboneliğindeki kaynakları koruyan Azure İlkesi atamaları yapılandırılır.
Modül açıklamaları
Bu bölüm, bu modül tarafından dağıtılan kaynaklara üst düzey bir genel bakış sağlar.
Katman | Kaynak Türleri | Açıklama | Faydalı Bağlantılar |
---|---|---|---|
Temel | Yönetim Grupları | Yönetim grupları, Bir Azure kiracısının en üst düzey kaynaklarıdır. Yönetim grupları, kaynaklarınızı daha kolay yönetmenize olanak sağlar. İlkeyi yönetim grubu düzeyinde uygulayabilirsiniz ve alt düzey kaynaklar bu ilkeyi devralır. Özellikle, yönetim grubu altındaki abonelikler tarafından devralınacak yönetim grubu düzeyinde aşağıdaki öğeleri uygulayabilirsiniz:
|
|
Temel | İlke tanımları, ilke atamaları ve ilke kümesi tanımları | DeployIfNotExists (DINE) veya Değiştirme ilkeleri, giriş bölgelerini oluşturan aboneliklerin ve kaynakların uyumlu olmasını sağlamaya yardımcı olur. İlkeler, ilke atamaları aracılığıyla yönetim gruplarına atanır. İlkeler, giriş bölgelerinin yönetiminin yükünü kolaylaştırır. İlke kümesi tanımları, ilke kümelerini birlikte gruplar. Tüm müşteriler DINE veya Değiştirme ilkelerini kullanamaz. Sizin için böyle bir durum söz konusuysa, özel ilkelerle ilgili CAF kılavuzu rehberlik sağlar. |
|
Temel | Rol tanımları ve rol atamaları | Rol tabanlı erişim denetimi (RBAC), sistem içindeki kullanıcı haklarının yönetimini basitleştirir. Kişilerin haklarını yönetmek yerine sisteminizdeki farklı roller için gereken hakları belirlersiniz. Azure RBAC'nin birkaç yerleşik rolü vardır. Özel rol tanımları, ortamınız için özel roller oluşturmanıza olanak tanır. Kimlik ve erişim yönetimi (IAM), bulut bilişimdeki temel güvenlik sınırıdır. Azure RBAC, yönetim grupları ve abonelikler arasında Hizmet Sorumlularına, Yönetilen Kimliklere veya güvenlik gruplarına yerleşik rollerin veya özel rol tanımlarının rol atamalarını gerçekleştirmenizi sağlar. |
|
Yönetim | Azure İzleyici, Azure Otomasyonu ve Microsoft Sentinel | Azure İzleyici, Azure Otomasyonu ve Microsoft Sentinel, altyapınızı ve iş yüklerinizi izlemenize ve yönetmenize olanak sağlar. Azure İzleyici, ortamınızdan telemetri toplamanızı, analiz etmenizi ve üzerinde işlem yapmanızı sağlayan bir çözümdür. Microsoft Sentinel, buluta özel güvenlik bilgileri ve olay yönetimi (SIEM) hizmetidir. Şunları yapmanızı sağlar:
Azure Otomasyonu bulut tabanlı bir otomasyon sistemidir. İçerik:
|
|
Bağlantı | Burada listelenen çekirdek ağ kaynak türleri | Ağ topolojisi, Azure giriş bölgesi dağıtımlarında dikkat edilmesi gereken önemli noktalardan biridir. CAF iki çekirdek ağ yaklaşımına odaklanır:
|
|
Bağlantı | Azure DDoS Koruması | Azure giriş bölgesi kılavuzu, Azure DDoS Ağ Koruması'nın etkinleştirilmesini önerir. Bu hizmet, DDoS saldırılarına karşı anahtar teslimi koruma sunar. | |
Bağlantı | DNS Bölgeleri, Özel DNS Bölgeleri ve Özel DNS Bölge Sanal Ağ Bağlantısı | Özel DNS bölgeleri, özel uç noktaların kullanımını desteklemek için dağıtılabilir. Özel uç nokta, sanal ağınızdan bir özel IP adresi atanmış bir NIC'dir. Azure Özel Bağlantı destekleyen hizmetlerle güvenli bir şekilde iletişim kurmak için özel IP adresini kullanabilirsiniz. Özel DNS bölgeleri, hizmetin tam etki alanı adını (FQDN) özel uç nokta özel IP adresine çözümlemek için yapılandırılabilir. |
Terraform modülünü kullanma
Çekirdek kaynakları dağıtma
Varsayılan olarak, modül giriş bölgesi yönetim gruplarının çekirdek kümesi olan aşağıdaki hiyerarşiyi dağıtır:
- Kök
- Peron
- Kimlik
- Yönetim
- Bağlantı
- Giriş bölgeleri
- Kullanımdan alındı
- Korumalı alan
- Peron
SAP, Corp ve Online giriş bölgesi yönetim grupları herkes için geçerli olmadığından varsayılan olarak dağıtılmaz. Bunları dağıtmanın yolları şunlardır:
- Tanıtım amacıyla SAP, Corp ve Online giriş bölgelerini dağıtacak değişkeni true olarak ayarlayabilirsiniz
deploy_demo_landing_zones
- Üretim amacıyla, aşağıdaki değişkenleri true olarak ayarlayarak istediğiniz yönetim gruplarını açabilirsiniz:
deploy_corp_landing_zones
deploy_online_landing_zones
deploy_sap_landing_zones
- Özel giriş bölgesi tanımı oluşturarak kendi özel giriş bölgesi yönetim gruplarınızı dağıtabilirsiniz
Yönetim kaynaklarını dağıtma
Yönetim kaynaklarını dağıtmak için değişkenin deploy_management_resources
true, değişkeninin subscription_id_management
ise kaynakların dağıtılacağı yönetim aboneliğinin kimliğine ayarlanması gerekir.
deploy_management_resources = true
subscription_id_management = <management subscription id>
Bağlantı kaynaklarını dağıtma
Bağlantı Kaynaklarını Dağıtma, bu topolojilerin nasıl dağıtılacağına ilişkin rehberlik sağlar.
Kimlik kaynaklarını dağıtma
Kimlik özelliğini dağıtmak için değişkenin deploy_identity_resources
true olarak ayarlanması ve değişkenin subscription_id_identity
ilkelerin yapılandırılacağı kimlik aboneliğinin kimliğine ayarlanması gerekir.
deploy_identity_resources = true
subscription_id_identity = <identity subscription id>
Terraform uygulamasını özelleştirme
Bulut Benimseme Çerçevesi parçası olarak sağlanan Azure giriş bölgesi uygulamaları çok çeşitli gereksinimlere ve kullanım örneklerine uygundur. Ancak, genellikle belirli iş gereksinimlerini karşılamak için özelleştirmenin gerekli olduğu senaryolar vardır.
İpucu
Daha fazla bilgi için bkz . Azure giriş bölgesi mimarisini gereksinimleri karşılayacak şekilde uyarlama.
Azure giriş bölgeleri Terraform modülü, özelleştirilmiş dağıtımınızın temeli olarak kullanılabilir. Hazır bir seçeneği yöneten belirli bir gerekli değişiklik nedeniyle sıfırdan başlama gereksinimini ortadan kaldırarak uygulamanızı hızlandırmanız için bir yol sağlar.
Modülleri özelleştirme hakkındaki bilgilere GitHub deposu wiki GitHub: Azure giriş bölgeleri Terraform modülü - Wiki'den ulaşabilirsiniz. Başlangıç noktası olarak kullanabilir ve gereksinimlerinize göre yapılandırabilirsiniz.