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
- Visual Studio (vedere [Download di Visual Studio] (https://visualstudio.microsoft.com/downloads/?cid=learn-onpage-download-cta)) con il carico di lavoro sviluppo di Azure installato e i modelli di progetto e di elementi di .NET Framework singoli componenti installati. Consulta Modifica Visual Studio.
- Un account Azure. Se non hai un account Azure, attiva i vantaggi di Azure per i sottoscrittori di Visual Studio o iscriviti per una prova gratuita.
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:
Creare o aprire un progetto di Servizi cloud di Azure (supporto esteso) in Visual Studio.
In Esplora soluzioni, fare clic destro sul progetto e scegliere Proprietàdal menu contestuale.
Nella pagina delle proprietà del progetto, selezionare la scheda Sviluppo.
pagina delle proprietà del progetto
Nell'elenco configurazione del servizio selezionare il nome della configurazione del servizio da modificare.
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.
Creare o aprire un progetto di Servizi cloud di Azure (supporto esteso) in Visual Studio.
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.
Selezionare la scheda Configurazione.
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.
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.
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.
Creare o aprire un progetto di Servizi cloud di Azure (supporto esteso) in Visual Studio.
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à.
Selezionare la scheda Impostazioni.
Nell'elenco Configurazione del Servizio, selezionare la configurazione del servizio da aggiornare.
Per aggiungere una stringa di connessione, seleziona Aggiungi impostazione.
Dopo aver aggiunto la nuova impostazione all'elenco, aggiornare la riga nell'elenco con le informazioni necessarie.
- 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.
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.
Per eliminare una stringa di connessione, selezionare la stringa di connessione e quindi selezionare Rimuovi impostazione.
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#.
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;
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.
Creare o aprire un progetto di Servizi cloud di Azure (supporto esteso) in Visual Studio.
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à.
Selezionare la scheda Impostazioni.
Nell'elenco configurazione del servizio, selezionare la configurazione del servizio da aggiornare.
Per aggiungere un'impostazione personalizzata, selezionare Aggiungi impostazione.
Dopo aver aggiunto la nuova impostazione all'elenco, aggiornare la riga nell'elenco con le informazioni necessarie.
- 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.
Per eliminare un'impostazione personalizzata, selezionare l'impostazione e quindi selezionare Rimuovi impostazione.
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#.
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;
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.
Creare o aprire un progetto di Servizi cloud di Azure (supporto esteso) in Visual Studio.
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.
Selezionare la scheda archiviazione locale.
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.
Per aggiungere una voce di archiviazione locale, selezionare Aggiungi archiviazione locale.
Dopo aver aggiunto la nuova voce di archiviazione locale all'elenco, aggiornare la riga nell'elenco con le informazioni necessarie.
- 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.
Per eliminare una voce di archiviazione locale, selezionare la voce e quindi selezionare Rimuovi archiviazione locale.
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:
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.
Selezionare il ruolo Web.
Nel menu emulatore di calcolo di Microsoft Azure selezionare Strumenti di >Apri archivio locale.
Quando si apre la finestra di Esplora risorse, immettere 'MyLocalStorageTest.txt'' nella casella di testo ricerca e selezionare Invio per avviare la ricerca.
Contenuto correlato
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.