CI/CD voor AKS-apps met Azure Pipelines

Azure Container Registry
Azure DevOps
Azure Kubernetes Service (AKS)
GitHub

Belangrijk

Microservices met AKS en Azure DevOps is een variant van Een CI/CD-pijplijn ontwerpen met behulp van Azure DevOps. Dit artikel is gericht op de AKS-specifieke facetten van het implementeren van AKS-toepassingen met Azure Pipelines.

Potentiële gebruikscases

Gebruik Azure Pipelines om AKS-toepassingen te implementeren.

Architectuur

Architecture diagram of an AKS CI/CD pipeline using Azure Pipelines.

Een Visio-bestand van deze architectuur downloaden.

Gegevensstroom

  1. Een pull-aanvraag (PR) naar Azure Repos Git activeert een PULL-pijplijn. Deze pijplijn voert snelle kwaliteitscontroles uit, zoals linting, bouw en eenheidstests van de code. Als een van de controles mislukt, wordt de pull-aanvraag niet samengevoegd. Het resultaat van een geslaagde uitvoering van deze pijplijn is een geslaagde samenvoeging van de pull-aanvraag.
  2. Een samenvoeging naar Azure Repos Git activeert een CI-pijplijn. Deze pijplijn voert dezelfde taken uit als de PULL-pijplijn met enkele belangrijke toevoegingen. De CI-pijplijn voert integratietests uit. Voor deze tests zijn geheimen vereist, dus deze pijplijn haalt deze geheimen op uit Azure Key Vault.
  3. Het resultaat van een geslaagde uitvoering van deze pijplijn is het maken en publiceren van een containerinstallatiekopie in een Niet-productie Azure Container Registry.
  4. Door de voltooiing van de CI-pijplijn wordt de CD-pijplijn geactiveerd.
  5. De CD-pijplijn implementeert een YAML-sjabloon in de faserings-AKS-omgeving. De sjabloon geeft de containerinstallatiekopieën op uit de niet-productieomgeving. De pijplijn voert vervolgens acceptatietests uit op basis van de faseringsomgeving om de implementatie te valideren. Er wordt een handmatige validatietaak uitgevoerd als de tests slagen, waarbij een persoon de implementatie moet valideren en de pijplijn moet hervatten. De handmatige validatiestap is optioneel. Sommige organisaties worden automatisch geïmplementeerd.
  6. Als de handmatige interventie wordt hervat, bevordert de CD-pijplijn de installatiekopieën van het niet-productie Azure Container Registry naar het productieregister.
  7. De CD-pijplijn implementeert een YAML-sjabloon in de AKS-productieomgeving. De sjabloon geeft de containerinstallatiekopieën op uit de productieomgeving.
  8. Container Insights stuurt periodiek prestatiegegevens, inventarisgegevens en statusinformatie van containerhosts en containers door naar Azure Monitor.
  9. Azure Monitor verzamelt waarneembaarheidsgegevens, zoals logboeken en metrische gegevens, zodat een operator de status, prestaties en gebruiksgegevens kan analyseren. Application Insights verzamelt alle toepassingsspecifieke bewakingsgegevens, zoals traceringen. Azure Log Analytics wordt gebruikt om al die gegevens op te slaan.

Onderdelen

Volgende stappen