Vytvoření prostředků virtuální sítě pomocí nástroje Bicep

Řada nasazení Azure vyžaduje nasazení a konfiguraci síťových prostředků. K definování síťových prostředků Azure můžete použít Bicep.

Virtuální sítě a podsítě

Definujte virtuální sítě vytvořením prostředku typu Microsoft.Network/virtualNetworks.

Konfigurace podsítí pomocí vlastnosti podsítě

Virtuální sítě obsahují podsítě, což jsou logické skupiny IP adres v rámci virtuální sítě. Existují dva způsoby, jak definovat podsítě v nástroji Bicep: pomocí subnets vlastnosti prostředku virtuální sítě a vytvořením podřízeného prostředku typu Microsoft.Network/virtualNetworks/subnets.

Upozornění

Vyhněte se definování podsítí jako podřízených prostředků. Tento přístup může vést k výpadku vašich prostředků během následných nasazení nebo k selhání nasazení.

Nejlepší je definovat podsítě v rámci definice virtuální sítě, jak je znázorněno v tomto příkladu:

Následující příklad je součástí většího příkladu. Soubor Bicep, který můžete nasadit, najdete v kompletním souboru.

resource virtualNetwork 'Microsoft.Network/virtualNetworks@2019-11-01' = {
  name: virtualNetworkName
  location: location
  properties: {
    addressSpace: {
      addressPrefixes: [
        '10.0.0.0/16'
      ]
    }
    subnets: [
      {
        name: subnet1Name
        properties: {
          addressPrefix: '10.0.0.0/24'
        }
      }
      {
        name: subnet2Name
        properties: {
          addressPrefix: '10.0.1.0/24'
        }
      }
    ]
  }
}

I když oba přístupy umožňují definovat a vytvářet podsítě, je zde důležitý rozdíl. Když definujete podsítě pomocí podřízených prostředků, při prvním nasazení souboru Bicep se virtuální síť nasadí. Po dokončení nasazení virtuální sítě se nasadí každá podsíť. K tomuto pořadí dochází, protože Azure Resource Manager nasazuje každý jednotlivý prostředek samostatně.

Při opětovném nasazení stejného souboru Bicep dojde ke stejné sekvenci nasazení. Virtuální síť se ale nasadí bez nakonfigurovaných podsítí, protože subnets vlastnost je ve skutečnosti prázdná. Po překonfigurování virtuální sítě se prostředky podsítě znovu nasadí, čímž se každou podsíť znovu vytvoří. V některých situacích toto chování způsobí, že prostředky ve vaší virtuální síti během nasazení ztratí připojení. V jiných situacích Azure zabrání úpravám virtuální sítě a vaše nasazení selže.

ID prostředků podsítě přístupu

Často je potřeba odkazovat na ID prostředku podsítě. Když k definování podsítě použijete subnets vlastnost , můžete pomocí klíčového existing slova také získat odkaz na podsíť se silnými typy a pak získat přístup k vlastnosti podsítě id :

The following example is part of a larger example. For a Bicep file that you can deploy, see the complete file.

resource virtualNetwork 'Microsoft.Network/virtualNetworks@2019-11-01' = {
  name: virtualNetworkName
  location: location
  properties: {
    addressSpace: {
      addressPrefixes: [
        '10.0.0.0/16'
      ]
    }
    subnets: [
      {
        name: subnet1Name
        properties: {
          addressPrefix: '10.0.0.0/24'
        }
      }
      {
        name: subnet2Name
        properties: {
          addressPrefix: '10.0.1.0/24'
        }
      }
    ]
  }

  resource subnet1 'subnets' existing = {
    name: subnet1Name
  }

  resource subnet2 'subnets' existing = {
    name: subnet2Name
  }
}

output subnet1ResourceId string = virtualNetwork::subnet1.id
output subnet2ResourceId string = virtualNetwork::subnet2.id

Vzhledem k tomu, že tento příklad používá existing klíčové slovo pro přístup k prostředku podsítě místo definování celého prostředku podsítě, neobsahuje rizika popsaná v předchozí části.

Můžete také kombinovat existing klíčová slova a scope a odkazovat na prostředek virtuální sítě nebo podsítě v jiné skupině prostředků.

Skupiny zabezpečení sítě

Skupiny zabezpečení sítě se často používají k použití pravidel, která řídí příchozí a odchozí tok provozu z podsítě nebo síťového rozhraní. Definování velkého počtu pravidel v souboru Bicep a sdílení pravidel mezi několika soubory Bicep může být náročné. Při práci se složitými nebo rozsáhlými skupinami zabezpečení sítě zvažte použití vzoru souboru sdílených proměnných .

Privátní koncové body

Privátní koncové body musí být schválené. V některých situacích probíhá schválení automaticky. V jiných scénářích ale musíte koncový bod schválit, než ho budete moct použít.

Schválení privátního koncového bodu je operace, takže ji nemůžete provést přímo v kódu Bicep. K vyvolání operace však můžete použít skript nasazení . Alternativně můžete operaci vyvolat mimo soubor Bicep, například ve skriptu kanálu.