Utilizzo di .NET Core su piattaforma Linux - AWS Elastic Beanstalk

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Utilizzo di .NET Core su piattaforma Linux

La piattaforma AWS Elastic Beanstalk .NET Core su Linux è un insieme di versioni della piattaforma per applicazioni .NET Core eseguite sul sistema operativo Linux.

Per informazioni dettagliate sui vari modi in cui è possibile estendere una piattaforma Elastic Beanstalk basata su Linux, consulta Estensione delle piattaforme Elastic Beanstalk Linux. Di seguito sono riportate alcune considerazioni specifiche della piattaforma.

Introduzione a .NET Core su piattaforma Linux

Server proxy

Elastic Beanstalk .NET Core su piattaforma Linux include un proxy inverso che inoltra le richieste alla tua applicazione. Per impostazione predefinita Elastic Beanstalk utilizza nginx come server proxy. Puoi scegliere di non usare alcun server proxy e configurare Kestrel come server web. Kestrel è incluso per impostazione predefinita nei modelli di progetto ASP.NET Core.

Struttura di un'applicazione

Puoi pubblicare applicazioni dipendenti da runtime che utilizzano il runtime .NET Core fornito da Elastic Beanstalk. È inoltre possibile pubblicare applicazioni autonome che includono il runtime .NET Core e le dipendenze dell'applicazione nel bundle di origine. Per ulteriori informazioni, consulta Pacchetto di applicazioni per .NET Core su piattaforma Linux.

Configurazione della piattaforma

Per configurare i processi in esecuzione nelle istanze del server nell'ambiente, includi un oggetto Procfile opzionale nel bundle di origine. Un Procfile è necessario se si dispone di più di un'applicazione nel bundle di origine.

Si consiglia di fornire sempre un Procfile nel bundle di origine insieme all'applicazione. In questo modo puoi controllare con precisione quali processi vengono eseguiti da Elastic Beanstalk per la tua applicazione.

Sono disponibili opzioni di configurazione specifiche della piattaforma nella console Elastic Beanstalk per la modifica della configurazione di un ambiente in esecuzione. Per conservare la configurazione dell'ambiente una volta terminata, puoi utilizzare configurazioni salvate per salvare le impostazioni e applicarle successivamente a un altro ambiente.

Per salvare le impostazioni nel codice sorgente, puoi includere i file di configurazione. Le impostazioni nei file di configurazione vengono applicate ogni volta che crei un ambiente o distribuisci l'applicazione. Puoi inoltre utilizzare i file di configurazione per installare pacchetti, eseguire script o altre operazioni di personalizzazione delle istanze durante le distribuzioni.

Le impostazioni applicate nella console Elastic Beanstalk sostituiscono le stesse impostazioni nei file di configurazione, se esistenti. Ciò ti consente di disporre di impostazioni predefinite nei file di configurazione, sostituibili con impostazioni specifiche per l'ambiente nella console. Per ulteriori informazioni sulla precedenza e altri metodi di modifica delle impostazioni, consulta Opzioni di configurazione.

Configurazione dell'ambiente .NET Core su Linux

Le impostazioni di NET Core su piattaforma Linux consentono di ottimizzare il comportamento delle istanze Amazon EC2. Puoi modificare la configurazione dell'istanza Amazon EC2 dell'ambiente Elastic Beanstalk utilizzando la console Elastic Beanstalk.

Utilizza la console Elastic Beanstalk per attivare la rotazione dei log in Amazon S3 e configurare variabili che l'applicazione è in grado di leggere dall'ambiente.

Per configurare l'ambiente .NET Core su Linux utilizzando la console Elastic Beanstalk
  1. Apri la console Elastic Beanstalk e nell'elenco Regions (Regioni) seleziona la tua Regione AWS.

  2. Nel pannello di navigazione selezionare Environments (Ambienti), quindi selezionare il nome dell'ambiente dall'elenco.

    Nota

    Se si dispone di molti ambienti, utilizzare la barra di ricerca per filtrare l'elenco degli ambienti.

  3. Nel riquadro di navigazione, seleziona Configuration (Configurazione).

  4. Nella categoria di configurazione Updates, monitoring, and logging (Aggiornamenti, monitoraggio e registrazione), scegli Edit (Modifica).

Opzioni di log

La sezione Log Options (Opzioni di log) ha due impostazioni:

  • Instance profile (Profilo dell'istanza): specifica il profilo dell'istanza che dispone dell'autorizzazione ad accedere al bucket Amazon S3 associato all'applicazione.

  • Enable log file rotation to Amazon S3 (Abilita rotazione file di log in Amazon S3): specifica se i file di log per le istanze Amazon EC2 dell'applicazione debbano essere copiati nel bucket Amazon S3 associato all'applicazione.

Proprietà dell'ambiente

La sezione Environment Properties (Proprietà di ambiente) consente di specificare le impostazioni di configurazione dell'ambiente nelle istanze Amazon EC2 che eseguono l'applicazione. Le proprietà di ambiente sono passate come coppie chiave-valore all'applicazione.

All'interno dell'ambiente .NET Core su Linux in esecuzione in Elastic Beanstalk, le variabili di ambiente sono accessibili tramite la funzione Environment.GetEnvironmentVariable("variable-name"). Ad esempio, è possibile leggere una proprietà denominata API_ENDPOINT su una variabile con il codice seguente.

string endpoint = Environment.GetEnvironmentVariable("API_ENDPOINT");

Per ulteriori informazioni, consultare Proprietà dell'ambiente e altre impostazioni software.

NET Core nello spazio dei nomi di configurazione Linux

È possibile utilizzare un file di configurazione per impostare le opzioni di configurazione ed eseguire alte attività di configurazione delle istanze durante le distribuzioni. Le opzioni di configurazione, che possono essere definite dal servizio Elastic Beanstalk o dalla piattaforma utilizzata, sono organizzate in spazi dei nomi.

Oltre alle opzioni supportate per tutti gli ambienti Elastic Beanstalk, la piattaforma .NET Core su Linux supporta quelle incluse negli spazi dei nomi seguenti:

  • aws:elasticbeanstalk:environment:proxy: scegli di utilizzare nginx o nessun server proxy. I valori validi sono nginx e none.

L'esempio di file di configurazione seguente mostra l'utilizzo delle opzioni di configurazione specifiche di .NET Core su Linux.

Esempio .ebextensions/proxy-settings.config
option_settings: aws:elasticbeanstalk:environment:proxy: ProxyServer: none

In Elastic Beanstalk sono disponibili varie opzioni di configurazione per la personalizzazione dell'ambiente. Oltre ai file di configurazione, puoi impostare le opzioni di configurazione tramite la console, le configurazioni salvate, la CLI EB o AWS CLI. Per ulteriori informazioni, consultare Opzioni di configurazione.