Gestire le applicazioni per più ambienti
Azure Service Fabric consente di creare cluster usando un numero variabile di computer, da uno solo fino a molte migliaia. Nella maggior parte dei casi risulta necessario distribuire l'applicazione in più configurazioni cluster, ad esempio cluster di sviluppo locale, di sviluppo condiviso e di produzione. Tutti questi cluster vengono considerati ambienti diversi in cui deve essere eseguito il codice. I file binari dell'applicazione possono essere eseguiti senza modifiche nei diversi ambienti, ma è spesso consigliabile definire diverse configurazioni per l'applicazione.
Si prendano in considerazione due semplici esempi:
- Il servizio è in ascolto su una porta definita, ma il numero di porta deve essere diverso per i vari ambienti
- È necessario fornire credenziali di binding diverse per un database nei vari ambienti
Definizione della configurazione
È possibile definire due diversi tipi di configurazione:
- Configurazione applicabile alla modalità di esecuzione dei servizi
- Ad esempio, il numero di porta per un endpoint o il numero di istanze di un servizio
- Questa configurazione è specificata nel file manifesto dell'applicazione o del servizio
- Configurazione applicabile al codice dell'applicazione
- Ad esempio, le informazioni di binding per un database
- Questa configurazione può essere specificata tramite file di configurazione o variabili di ambiente
Nota
Non tutti gli attributi nei file manifesto dell'applicazione e del servizio supportano parametri. In questi casi, è necessario ricorrere alla sostituzione di stringhe come parte del flusso di lavoro di distribuzione. In DevOps di Azure è possibile usare un'estensione come Replace token: https://marketplace.visualstudio.com/items?itemName=qetza.replacetokens oppure in Jenkins è possibile eseguire un'attività script per sostituire i valori.
Definizione dei parametri durante la creazione dell'applicazione
Quando si creano istanze di un'applicazione denominata in Service Fabric, si ha la possibilità di passare parametri. La modalità di esecuzione di questa operazione dipende da come si crea l'istanza dell'applicazione.
- In PowerShell il cmdlet
New-ServiceFabricApplication
accetta i parametri delle applicazioni come tabella hash. - Se si usa sfctl, il comando
sfctl application create
accetta i parametri come stringa JSON. Lo script install.sh usa sfctl. - In Visual Studio, nella cartella Parametri del progetto dell'applicazione, è disponibile un set di file di parametri Questi file di parametri vengono utilizzati durante la pubblicazione da Visual Studio tramite i servizi di Azure DevOps o il Team Foundation Server. In Visual Studio i file di parametri vengono passati allo script Deploy-FabricApplication.ps1.
Passaggi successivi
Gli articoli seguenti illustrano come applicare alcuni dei concetti descritti in questo articolo: