Condividi tramite


Configurare i ruoli di Servizi cloud di Azure (supporto esteso) con Visual Studio

Nota

Questo articolo si applica ad Azure Servizi cloud di Azure (supporto esteso). I servizi cloud (versione classica) sono stati ritirati a partire dal 31 agosto 2024. Per ulteriori informazioni, vedere il modello di distribuzione dei servizi cloud (versione classica) verrà ritirato il 31 agosto 2024. Per un nuovo sviluppo, è consigliabile usare un tipo di servizio più recente progettato per scopi specifici, ad esempio servizio app di Azure, Funzioni di Azureo app contenitore di Azure. Per l'elenco più recente dei servizi disponibili, vedere Directory dei prodotti Azure.

Un progetto di Servizi cloud di Azure (supporto esteso) può avere uno o più ruoli di lavoro o Web. Per ogni ruolo, è necessario definire la modalità di configurazione del ruolo e configurare anche la modalità di esecuzione del ruolo.

Le informazioni per il servizio cloud vengono archiviate nei file seguenti:

  • serviceDefinition.csdef: il file di definizione del servizio definisce le impostazioni di runtime per il servizio cloud, inclusi i ruoli necessari, gli endpoint e le dimensioni della macchina virtuale. Nessuno dei dati archiviati in ServiceDefinition.csdef può essere modificato quando il ruolo è in esecuzione.
  • ServiceConfiguration.cscfg: il file di configurazione del servizio consente di configurare il numero di istanze di un ruolo e i valori delle impostazioni definite per un ruolo. I dati archiviati in ServiceConfiguration.cscfg possono essere modificati durante l'esecuzione del ruolo.

Per archiviare valori diversi per le impostazioni che controllano la modalità di esecuzione di un ruolo, è possibile definire più configurazioni del servizio. È possibile usare una configurazione del servizio diversa per ogni ambiente di distribuzione. Ad esempio, è possibile impostare la stringa di connessione dell'account di archiviazione per usare l'emulatore di archiviazione di Azure locale in una configurazione del servizio locale e creare un'altra configurazione del servizio per usare Archiviazione di Azure nel cloud.

Quando si crea un progetto di Servizi cloud di Azure (supporto esteso) in Visual Studio, due configurazioni del servizio vengono create e aggiunte automaticamente al progetto di Azure:

  • ServiceConfiguration.Cloud.cscfg
  • ServiceConfiguration.Local.cscfg

Prerequisiti

Configurare un progetto di Servizi cloud di Azure (supporto esteso)

È possibile configurare un progetto di Servizi cloud di Azure (supporto esteso) da Esplora soluzioni in Visual Studio, come illustrato nei passaggi seguenti:

  1. Creare o aprire un progetto di Servizi cloud di Azure (supporto esteso) in Visual Studio.

  2. In Esplora soluzioni, fare clic destro sul progetto e scegliere Proprietàdal menu contestuale.

    menu di scelta rapida del progetto Esplora soluzioni

  3. Nella pagina delle proprietà del progetto, selezionare la scheda Sviluppo.

    pagina delle proprietà del progetto - scheda sviluppo

  4. Nell'elenco configurazione del servizio selezionare il nome della configurazione del servizio da modificare.

    Screenshot che mostra l'elenco di configurazione del servizio per un progetto di Azure Cloud Services (supporto esteso).

Modificare il numero di istanze del ruolo

Per migliorare le prestazioni del servizio cloud, è possibile modificare il numero di istanze di un ruolo in esecuzione, in base al numero di utenti o al carico previsto per un ruolo specifico. Viene creata una macchina virtuale separata per ogni istanza di un ruolo quando il servizio cloud viene eseguito in Azure. Ciò influisce sulla fatturazione per la distribuzione di questo servizio cloud. Per altre informazioni sulla fatturazione, vedere Informazioni sulla fattura per Microsoft Azure.

  1. Creare o aprire un progetto di Servizi cloud di Azure (supporto esteso) in Visual Studio.

  2. In Esplora soluzioni, espandi il nodo del progetto. Nel nodo Ruoli fare clic con il pulsante destro del mouse sul ruolo da aggiornare e scegliere Proprietàdal menu di scelta rapida.

    menu di scelta rapida del ruolo di Azure Esplora soluzioni

  3. Selezionare la scheda Configurazione.

    scheda Configurazione

  4. Nell'elenco configurazione del servizio selezionare la configurazione del servizio da aggiornare. Se si desidera apportare modifiche a tutte le configurazioni del servizio per questo ruolo, selezionare Tutte le configurazioni.

    Importante

    Se si sceglie una configurazione del servizio specifica, alcune proprietà vengono disabilitate perché possono essere impostate solo per tutte le configurazioni. Per modificare queste proprietà, è necessario selezionare Tutte le configurazioni.

    Elenco di configurazione del servizio 1

  5. Nella casella di testo Numero di istanze immettere il numero di istanze da avviare per questo ruolo. Ogni istanza viene eseguita in una macchina virtuale separata quando si pubblica il servizio cloud in Azure.

    Aggiornamento del numero di istanze

  6. Nella barra degli strumenti di Visual Studio selezionare Salva.

Gestire le stringhe di connessione per gli account di archiviazione

È possibile aggiungere, rimuovere o modificare le stringhe di connessione per le configurazioni del servizio. È anche possibile configurare una configurazione del servizio cloud che usa un account di archiviazione in Azure.

Avvertimento

Quando si immettono le informazioni sulla chiave dell'account di archiviazione di Azure per una stringa di connessione dell'account di archiviazione, queste informazioni vengono archiviate localmente nel file di configurazione del servizio. Tuttavia, queste informazioni non vengono attualmente archiviate come testo crittografato.

Usando un valore diverso per ogni configurazione del servizio, non è necessario usare stringhe di connessione diverse nel servizio cloud o modificare il codice quando si pubblica il servizio cloud in Azure. È possibile usare lo stesso nome per la stringa di connessione nel codice e il valore è diverso, in base alla configurazione del servizio selezionata quando si compila il servizio cloud o quando lo si pubblica.

  1. Creare o aprire un progetto di Servizi cloud di Azure (supporto esteso) in Visual Studio.

  2. In Esplora soluzioni espandere il nodo del progetto. Nella scheda Ruoli, fai clic con il pulsante destro del mouse sul ruolo che vuoi aggiornare e, dal menu contestuale, seleziona Proprietà.

    menu di scelta rapida del ruolo di Azure Esplora soluzioni

  3. Selezionare la scheda Impostazioni.

    scheda Impostazioni

  4. Nell'elenco Configurazione del Servizio, selezionare la configurazione del servizio da aggiornare.

    configurazione del servizio

  5. Per aggiungere una stringa di connessione, seleziona Aggiungi impostazione.

    Aggiungi stringa di connessione

  6. Dopo aver aggiunto la nuova impostazione all'elenco, aggiornare la riga nell'elenco con le informazioni necessarie.

    Nuova stringa di connessione

    • Nome: immettere il nome da usare per la stringa di connessione.
    • Tipo : selezionare stringa di connessione dall'elenco a discesa.
    • Valore - è possibile immettere la stringa di connessione direttamente nella cella Valore, oppure selezionare i tre puntini (...) per lavorare nella finestra di dialogo Crea stringa di connessione di archiviazione.
  7. Nella finestra di dialogo Crea stringa di connessione di archiviazione, selezionare un'opzione per Connetti utilizzando. Seguire quindi le istruzioni per l'opzione selezionata:

    • 'emulatore di archiviazione di Microsoft Azure: se si seleziona questa opzione, le impostazioni rimanenti nella finestra di dialogo vengono disabilitate perché si applicano solo ad Azure. Selezionare OK.
    • La sottoscrizione - Se si seleziona questa opzione, usare l'elenco a discesa per selezionare e accedere a un account Microsoft, oppure aggiungere un account Microsoft. Selezionare una sottoscrizione di Azure e un account di archiviazione. Selezionare OK.
    • Immettere manualmente le credenziali: immettere il nome dell'account di archiviazione e la chiave primaria o seconda. Selezionare un'opzione per connessione (è consigliato HTTPS per la maggior parte degli scenari). Selezionare OK.
  8. Per eliminare una stringa di connessione, selezionare la stringa di connessione e quindi selezionare Rimuovi impostazione.

  9. Nella barra degli strumenti di Visual Studio selezionare Salva.

Accedere programmaticamente a una stringa di connessione

I passaggi seguenti illustrano come accedere a livello di codice a una stringa di connessione usando C#.

  1. Aggiungere le direttive using seguenti a un file C# in cui si userà l'impostazione :

    using Microsoft.WindowsAzure;
    using Microsoft.WindowsAzure.Storage;
    using Microsoft.WindowsAzure.ServiceRuntime;
    
  2. Il codice seguente illustra un esempio di come accedere a una stringa di connessione. Sostituire il segnaposto <ConnectionStringName> con il valore appropriato.

    // Setup the connection to Azure Storage
    var storageAccount = CloudStorageAccount.Parse(RoleEnvironment.GetConfigurationSettingValue("<ConnectionStringName>"));
    

Aggiungere impostazioni personalizzate da usare nel progetto servizi cloud di Azure (supporto esteso)

Le impostazioni personalizzate nel file di configurazione del servizio consentono di aggiungere un nome e un valore per una stringa per una configurazione del servizio specifica. È possibile scegliere di usare questa impostazione per configurare una funzionalità nel servizio cloud leggendo il valore dell'impostazione e usando questo valore per controllare la logica nel codice. È possibile modificare questi valori di configurazione del servizio senza dover ricompilare il pacchetto del servizio o quando il servizio cloud è in esecuzione. Il codice può verificare la presenza di notifiche di quando viene modificata un'impostazione. Per altre informazioni, vedere RoleEnvironment.Changing Event.

È possibile aggiungere, rimuovere o modificare impostazioni personalizzate per le configurazioni del servizio. È possibile che si vogliano valori diversi per queste stringhe per configurazioni del servizio diverse.

Usando un valore diverso per ogni configurazione del servizio, non è necessario usare stringhe diverse nel servizio cloud o modificare il codice quando si pubblica il servizio cloud in Azure. È possibile usare lo stesso nome per la stringa nel codice e il valore è diverso, in base alla configurazione del servizio selezionata quando si compila il servizio cloud o quando lo si pubblica.

  1. Creare o aprire un progetto di Servizi cloud di Azure (supporto esteso) in Visual Studio.

  2. In Esplora soluzioni espandere il nodo del progetto. Nel nodo Ruoli, fare clic con il pulsante destro del mouse sul ruolo da aggiornare e, dal menu di scelta rapida, seleziona Proprietà.

    menu di scelta rapida del ruolo di Azure Esplora soluzioni

  3. Selezionare la scheda Impostazioni.

    scheda Impostazioni

  4. Nell'elenco configurazione del servizio, selezionare la configurazione del servizio da aggiornare.

    Elenco di configurazione del servizio 2

  5. Per aggiungere un'impostazione personalizzata, selezionare Aggiungi impostazione.

    Aggiungi impostazione personalizzata

  6. Dopo aver aggiunto la nuova impostazione all'elenco, aggiornare la riga nell'elenco con le informazioni necessarie.

    Nuova impostazione personalizzata

    • Nome: immettere il nome dell'impostazione.
    • Tipo : selezionare stringhe dall'elenco a discesa.
    • Valore: immettere il valore dell'impostazione. È possibile immettere il valore direttamente nella cella valore, oppure selezionare l'icona con i tre punti (...) per immettere il valore nella finestra di dialogo Modifica stringa.
  7. Per eliminare un'impostazione personalizzata, selezionare l'impostazione e quindi selezionare Rimuovi impostazione.

  8. Nella barra degli strumenti di Visual Studio selezionare Salva.

Accedere a livello di codice al valore di un'impostazione personalizzata

I passaggi seguenti illustrano come accedere a livello di codice a un'impostazione personalizzata usando C#.

  1. Aggiungere le seguenti direttive using a un file C# in cui verrà utilizzata l'impostazione:

    using Microsoft.WindowsAzure;
    using Microsoft.WindowsAzure.Storage;
    using Microsoft.WindowsAzure.ServiceRuntime;
    
  2. Il codice seguente illustra un esempio di come accedere a un'impostazione personalizzata. Sostituire il segnaposto <SettingName> con il valore appropriato.

    var settingValue = RoleEnvironment.GetConfigurationSettingValue("<SettingName>");
    

Gestire l'archiviazione locale per ogni istanza del ruolo

È possibile aggiungere l'archiviazione del file system locale per ogni istanza di un ruolo. I dati archiviati in tale archiviazione non sono accessibili da altre istanze del ruolo per cui vengono archiviati i dati o da altri ruoli.

  1. Creare o aprire un progetto di Servizi cloud di Azure (supporto esteso) in Visual Studio.

  2. In Esplora soluzioni espandere il nodo del progetto. Nel nodo Ruoli fare clic con il pulsante destro del mouse sul ruolo da aggiornare e selezionare Proprietàdal menu contestuale.

    menu di scelta rapida del ruolo di Esplora soluzioni Azure

  3. Selezionare la scheda archiviazione locale.

    scheda Archiviazione locale

  4. Nell'elenco Configurazione del servizio, assicurarsi che tutte le configurazioni sia selezionato poiché le impostazioni di archiviazione locale si applicano a tutte le configurazioni del servizio. Qualsiasi altro valore comporta la disabilitazione di tutti i campi di input nella pagina.

    Elenco configurazioni di servizio 3

  5. Per aggiungere una voce di archiviazione locale, selezionare Aggiungi archiviazione locale.

    Aggiungi archiviazione locale

  6. Dopo aver aggiunto la nuova voce di archiviazione locale all'elenco, aggiornare la riga nell'elenco con le informazioni necessarie.

    Nuova voce di archiviazione locale

    • Nome: immettere il nome da usare per la nuova risorsa di archiviazione locale.
    • dimensioni (MB): immettere le dimensioni in MB necessarie per la nuova risorsa di archiviazione locale.
    • Pulizia durante il riciclo del ruolo: selezionare questa opzione per rimuovere i dati nella nuova risorsa di archiviazione locale quando la macchina virtuale per il ruolo viene riavviata.
  7. Per eliminare una voce di archiviazione locale, selezionare la voce e quindi selezionare Rimuovi archiviazione locale.

  8. Nella barra degli strumenti di Visual Studio selezionare Salva.

Accesso all'archiviazione locale a livello di codice

Questa sezione illustra come accedere a livello di codice all'archiviazione locale usando C# scrivendo un file di testo di test MyLocalStorageTest.txt.

Scrivere un file di testo nell'archiviazione locale

Il codice seguente illustra un esempio di come scrivere un file di testo nell'archivio locale. Sostituire il segnaposto <LocalStorageName> con il valore appropriato.

// Retrieve an object that points to the local storage resource
LocalResource localResource = RoleEnvironment.GetLocalResource("<LocalStorageName>");

//Define the file name and path
string[] paths = { localResource.RootPath, "MyLocalStorageTest.txt" };
String filePath = Path.Combine(paths);

using (FileStream writeStream = File.Create(filePath))
{
    Byte[] textToWrite = new UTF8Encoding(true).GetBytes("Testing Web role storage");
    writeStream.Write(textToWrite, 0, textToWrite.Length);
}

Trovare un file scritto nell'archiviazione locale

Per visualizzare il file creato dal codice nella sezione precedente, seguire questa procedura:

  1. Nell'area di notifica di Windows fare clic con il pulsante destro del mouse sull'icona di Azure e scegliere Mostra interfaccia utente dell'emulatore di calcolo.

    Mostra emulatore di calcolo di Azure

  2. Selezionare il ruolo Web.

    'emulatore di calcolo di Azure

  3. Nel menu emulatore di calcolo di Microsoft Azure selezionare Strumenti di >Apri archivio locale.

    Apri voce di menu negozio locale

  4. Quando si apre la finestra di Esplora risorse, immettere 'MyLocalStorageTest.txt'' nella casella di testo ricerca e selezionare Invio per avviare la ricerca.

Per altre informazioni sui progetti di Azure in Visual Studio, vedere Configurazione di un progetto di Azure. Per altre informazioni sullo schema del servizio cloud, vedere Riferimento allo schema.