Soluzioni DevOps

Scopri gli strumenti e la tecnologia per distribuire il software in modo più rapido e affidabile

Strumenti DevOps in Azure

Con le soluzioni end-to-end disponibili in Azure i team possono implementare le procedure DevOps in ogni fase del ciclo di vita dell'applicazione, ovvero pianificazione, sviluppo, recapito e operatività. Queste tecnologie DevOps, combinate con le persone e i processi, permettono ai team di offrire continuamente valore ai clienti.

Piano

Offri ai team la possibilità di gestire il proprio lavoro in modo flessibile e con la visibilità completa di prodotti e progetti. Definisci, controlla e organizza il lavoro con lavagne Kanban, backlog, dashboard personalizzate e funzionalità di creazione di report con Azure Boards. Mantieni la trasparenza e rispetta le tempistiche per il lavoro richiesto per lo sviluppo con GitHub. Esplora le analisi con oggetti visivi e trasforma i dati in informazioni dettagliate con Power BI.

Sviluppare

Scrivi codice in modo più rapido e intelligente con Visual Studio e Visual Studio Code. Condividi il codice e collabora con sviluppatori che usano approcci simili ai tuoi con GitHub. Automatizza i test e applica l'integrazione continua sul cloud con Azure Pipelines, crea flussi di lavoro automatici dall'idea alla produzione con GitHub Actions e sposta i tuoi carichi di lavoro Jenkins in Azure. Effettua il provisioning di ambienti per sviluppatori in pochi minuti con Azure DevTest Labs.

Distribuzione

Distribuisci l'applicazione in qualsiasi servizio di Azure e automaticamente e con il controllo completo per offrire continuamente valore ai clienti. Definisci e configura più ambienti cloud con Azure Resource Manager o HashiCorp Terraform, quindi crea pipeline di recapito continuo in tali ambienti usando Azure Pipelines o strumenti come Jenkins e Spinnaker.

Operazioni

Implementa il monitoraggio dello stack completo, ottieni avvisi di utilità pratica e ricevi informazioni dettagliate dai log e dalla telemetria con Monitoraggio di Azure. Gestisci l'ambiente cloud con Automazione di Azure e con strumenti come Ansible, Chef o Puppet.

Assicurati che l'infrastruttura e le applicazioni sottoposte a provisioning siano sempre conformi con Azure Blueprints o Chef Automate. In combinazione con il Centro sicurezza di Azure, potrai limitare l'esposizione alle minacce grazie all'individuazione e correzione rapida delle vulnerabilità.

DevOps con GitHub

Trova nuovi modi per migliorare i processi e le procedure DevOps sul cloud con strumenti leggeri e funzionalità di GitHub che si integrano con Azure.

Crea il tuo flusso di lavoro DevOps in GitHub e Azure

Favorisci revisioni migliori del codice e il coordinamento tra i team di sviluppo approfittando dell'integrazione profonda tra GitHub e Azure Boards e Azure Pipelines. Gestisci le identità e le autorizzazioni per semplificare la collaborazione con GitHub e Azure Active Directory. Ottieni più rapidamente l'accesso a tutte le altre soluzioni di Azure eseguendo l'accesso ad Azure e Azure DevOps con le credenziali esistenti di GitHub.

Combina i vantaggi open source con la sicurezza di livello aziendale

Crea il software proprietario della tua organizzazione usando procedure consigliate da progetti open source su larga scala, tra cui la collaborazione aperta, la condivisione e il riutilizzo di codice e l'incremento della trasparenza, in una metodologia di sviluppo definita innersource.

L'implementazione di innersource tramite GitHub può incrementare la collaborazione nel team, la partecipazione e la produttività, rispondendo al tempo stesso a esigenze aziendali a livello di sicurezza e conformità generate dall'apertura sempre maggiore dei processi.

Soluzioni per le procedure DevOps

Soluzione DevOps che soddisfa le tue esigenze con servizi predefiniti di Azure come Azure DevOps. Puoi anche combinare alcuni strumenti DevOps open source per ottenere l'approccio ottimale per il tuo flusso di lavoro specifico e quindi integrarli in Azure. Indipendentemente dal fatto che la tua app usi macchine virtuali, app Web o Kubernetes, puoi implementare procedure DevOps come l'integrazione continua e il recapito continuo (CI/CD), l'infrastruttura come codice e il monitoraggio continuo con Azure e la tua toolchain DevOps preferita.

Dal codice al cloud, puoi automatizzare ogni parte del processo DevOps con integrazione continua e recapito continuo e i tuoi strumenti preferiti:

  • Definisci una pipeline CI/CD e gestisci i rilasci con più ambienti usando Azure Pipelines.
  • Specifica come destinazione qualsiasi servizio in Azure, inclusi il servizio Azure Kubernetes, Macchine virtuali di Azure o Funzioni di Azure.
  • Automatizza i flussi di lavoro con GitHub Actions.
  • Ospita carichi di lavoro Jenkins, estendi le configurazioni esistenti o semplifica l'approccio CI/CD con i plug-in Jenkins per Azure.
  • Crea distribuzioni veloci e ripetibili in Azure con Spinnaker.

Adotta metodi di Agile Software Development con la pianificazione, il controllo e la creazione di report per cicli di rilascio più brevi e visibilità completa nel processo di sviluppo software. Gestisci progetti con GitHub. Usa quindi Azure Boards per:

  • Definire, assegnare e controllare gli elementi di lavoro.
  • Gestire i backlog.
  • Creare dashboard personalizzati per tenere traccia dell'avanzamento.
  • Ottenere analisi e report avanzati.

Gestisci i repository Git, condividi e collabora con GitHub. Crea un flusso di lavoro di codice affidabile per il tuo team con:

Definisci le risorse cloud in modo descrittivo, affinché gli ambienti vengano sottoposti a controllo della versione e commit insieme al codice dell'applicazione nei repository. La gestione dell'infrastruttura come codice ti permette di distribuire le risorse cloud in modo ripetibile e affidabile, assicurando la regolamentazione completa degli ambienti cloud.

Gestisci la configurazione delle risorse nell'intero sistema per imporre gli stati desiderati, implementare gli aggiornamenti della configurazione e automatizzare la risoluzione di modifiche e problemi imprevisti. Azure offre più strumenti DevOps per la gestione della configurazione, tra cui Ansible, Chef, Puppet e Automazione di Azure.

Tieni sotto controllo l'integrità dell'infrastruttura e integra i dati in dashboard esistenti, come Grafana, Kibana o il portale di Azure con Monitoraggio di Azure.

  • Applica il monitoraggio continuo dello stack completo.
  • Configura avvisi di utilità pratica nei servizi di Azure.
  • Raccogli, sottoponi a query e analizza i log per ottenere informazioni dettagliate e attenuare i problemi.
  • Usa il monitoraggio predefinito dei contenitori per il servizio Azure Kubernetes.

Architetture della soluzione DevOps

Scopri come combinare più strumenti e tecnologie con Azure in questi scenari comuni per DevOps.

CI/CD for ContainersContainers make it very easy for you to continuously build and deploy your applications. By orchestrating deployment of those containers using Kubernetes in Azure Kubernetes Service (AKS), you can achieve replicable, manageable clusters of containers.12345678910
  1. Panoramica
  2. Flusso

Integrazione continua/Distribuzione continua per i contenitori

Panoramica

I contenitori semplificano la compilazione e la distribuzione continua di applicazioni. Grazie all'orchestrazione della distribuzione dei contenitori tramite Kubernetes nel servizio Azure Kubernetes puoi ottenere cluster di contenitori gestibili e replicabili.

Configurando una compilazione continua per generare l'orchestrazione e le immagini dei contenitori, Azure DevOps migliora la velocità e l'affidabilità della distribuzione.

Flusso

  1. 1 Modifica del codice sorgente dell'applicazione
  2. 2 Commit del codice dell'applicazione
  3. 3 L'integrazione continua attiva la compilazione dell'applicazione, la compilazione dell'immagine del contenitore e gli unit test
  4. 4 Push dell'immagine del contenitore nel Registro Azure Container
  5. 5 Il trigger di distribuzione continua orchestra la distribuzione di artefatti dell'applicazione con parametri specifici dell'ambiente
  6. 6 Distribuzione nel servizio Azure Kubernetes
  7. 7 Il contenitore viene avviato usando l'immagine del contenitore dal Registro Azure Container
  8. 8 Application Insights raccoglie e analizza i dati relativi a integrità, prestazioni e utilizzo
  9. 9 Verifica delle informazioni su integrità, prestazioni e utilizzo
  10. 10 Aggiornamento dell'elemento del backlog
Java CI/CD using Jenkins and Azure Web AppsAzure App Service is a fast and simple way to create web apps using Java, Node, PHP or ASP.NET, as well as supporting custom language runtimes using Docker. A continuous integration and continuous deployment (CI/CD) pipeline that pushes each of your changes automatically to Azure app services allows you to deliver value to your customers faster.JenkinsAzure ContainerInstancesAzureFilesAzure WebAppsAzure Databasefor MySQLGitHubIntelliJEngineerApplicationInsights182345677
  1. Panoramica
  2. Flusso

Integrazione continua/Distribuzione continua Java con Jenkins e app Web di Azure

Panoramica

Servizio app di Azure è un modo facile e veloce per creare app Web usando Java, Node, PHP o ASP.NET, nonché il supporto per runtime di linguaggi personalizzati tramite Docker. Una pipeline di integrazione continua e distribuzione continua che effettua automaticamente il push di ogni modifica nei servizi app di Azure ti permette di accelerare i tempi di distribuzione per i tuoi clienti.

Flusso

  1. 1 Modifica del codice sorgente dell'applicazione
  2. 2 Commit del codice in GitHub
  3. 3 Attivazione integrazione continua in Jenkins
  4. 4 Jenkins attiva un processo di compilazione tramite Istanze di Azure Container per un agente di compilazione dinamico
  5. 5 Jenkins compila e archivia l'artefatto in Archiviazione di Azure
  6. 6 Jenkins distribuisce l'applicazione Java in app Web di Azure con il supporto del database di Azure per MySQL
  7. 7 Azure Application Insights fornisce le metriche sulle prestazioni dell'applicazione
  8. 8 Monitoraggio dell'applicazione e implementazione di miglioramenti
Container CI/CD using Jenkins and Kubernetes on Azure Kubernetes Service (AKS)Containers make it easy for you to continuously build and deploy applications. By orchestrating the deployment of those containers using Azure Kubernetes Service (AKS), you can achieve replicable, manageable clusters of containers.123456778
  1. Panoramica
  2. Flusso

Integrazione continua e recapito continuo di contenitori tramite Jenkins e Kubernetes nel servizio Azure Kubernetes

Panoramica

I contenitori semplificano la compilazione e la distribuzione continua di applicazioni. Grazie all'orchestrazione della distribuzione dei contenitori tramite il servizio Azure Kubernetes puoi ottenere cluster di contenitori gestibili e replicabili.

Configurando una compilazione continua per generare l'orchestrazione e le immagini dei contenitori, puoi aumentare la velocità e l'affidabilità della distribuzione.

Flusso

  1. 1 Modificare il codice sorgente dell'applicazione.
  2. 2 Eseguire il commit del codice in GitHub.
  3. 3 Attivare l'Integrazione continua in Jenkins.
  4. 4 Jenkins attiva un processo di compilazione tramite Azure Kubernetes Service (AKS) per un agente di compilazione dinamico.
  5. 5 Jenkins compila un contenitore Docker ed esegue il push nel Registro Azure Container.
  6. 6 Jenkins distribuisce la nuova app in contenitori in Kubernetes in Azure.
  7. 7 Servizio Azure Container, supportato da Azure Cosmos DB.
  8. 8 Grafana mostra la visualizzazione delle metriche dell'applicazione e dell'infrastruttura tramite Monitoraggio di Azure.
  9. 9 Monitorare l'applicazione e apportare miglioramenti.
Immutable Infrastructure CI/CD using Jenkins and Terraform on Azure Virtual Architecture overviewAzure is a world-class cloud for hosting virtual machines running Windows or Linux. Whether you use Java, Node.js, Go, or PHP to develop your applications, you’ll need a continuous integration and continuous deployment (CI/CD) pipeline to push changes to these virtual machines automatically.JenkinsAzure Virtual MachineScale SetsTerraformAzure Managed Disks(VM Image)PackerGitHubEngineerAzure Log Analytics1765554423Visual Studio Code
  1. Panoramica
  2. Flusso

Panoramica della pipeline di integrazione continua/recapito continuo dell'infrastruttura non modificabile con Jenkins e Terraform nell'architettura virtuale di Azure

Panoramica

Azure è un cloud di livello superiore per ospitare macchine virtuali che eseguono Windows o Linux. Indipendentemente dal linguaggio che usi per sviluppare le tue applicazioni, ad esempio Java, Node.js, Go o PHP, ti servirà una pipeline di integrazione continua e distribuzione continua per effettuare automaticamente il push delle modifiche nelle macchine virtuali.

Flusso

  1. 1 Modificare il codice sorgente dell'applicazione.
  2. 2 Eseguire il commit del codice in GitHub.
  3. 3 Attivare l'Integrazione continua in Jenkins.
  4. 4 Jenkins attiva una creazione immagine Packer per creare una macchina virtuale e la archivia come immagine di macchina virtuale con Azure Managed Disks.
  5. 5 Jenkins attiva Terraform per eseguire il provisioning di un nuovo set di scalabilità di macchine virtuali usando l'immagine di macchina virtuale di Azure Managed Disks.
  6. 6 Azure Log Analytics raccoglie e analizza i log.
  7. 7 Monitorare l'applicazione e apportare miglioramenti.
CI/CD for Azure VMsAzure is a world-class cloud for hosting virtual machines running Windows or Linux. Whether you use ASP.NET, Java, Node.js or PHP to develop applications, you’ll need a continuous integration and continuous deployment (CI/CD) pipeline to push changes to these virtual machines automatically.1234567888910
  1. Panoramica
  2. Flusso

Integrazione continua/Distribuzione continua per le macchine virtuali di Azure

Panoramica

Azure è un cloud di livello superiore per ospitare macchine virtuali che eseguono Windows o Linux. Indipendentemente dal linguaggio che usi per sviluppare le tue applicazioni, ad esempio ASP.NET, Java, Node.js o PHP, ti servirà una pipeline di integrazione continua e distribuzione continua per effettuare automaticamente il push delle modifiche nelle macchine virtuali.

Azure DevOps fornisce la pipeline di integrazione continua/distribuzione continua a partire da un repository Git per la gestione del codice sorgente dell'applicazione e del codice dell'infrastruttura (modelli di Azure Resource Manager), un sistema di compilazione per la generazione di pacchetti e altri artefatti di compilazione e un sistema di gestione del rilascio per la configurazione di una pipeline per la distribuzione delle modifiche negli ambienti di sviluppo, test e produzione. La pipeline usa modelli di Azure Resource Manager per effettuare il provisioning o aggiornare l'infrastruttura in ogni ambiente e quindi distribuisce la build aggiornata. Puoi anche usare Azure DevTest Labs per eliminare automaticamente le risorse di test non in uso.

Flusso

  1. 1 Modifica del codice sorgente dell'applicazione
  2. 2 Commit del codice dell'applicazione e modello di Azure Resource Manager
  3. 3 L'integrazione continua attiva la compilazione dell'applicazione e gli unit test
  4. 4 Il trigger di distribuzione continua orchestra la distribuzione di artefatti dell'applicazione con parametri specifici dell'ambiente
  5. 5 Distribuzione nell'ambiente di controllo qualità
  6. 6 Distribuzione nell'ambiente di staging
  7. 7 Distribuzione nell'ambiente di produzione
  8. 8 Application Insights raccoglie e analizza i dati relativi a integrità, prestazioni e utilizzo
  9. 9 Verifica delle informazioni su integrità, prestazioni e utilizzo
  10. 10 Aggiornamento dell'elemento del backlog
CI/CD for Azure Web AppsAzure Web Apps is a fast and simple way to create web apps using ASP.NET, Java, Node.js or PHP. Deliver value faster to your customers with a continuous integration and continuous deployment (CI/CD) pipeline that pushes each of your changes automatically to Web Apps.12345678
  1. Panoramica
  2. Flusso

Integrazione continua/Recapito continuo per le app Web di Azure

Panoramica

Il servizio app Web di Azure è un modo facile e veloce per creare app Web con ASP.NET, Java, Node.js o PHP. Per velocizzare i tempi di distribuzione, puoi usare una pipeline di integrazione continua e distribuzione continua che effettua automaticamente il push di ogni modifica nelle app Web.

Flusso

  1. 1 Modificare il codice sorgente dell'applicazione.
  2. 2 Eseguire il commit del codice dell'applicazione e del file web.config delle app Web.
  3. 3 L'integrazione continua attiva la compilazione dell'applicazione e gli unit test.
  4. 4 Il trigger di distribuzione continua orchestra la distribuzione di artefatti dell'applicazione con parametri specifici dell'ambiente.
  5. 5 Distribuzione nelle app Web.
  6. 6 Azure Application Insights raccoglie e analizza i dati relativi a integrità, prestazioni e utilizzo.
  7. 7 Esaminare le informazioni su integrità, prestazioni e utilizzo.
  8. 8 Aggiornare l'elemento del backlog.
DevTest image factoryCreate, maintain and distribute custom images with the DevTest Image Factory, an automated image development and management solution from Azure Dev Test Labs.