Esercitazione: Distribuire un'applicazione con integrazione continua/distribuzione continua in un cluster di Service Fabric
Questa esercitazione è la quarta parte di una serie e illustra come configurare l'integrazione continua e la distribuzione continua per un'applicazione di Azure Service Fabric usando Azure Pipelines. È necessaria un'applicazione di Service Fabric esistente. Viene usata come esempio l'applicazione creata in Compilare un'applicazione .NET.
Nella terza parte della serie si apprenderà come:
- Aggiungere il controllo del codice sorgente al progetto
- Creare una pipeline di compilazione in Azure Pipelines
- Creare una pipeline di versione in Azure Pipelines
- Distribuire automaticamente e aggiornare un'applicazione
In questa serie di esercitazioni si apprenderà come:
- Creare un'applicazione di Service Fabric .NET
- Distribuire l'applicazione in un cluster remoto
- Aggiungere un endpoint HTTPS a un servizio front-end ASP.NET Core
- Configurare l'integrazione continua e la distribuzione continua con Azure Pipelines
- Configurare il monitoraggio e la diagnostica per l'applicazione
Prerequisiti
Prima di iniziare questa esercitazione:
- Se non si ha una sottoscrizione di Azure, creare un account gratuito.
- Installare Visual Studio 2019 e installare i carichi di lavoro Sviluppo di Azure e Sviluppo ASP.NET e Web.
- Installare Service Fabric SDK
- Creare un cluster di Service Fabric per Windows in Azure, ad esempio eseguendo questa esercitazione
- Creare un'organizzazione di Azure DevOps. In questo modo è possibile creare un progetto in Azure DevOps e usare Azure Pipelines.
Scaricare l'applicazione di voto di esempio
Se l'applicazione di voto di esempio non è stata compilata nella parte 1 di questa serie di esercitazioni, è possibile scaricarla. In una finestra di comando eseguire il comando seguente per clonare il repository dell'app di esempio nel computer locale.
git clone https://github.com/Azure-Samples/service-fabric-dotnet-quickstart
Preparare un profilo di pubblicazione
Dopo aver creato un'applicazione e distribuito l'applicazione in Azure, si è pronti per configurare l'integrazione continua. Prima di tutto, nell'applicazione preparare un profilo di pubblicazione che dovrà essere usato dal processo di distribuzione eseguito in Azure Pipelines. Il profilo di pubblicazione deve essere configurato impostando il cluster preparato in precedenza come destinazione. Avviare Visual Studio e aprire un progetto di applicazione di Service Fabric esistente. In Esplora soluzioni fare clic con il pulsante destro del mouse sull'applicazione e scegliere Pubblica.
Scegliere un profilo di destinazione all'interno del progetto di applicazione da usare per il flusso di lavoro di integrazione continua, ad esempio Cloud. Specificare l'endpoint di connessione del cluster. Selezionare la casella di controllo Aggiorna l'applicazione in modo che l'applicazione venga aggiornata per ogni distribuzione in Azure DevOps. Fare clic sul collegamento ipertestuale Salva per salvare le impostazioni per il profilo di pubblicazione e quindi fare clic su Annulla per chiudere la finestra di dialogo.
Condividere la soluzione di Visual Studio in un nuovo repository GIT di Azure DevOps
Condividere i file di origine dell'applicazione in un progetto in Azure DevOps, in modo da poter generare le compilazioni.
Creare un nuovo repository Git locale per il progetto selezionando Aggiungi al controllo del codice sorgente ->Git sulla barra di stato nell'angolo inferiore destro di Visual Studio.
Nella visualizzazione Push in Team Explorer selezionare il pulsante Pubblica repository GIT nella sezione Esegui push in Azure DevOps.
Controllare la posta elettronica e selezionare il proprio account nell'elenco a discesa Azure DevOps Domain (Dominio Azure DevOps). Immettere il nome del repository e selezionare Pubblica repository.
Con la pubblicazione del repository viene creato un nuovo progetto nell'account con lo stesso nome del repository locale. Per creare il repository in un progetto esistente, fare clic su Avanzate accanto al nome del repository e selezionare un progetto. È possibile visualizzare il codice sul Web selezionando Visualizza nel Web.
Configurare il recapito continuo con Azure Pipelines
Una pipeline di compilazione di Azure Pipelines descrive un flusso di lavoro costituito da un set di istruzioni di compilazione eseguite in sequenza. Creare una pipeline di compilazione che produca un pacchetto dell'applicazione di Service Fabric e altri artefatti, per la distribuzione in un cluster di Service Fabric. Altre informazioni sulle pipeline di compilazione di Azure Pipelines.
Una pipeline di versione di Azure Pipelines descrive un flusso di lavoro che distribuisce un pacchetto dell'applicazione in un cluster. Se usate insieme, la pipeline di compilazione e la pipeline di versione eseguono l'intero flusso di lavoro, a partire dai file di origine fino alla creazione di un'applicazione in esecuzione nel cluster. Altre informazioni sulle pipeline di versione di Azure Pipelines.
Creazione di una pipeline di compilazione
Aprire un Web browser e passare al nuovo progetto all'indirizzo: https://<myaccount>.visualstudio.com/Voting/Voting%20Team/_git/Voting.
Selezionare la scheda Pipeline, Compilazioni e quindi fare clic su Nuova pipeline.
Selezionare Azure Repos Git come origine, Voting come progetto team, Voting come repository e master come ramo predefinito per le compilazioni manuale e pianificata. Fare clic su Continua.
In Seleziona un modello selezionare il modello Applicazione Azure Service Fabric e quindi fare clic su Applica.
In Attività immettere "Hosted VS2017" come Pool di agenti.
In Trigger abilitare l'integrazione continua selezionando Abilita l'integrazione continua. In Filtri per ramiSpecifica rami è automaticamente impostato su master. Selezionare Salva e accoda per avviare manualmente una compilazione.
Le compilazioni vengono attivate anche al momento del push o dell'archiviazione. Per controllare lo stato di avanzamento della compilazione, passare alla scheda Compilazioni. Dopo aver verificato la corretta esecuzione della compilazione, definire una pipeline di versione per la distribuzione dell'applicazione in un cluster.
Creare una pipeline di versione
Selezionare la scheda Pipeline, Versioni e quindi + Nuova pipeline. In Seleziona un modello selezionare il modello Distribuzione di Azure Service Fabric dall'elenco e quindi fare clic su Applica.
Selezionare Attività ->Ambiente 1 e quindi + Nuovo per aggiungere una nuova connessione cluster.
Nella visualizzazione Add new Service Fabric Connection (Aggiungi nuova connessione Service Fabric) selezionare l'autenticazione Basato su certificato o di Microsoft Entra ID. Specificare "mysftestcluster" come nome della connessione e "tcp://mysftestcluster.southcentralus.cloudapp.azure.com:19000" come endpoint del cluster oppure specificare l'endpoint del cluster in cui si esegue la distribuzione.
Per l'autenticazione basata su certificato, aggiungere l'Identificazione personale certificato del server del certificato del server usato per creare il cluster. In Certificato client aggiungere la codifica Base 64 del file del certificato client. Per informazioni su come ottenere la rappresentazione con codifica Base 64 del certificato, vedere la finestra di dialogo popup della Guida per il campo. Aggiungere anche la Password per il certificato. È possibile usare il certificato del cluster o del server se non è disponibile un certificato client separato.
Per le credenziali di Microsoft Entra aggiungere l'Identificazione personale certificato del server del certificato del server usato per creare il cluster e le credenziali da usare per connettersi al cluster nei campi Nome utente e Password.
Fare clic su Aggiungi per salvare la connessione cluster.
Aggiungere quindi un artefatto alla pipeline in modo da consentire alla pipeline di versione di trovare l'output dalla compilazione. Selezionare Pipeline e Artifacts->+ Aggiungi. In Origine (definizione di compilazione) selezionare la pipeline di compilazione creata in precedenza. Fare clic su Aggiungi per salvare l'elemento di compilazione.
Abilitare il trigger di distribuzione continua in modo che la versione venga creata automaticamente al termine della compilazione. Fare clic sull'icona a forma di fulmine nell'artefatto, abilitare il trigger e fare clic su Salva per salvare la pipeline di versione.
Selezionare + Versione ->Crea versione ->Crea per creare manualmente una versione. È possibile monitorare lo stato della versione nella scheda Versioni.
Verificare che la distribuzione venga completata correttamente e che l'applicazione sia in esecuzione nel cluster. Aprire un Web browser e passare a http://mysftestcluster.southcentralus.cloudapp.azure.com:19080/Explorer/
. Si noti la versione dell'applicazione, in questo esempio è "1.0.0.20170616.3".
Eseguire commit e push delle modifiche, attivare la compilazione di una versione
Per verificare che la pipeline di integrazione continua funzioni correttamente, è possibile archiviare alcune modifiche al codice in Azure DevOps.
Durante la scrittura del codice, le modifiche vengono rilevate automaticamente da Visual Studio. Per eseguire il commit delle modifiche nel repository Git locale, selezionare l'icona di modifiche in sospeso () nella barra di stato in basso a destra.
Nella visualizzazione Modifiche in Team Explorer aggiungere un messaggio che descrive l'aggiornamento ed eseguire il commit delle modifiche.
Selezionare l'icona della barra di stato delle modifiche non pubblicate () o la visualizzazione Sincronizzazione in Team Explorer. Selezionare Esegui push per aggiornare il codice in Azure Pipelines.
Il push delle modifiche in Azure Pipelines attiva automaticamente una compilazione. Al completamento della pipeline di compilazione viene creata automaticamente una versione e viene avviato l'aggiornamento dell'applicazione nel cluster.
Per controllare lo stato di avanzamento della compilazione, passare alla scheda Compilazioni in Team Explorer in Visual Studio. Dopo aver verificato la corretta esecuzione della compilazione, definire una pipeline di versione per la distribuzione dell'applicazione in un cluster.
Verificare che la distribuzione venga completata correttamente e che l'applicazione sia in esecuzione nel cluster. Aprire un Web browser e passare a http://mysftestcluster.southcentralus.cloudapp.azure.com:19080/Explorer/
. Prendere nota della versione dell'applicazione, che in questo esempio è "1.0.0.20170815.3".
Aggiornare l'applicazione
Apportare modifiche al codice nell'applicazione. Salvare le modifiche ed eseguirne il commit, come descritto nei passaggi precedenti.
Dopo l'avvio dell'aggiornamento dell'applicazione, è possibile controllare lo stato di aggiornamento in Service Fabric Explorer:
L'aggiornamento dell'applicazione potrebbe richiedere alcuni minuti. Una volta completato l'aggiornamento, l'applicazione eseguirà la versione successiva, in questo esempio la versione "1.0.0.20170815.4".
Passaggi successivi
Questa esercitazione ha descritto come:
- Aggiungere il controllo del codice sorgente al progetto
- Creazione di una pipeline di compilazione
- Creare una pipeline di versione
- Distribuire automaticamente e aggiornare un'applicazione
Passare all'esercitazione successiva: