Configurare una rete virtuale (classica) usando un file di configurazione di rete

Importante

Azure offre due modelli di distribuzione diversi per creare e usare le risorse: Resource Manager e distribuzione classica. Questo articolo illustra l'uso del modello di distribuzione classica. È consigliabile usare il modello di distribuzione di Resource Manager per le distribuzioni più recenti.

È possibile creare e configurare una rete virtuale (classica) con un file di configurazione di rete usando l'interfaccia della riga di comando classica di Azure o Azure PowerShell. Non è possibile creare o modificare una rete virtuale mediante il modello di distribuzione di Azure Resource Manager usando un file di configurazione di rete. Non è possibile usare il portale di Azure per creare o modificare una rete virtuale (classica) con un file di configurazione di rete, ma è possibile usare il portale di Azure per creare una rete virtuale (classica) senza usare un file di configurazione di rete.

La creazione e la configurazione di una rete virtuale (classica) con un file di configurazione di rete prevede l'esportazione, la modifica e l'importazione del file.

Esportare un file di configurazione di rete

È possibile usare PowerShell o l'interfaccia della riga di comando classica di Azure per esportare un file di configurazione di rete. PowerShell esporta un file XML, mentre l'interfaccia della riga di comando classica di Azure esporta un file json.

PowerShell

  1. Installare Azure PowerShell e accedere ad Azure.

  2. Modificare la directory (e verificare che sia presente) e il nome file nel comando seguente nel modo desiderato, quindi eseguire il comando per esportare il file di configurazione di rete:

    Get-AzureVNetConfig -ExportToFile c:\azure\networkconfig.xml
    

Interfaccia della riga di comando classica di Azure

  1. Installare l'interfaccia della riga di comando classica di Azure. Completare i passaggi rimanenti dal prompt dei comandi dell'interfaccia della riga di comando classica.

  2. Accedere ad Azure immettendo il comando azure login.

  3. Verificare di essere in modalità asm immettendo il comando azure config mode asm.

  4. Modificare la directory (e verificare che sia presente) e il nome file nel comando seguente nel modo desiderato, quindi eseguire il comando per esportare il file di configurazione di rete:

    azure network export c:\azure\networkconfig.json
    

Creare o modificare un file di configurazione di rete

Un file di configurazione di rete è un file XML (quando si usa PowerShell) o un file json (quando si usa l'interfaccia della riga di comando classica). Il file può essere modificato in qualsiasi editor di testo o editor XML/json. L'articolo relativo alle impostazioni dello schema del file di configurazione di rete include i dettagli di tutte le impostazioni. Per una spiegazione aggiuntiva delle impostazioni, vedere View virtual networks and settings (Visualizzare le reti virtuali e le impostazioni). Le modifiche che vengono apportate al file:

  • Devono essere conformi allo schema altrimenti l'importazione del file di configurazione di rete non riuscirà.
  • Sovrascrivono le impostazioni di rete esistenti per la sottoscrizione, pertanto è necessario prestare attenzione alle modifiche che si apportano. Fare riferimento, ad esempio, ai file di configurazione di rete di esempio che seguono. Si supponga che il file di origine contenga due istanze di VirtualNetworkSite e che lo si modifichi come illustrato negli esempi. Quando si importa il file, Azure elimina la rete virtuale per l'istanza VirtualNetworkSite che è stata rimossa nel file. Questo scenario semplificato presuppone che non vi siano risorse nella rete virtuale, perché se fossero presenti, non sarebbe possibile eliminare la rete virtuale e l'importazione avrebbe esito negativo.

Importante

Azure considera una subnet con un elemento distribuito come in uso. Quando una subnet è in uso, non può essere modificata. Prima di modificare le informazioni sulla subnet in un file di configurazione di rete, spostare tutti gli elementi distribuiti nella subnet in una subnet diversa che non deve essere modificata. Vedere Spostare una VM o un'istanza del ruolo in un'altra subnet.

XML di esempio da usare con PowerShell

L'esempio di file di configurazione di rete seguente illustra come creare una rete virtuale denominata myVirtualNetwork con uno spazio di indirizzi di 10.0.0.0/16 nell'area di Azure Stati Uniti Orientali. La rete virtuale contiene una subnet denominata mySubnet con un prefisso di indirizzo 10.0.0.0/24.

<?xml version="1.0" encoding="utf-8"?>
<NetworkConfiguration xmlns:xsd="https://www.w3.org/2001/XMLSchema" xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance" xmlns="https://schemas.microsoft.com/ServiceHosting/2011/07/NetworkConfiguration">
  <VirtualNetworkConfiguration>
    <Dns />
    <VirtualNetworkSites>
      <VirtualNetworkSite name="myVirtualNetwork" Location="East US">
        <AddressSpace>
          <AddressPrefix>10.0.0.0/16</AddressPrefix>
        </AddressSpace>
        <Subnets>
          <Subnet name="mySubnet">
            <AddressPrefix>10.0.0.0/24</AddressPrefix>
          </Subnet>
        </Subnets>
      </VirtualNetworkSite>
    </VirtualNetworkSites>
  </VirtualNetworkConfiguration>
</NetworkConfiguration>

Se il file di configurazione di rete esportato non include alcun contenuto, è possibile copiare il codice XML dell'esempio precedente e incollarlo in un nuovo file.

JSON di esempio da usare con l'interfaccia della riga di comando classica

L'esempio di file di configurazione di rete seguente illustra come creare una rete virtuale denominata myVirtualNetwork con uno spazio di indirizzi di 10.0.0.0/16 nell'area di Azure Stati Uniti Orientali. La rete virtuale contiene una subnet denominata mySubnet con un prefisso di indirizzo 10.0.0.0/24.

{
   "VirtualNetworkConfiguration" : {
      "Dns" : "",
      "VirtualNetworkSites" : [
         {
            "AddressSpace" : [ "10.0.0.0/16" ],
            "Location" : "East US",
            "Name" : "myVirtualNetwork",
            "Subnets" : [
               {
                  "AddressPrefix" : "10.0.0.0/24",
                  "Name" : "mySubnet"
               }
            ]
         }
      ]
   }
}

Se il file di configurazione di rete esportato non include alcun contenuto, è possibile copiare il codice json dell'esempio precedente e incollarlo in un nuovo file.

Importare un file di configurazione di rete

È possibile usare PowerShell o l'interfaccia della riga di comando classica per importare un file di configurazione di rete. PowerShell importa un file XML, mentre l'interfaccia della riga di comando classica di Azure importa un file json. Se l'importazione non riesce, verificare che il file sia conforme allo schema di configurazione di rete.

PowerShell

  1. Installare Azure PowerShell e accedere ad Azure.

  2. Modificare la directory e il nome file nel comando seguente in base alle esigenze, quindi eseguire il comando per importare il file di configurazione di rete:

    Set-AzureVNetConfig  -ConfigurationPath c:\azure\networkconfig.xml
    

Interfaccia della riga di comando classica di Azure

  1. Installare l'interfaccia della riga di comando classica di Azure. Completare i passaggi rimanenti dal prompt dei comandi dell'interfaccia della riga di comando classica.

  2. Accedere ad Azure immettendo il comando azure login.

  3. Verificare di essere in modalità asm immettendo il comando azure config mode asm.

  4. Modificare la directory e il nome file nel comando seguente in base alle esigenze, quindi eseguire il comando per importare il file di configurazione di rete:

    azure network import c:\azure\networkconfig.json