Azure İlkesi ile Azure Sanal Ağ Manager'da dinamik ağ grubu üyeliği tanımlama
Bu makalede, dinamik üyelikli ağ grupları oluşturmak için Azure İlkesi koşullu deyimleri kullanmayı öğreneceksiniz. Bu koşullu deyimleri, açılan menüden parametreleri ve işleçleri seçerek temel düzenleyiciyi kullanarak oluşturursunuz. Ayrıca, mevcut bir ağ grubunun koşullu deyimlerini güncelleştirmek için gelişmiş düzenleyiciyi kullanmayı da öğrenirsiniz.
Azure İlkesi, uygun ölçekte kaynak başına idareyi zorunlu kılmanızı sağlayan bir hizmettir. Açık sanal ağ listelerinin aksine, grup üyeliğini tanımlayan koşullu ifadeler belirtmek için kullanılabilir. Bu koşul, ağ gruplarınızı dinamik olarak güçlendirerek sanal ağların, koşula uymaları değiştikçe otomatik olarak gruba katılmasına ve gruptan ayrılmasına izin verir ve Ağ Yöneticisi işlemi gerekmez.
Önkoşullar
- Etkin aboneliği olan bir Azure hesabı. Ücretsiz hesap oluşturun.
- Dinamik ağ gruplarını değiştirmek için rol tabanlı erişim denetimiyle size erişim verilmelidir. Klasik Yönetici/eski yetkilendirme desteklenmez.
Parametreler ve işleçler
Dinamik üyelikleri olan sanal ağlar koşullu deyimler kullanılarak seçilir. Seçili sanal ağları daha da daraltmanız gereken senaryolar için AND ve OR gibi mantıksal işleçleri kullanarak birden fazla koşullu deyim tanımlayabilirsiniz.
Desteklenen parametrelerin listesi:
Parametreler | Gelişmiş düzenleyici alanı |
---|---|
Ad | Name |
Kimlik | Id |
Etiketler | tag['tagName'] |
Abonelik Adı | [subscription().Name] |
Abonelik kimliği | [subscription().Id] |
Abonelik Etiketleri | [subscription().tags['tagName']] |
Kaynak Grup Adı | [resourceGroup().Name] |
Kaynak Grubu Kimliği | [resourceGroup().Id] |
Kaynak Grubu Etiketleri | [resourceGroup().tags['tagName']] |
Desteklenen işleçlerin listesi:
İşleçler | Gelişmiş düzenleyici |
---|---|
Içerir | "contains": <> |
İçermez | "notcontains": <> |
In | "in": <> |
Içinde Değil | "notin": <> |
Eşit -tir | "equals": <> |
Eşit değil | "notequals": <> |
Herhangi birini içerir | "contains": <> |
Tümünü içerir | "contains": <> |
İçerdiği | "notcontains": <> |
Var | "exists": true |
Yok | "exists": false |
Not
Exists ve Does not exist işleçleri yalnızca Tags parametresiyle kullanılır.
Temel düzenleyici
Aboneliğinizde aşağıdaki sanal ağların olduğunu varsayalım. Her sanal ağ, ilgili üretim veya test değerine sahip ortam adlı ilişkili bir etikete sahiptir.
Sanal Ağ | Etiket Adı | Etiket Değeri |
---|---|---|
myVNet01-EastUS | ortamı | üretim |
myVNet01-WestUS | ortamı | üretim |
myVNet02-WestUS | ortamı | test |
myVNet03-WestUS | ortamı | test |
Yalnızca etiketi üretime eşit bir anahtar değer çifti olan sanal ağları seçmek istiyorsunuz. Koşullu deyiminizi oluşturmak için temel düzenleyiciyi kullanmaya başlamak için yeni bir ağ grubu oluşturmanız gerekir.
Azure Sanal Ağ Manager örneğine gidin ve Ayarlar'ın altında Ağ Grupları'nı seçin. Ardından + Oluştur'u seçerek yeni bir ağ grubu oluşturun.
Ağ grubu için bir Ad ve isteğe bağlı bir Açıklama girin ve Ekle'yi seçin.
Listeden ağ grubunu seçin ve Azure İlkesi oluştur'u seçin.
Bir İlke adı girin ve değişiklik gerekmediği sürece Kapsam seçimlerini bırakın.
Ölçütler'in altında, Parametre altındaki açılan listeden Etiketler'i seçin ve ardından İşleç'in altındaki açılan listeden Anahtar değer çifti'ni seçin.
Koşul'un altına ortam ve üretim girin ve Kaynakları Önizle'yi seçin. listede myVNet01-EastUS ve myVNet01-WestUS gösterilmelidir.
Kapat ve Kaydet'i seçin.
Birkaç dakika sonra ağ grubunuzu seçin ve Ayarlar'ın altında Grup Üyeleri'netıklayın. Yalnızca myVNet01-WestUS ve myVNet01-WestUS görmeniz gerekir.
Önemli
Temel düzenleyici yalnızca bir Azure İlkesi oluşturulurken kullanılabilir. İlke oluşturulduktan sonra, tüm düzenlemeler sanal ağ yöneticisinin İlkeler bölümündeki JSON kullanılarak veya Azure İlkesi aracılığıyla yapılır.
Gelişmiş düzenleyici
Gelişmiş düzenleyici, bir ağ grubu oluşturulurken veya mevcut bir ağ grubunu güncelleştirirken sanal ağları seçmek için kullanılabilir. JSON tabanlı gelişmiş düzenleyici, deneyimli kullanıcılar tarafından karmaşık Azure İlkesi koşullu deyimleri oluşturmak ve güncelleştirmek için kullanışlıdır.
Gelişmiş düzenleyici ile yeni ilke oluşturma
Azure Sanal Ağ Manager örneğine gidin ve Ayarlar'ın altında Ağ Grupları'nı seçin. Ardından + Oluştur'u seçerek yeni bir ağ grubu oluşturun.
Ağ grubu için bir Ad ve isteğe bağlı bir Açıklama girin ve Ekle'yi seçin.
Listeden ağ grubunu seçin ve Azure İlkesi oluştur'u seçin.
Bir İlke adı girin ve değişiklik gerekmediği sürece Kapsam seçimlerini bırakın.
Ölçütler'in altında Gelişmiş (JSON) düzenleyici'yi seçerek düzenleyiciyi açın.
Metin kutusuna aşağıdaki JSON kodunu girin ve Kaydet'i seçin:
{ "field": "Name", "contains": "myVNet01" }
Birkaç dakika sonra ağ grubunuzu seçin ve Ayarlar'ın altında Grup Üyeleri'netıklayın. Yalnızca myVNet01-WestUS ve myVNet01-EastUS görmeniz gerekir.
Önemli
Sanal ağ yöneticisiyle oluşturduğunuz tüm Azure İlkeleri, Azure İlkesi hizmetleri alanında yer alır. Sanal ağ yöneticisi örneği silindiğinde Azure İlkesi atamalarınızdan ve tanımlarınızdan kaldırılmazlar. Bu, ilkelerin el ile kaldırılmasını gerektirir. Azure İlkelerini kaldırmayı öğrenin
Var olan bir ilkeyi düzenleme
Önceki bölümde oluşturulan ağ grubunu seçin. Ardından İlkeler sekmesini seçin.
Önceki bölümde oluşturulan ilkeyi seçin.
Ağ grubunun koşullu deyimlerini önceden düzenleyici görünümünde aşağıdaki gibi görürsünüz:
[ { "field": "Name", "contains": "myVNet01" } ]
WestUS içermeyenbir Ad alanına başka bir koşullu deyim eklemek için, gelişmiş düzenleyiciye aşağıdakileri girin:
{ "allOf": [ { "field": "Name", "contains": "VNet01" }, { "field": "Name", "notcontains": "WestUS" } ] }
parametresi,
"allOf"
AND mantıksal işleciyle ayrılmış koşullu deyimleri içerir.Kaydet'i seçin.
Birkaç dakika sonra ağ grubunuzu seçin ve Ayarlar'ın altında Grup Üyeleri'netıklayın. Yalnızca myVNet01-EastUS ifadesini görmeniz gerekir.
Gelişmiş düzenleyici ile kullanabileceğiniz parametrelerin ve işleçlerin tam listesi için bkz . Parametre ve işleçler .
Daha fazla örnek
Gelişmiş düzenleyicide koşullu deyimlere ilişkin diğer örnekler aşağıda verilmiştir.
Örnek 1: Yalnızca OR işleci
Bu örnek, iki koşullu deyimi ayırmak için OR mantıksal işlecini kullanır.
Temel düzenleyici:
Gelişmiş işleç:
{ "anyOf": [ { "field": "Name", "contains": "myVNet01" }, { "field": "Name", "contains": "myVNet02" } ] }
parametresi, "anyOf"
OR mantıksal işleciyle ayrılmış koşullu deyimlerin ikisini de içerir.
Örnek 2: AND ve OR işleci aynı anda
Temel düzenleyici:
Gelişmiş düzenleyici:
{
"allOf": [
{
"anyOf": [
{
"field": "Name",
"contains": "myVNet01"
},
{
"field": "Name",
"contains": "myVNet02"
}
]
},
{
"field": "Name",
"notcontains": "West"
}
]
}
Hem hem de "allOf"
"anyOf"
kodda kullanılır. AND işleci listenin son kısmında olduğundan, OR işlecine sahip iki koşullu deyimi içeren kodun dış kısmında yer alır.
Örnek 3: Gelişmiş düzenleyici ile özel etiket değerleri kullanma
Bu örnekte, adın myVNet ve ortam etiketinin üretime eşit olduğu sanal ağları bulan bir koşullu deyim oluşturulur.
Gelişmiş düzenleyici:
{ "allOf": [ { "field": "Name", "contains": "myVNet" }, { "field": "tags['environment']", "equals": "production" } ] }
Not
Verimliliği artırmak için koşullu işlemlerin Microsoft.Network/virtualNetwork kaynak türüne göre filtrelenmesi gerekir. Bu koşul, portal aracılığıyla belirtilen tüm koşullu değerlere sizin için eklenmiştir.
Sonraki adımlar
- Ağ grupları hakkında bilgi edinin.
- Azure Sanal Ağ Manager örneği oluşturun.
- Uyumluluğu zorunlu tutmak için ilkeleri oluşturma ve yönetme