Delen via


DevOps-hulpprogrammaketen

Een DevOps-hulpprogrammaketen is een verzameling hulpprogramma's waarmee DevOps-teams kunnen samenwerken in de hele levenscyclus van het product en belangrijke DevOps-basisprincipes kunnen aanpakken.

De hulpprogramma's van een DevOps-hulpprogrammaketen kunnen worden gebruikt als een geïntegreerde eenheid voor planning, continue integratie, continue levering, bewerkingen, samenwerking en feedback. U kunt enkele voorbeelden van DevOps-technologieën bekijken in verschillende DevOps-fasen in Uw DevOps-technologie-ecosysteem definiëren.

Overwegingen voor devOps-hulpprogrammaketen

  • De processen van DevOps kunnen al in gebruik zijn binnen uw organisatie wanneer u een hulpprogrammaketen selecteert. U moet het juiste evenwicht vinden tussen de acceptatie van technologieën die geschikt zijn voor de behoeften van uw team en het doel van het standaardiseren en vermijden van heterogene DevOps-ecosystemen in uw organisatie.

  • U kunt verschillende soorten DevOps-hulpprogrammaketens gebruiken:

    • Alles-in-een: biedt een volledige oplossing die mogelijk niet kan worden geïntegreerd met andere hulpprogramma's van derden. Alles-in-één hulpprogrammaketens kunnen nuttig zijn voor organisaties die hun DevOps-traject beginnen. Voorbeeld: Volledige stack azure DevOps-hulpprogrammaketen.
    • Aangepast: Stelt teams in staat om bestaande hulpprogramma's die ze kennen en al in gebruik hebben, in de bredere DevOps-hulpprogrammaketen te brengen en te combineren. Integratie is essentieel voor deze typen hulpprogrammaketens om onnodig tijd te besteden aan het schakelen tussen schermen, het aanmelden bij meerdere locaties en het hebben van de uitdaging om informatie te delen tussen hulpprogramma's. Voorbeeld: Azure DevOps en GitHub-hulpprogrammaketen.
  • Overweeg het gebruik van hulpprogrammaketens die regelmatig worden bijgewerkt en die hulp hebben wanneer u deze nodig hebt via e-mail of onlineportal. Dit is een vereiste voor elk product of elke dienst die zich op het kritieke pad naar de markt bevindt.

Planning

  • Overweeg om een hulpprogramma te gebruiken dat ondersteuning biedt voor continue planning :
    • Releaseplanning
    • Epic en functieidentificatie
    • Prioriteitstelling
    • Schatting
    • Definitie van gebruikersverhaal
    • Verfijning van achterstand
    • Sprintplanning
    • Dagelijkse Scrum
    • Sprintbeoordeling
    • Retrospectief

Continue integratie en continue levering

  • Bij het implementeren van Continue integratie (CI)/Continuous Delivery (CD) kunt u overwegen een hulpprogramma te gebruiken dat ondersteuning biedt voor:
    • Versiebeheersystemen. Alles in uw project moet worden ingecheckt in één opslagplaats voor versiebeheer, zoals Git: code, tests, databasescripts, build- en implementatiescripts en alles wat nodig is om uw toepassing te maken, installeren, uitvoeren en testen.
    • Vertakkingsstrategie.
    • Geautomatiseerde builds.
  • Houd er rekening mee dat uw keuze voor opslagplaats ook wordt beïnvloed door vereisten voor gegevenssoevereine/locatie. Als u wilt dat uw gegevens lokaal worden gehost in een ander land of andere regio dan de VS, hebt u Azure DevOps-opslagplaatsen nodig wanneer GitHub-opslagplaatsen niet kunnen worden gebruikt.
  • Overweeg infrastructuur als code (IaC) te gebruiken om de hoeveelheid handmatige configuratie te minimaliseren die nodig is voor het inrichten van resources. Met IaC kunt u software-engineeringprocedures toepassen, zoals testen en versiebeheer, waardoor infrastructuur en implementaties geautomatiseerd, consistent en herhaalbaar worden. Houd scripts en sjablonen onder broncodebeheer, net als andere code die u onderhoudt.
  • Gebruik hulpprogramma's voor codescans om u te helpen zo snel mogelijk codefouten te detecteren. Voeg controles voorafgaand aan de implementatie toe om wijzigingen te valideren en te bevestigen vóór een implementatie (bijvoorbeeld: 'wat-als')-functie.
  • CI/CD-hulpprogramma's versnellen de markttijd voor uw product. Hulpprogramma's waarmee u taken kunt parallelliseren en profiteren van elastische schaalbaarheid op een in de cloud gehoste infrastructuur, verbeteren de prestaties van uw CI/CD-proces.
  • Overweeg het gebruik van CI/CD-hulpprogrammafuncties die ondersteuning bieden voor de meting van DevOps-prestaties. Dashboards en rapportage kunnen aspecten van uw ontwikkelingsproces bijhouden, zoals doorlooptijd, cyclustijd, werksnelheid, enzovoort.

Continue bewerkingen

Continue bewerkingen is een focus waarmee organisaties de continuïteit van de uitvoer tussen interne systemen en klanten kunnen behouden door een ononderbroken levering van kritieke services of functies. De doelstellingen van Continue bewerkingen zijn:

  • Om de noodzaak van geplande downtime of onderbrekingen, zoals gepland onderhoud, capaciteitsoptimalisatie en implementatie, te verminderen of te elimineren.
  • Om de algehele betrouwbaarheid en tolerantie van systemen in drie aspecten te vergroten, met mensen, processen en hulpprogramma's.

Cloudeigen hulpprogramma's gebruiken om:

  • Bewaak belangrijke metrische gegevens voor de prestaties en beschikbaarheid van de service.
  • Krijg digitale ervaring en klantinzichten.
  • Intelligentiegestuurde antwoorden genereren voor incidenten, systeemherstel of schalen.
  • Automatiseer proactief onderhoud en taken zoals implementatie of systeemupdates.
    • Azure Automation is een cloudeigen hulpprogramma dat u kunt gebruiken om automatisering op basis van gebeurtenissen te maken om problemen vast te stellen en op te lossen.

Samenwerking en feedback

  • Snelle feedbacklussen vormen het hart van het CI/CD-proces. Een CI/CD-hulpprogramma gebruikt feedback om voorwaarden in CI/CD-werkstroomlogica op te lossen en geeft informatie weer aan gebruikers, meestal via een dashboard.

  • Ondersteuning voor e-mailmeldingen en integratie met IDE's of communicatieplatforms zorgt ervoor dat u op de hoogte blijft van wat er gebeurt zonder dat u een dashboard hoeft te controleren. Zorg ervoor dat u de flexibiliteit hebt om te configureren welke waarschuwingen u ontvangt, omdat te veel waarschuwingen worden omgezet in achtergrondruis.

  • Elk hulpprogramma dat u voor de samenwerking kiest, moet de volgende samenwerkingsprocedures ondersteunen:

    • Kanban-samenwerking
    • Samenwerking aan wiki-inhoud
    • ChatOps-samenwerking
    • Teamruimte

Aanbevelingen voor DevOps-hulpprogrammaketens voor Azure Landing Zones

DevOps-hulpprogrammaketens voor de implementatie van Azure Landing Zone moeten rekening houden met alle eerder besproken DevOps-fasen:

  • Planning
  • CI/CD (inclusief automatiseringsmogelijkheden zoals Infrastructuur als code)
  • Operations
  • Samenwerkingen en feedback

Bekijk de richtlijnen voor de implementatie van landingszones en overwegingen voor het kiezen van een implementatieoptie bij het kiezen van de ingebruikname van landingszones.

Ongeacht de geselecteerde methodologie (beginnen met klein en uitbreiden of op ondernemingsniveau), zijn er enkele veelvoorkomende topologieën die ondernemingen doorgaans volgen wanneer ze hun DevOps-werkstromen en -hulpprogrammaketens ontwerpen.

  • Volledige stack Azure DevOps-hulpprogrammaketen: voor ondernemingen die al sterk zijn geïnvesteerd in het Microsoft-ecosysteem, kunnen ze met deze topologie optimaal profiteren van de systeemeigen integraties tussen Microsoft-producten en -services en belangrijke processen stroomlijnen.
  • Azure DevOps en GitHub-hulpprogrammaketen: met deze topologie kunt u de sterke punten van Zowel Azure als GitHub gebruiken als onderdeel van een goed geïntegreerde oplossing.

Volledige stack Azure DevOps-hulpprogrammaketen

Diagram van een volledige stack azure DevOps-hulpprogrammaketen.

DevOps-fase Hulpprogramma's
Planning Azure Boards biedt krachtige en flexibele planningsmogelijkheden voor ontwikkelaars en andere persona's, waaronder hiërarchische achterstanden, aanpasbare Kanbanborden, uitgebreide procesaanpassing, teamdashboards en aangepaste rapportage.
CI/CD Met Azure-opslagplaatsen kunt u privé-Git-opslagplaatsen maken en biedt ondersteuning voor verschillende Git-clients, vertakkingsstrategie en -beveiliging. Azure-opslagplaatsen bieden ook gelokaliseerde gegevenslocatie in de cloud om naleving van Europese regelgeving mogelijk te maken. Met Azure Pipelines kunnen klanten geautomatiseerde pijplijnen instellen voor CI/CD, inclusief voor geavanceerde testrapportage, en bieden ze krachtige ondersteuning voor pijplijnen met meerdere fasen. Gedetailleerde machtigingen, poorten, aangepaste controles en geautomatiseerde testresultatenrapportage in Azure Pipelines helpen u bij het afdwingen van best practices voor beveiliging, naleving en veilige implementatie in uw organisatie en ondersteuning voor parallelle uitvoering en schaalbaarheid van parallelle stappen. Azure Artifacts biedt een feed voor het opslaan van pakketten en voor het controleren en valideren van elk pakket voor beveiligingsdoeleinden, en biedt ook gedetailleerd machtigingsbeheer en controle. Azure Test Plans in Azure DevOps biedt een browsergebaseerde testbeheeroplossing voor verkennende, handmatige en gebruikersacceptatietests. Gebruikers van Azure-testplannen gebruiken doorgaans ook Azure Boards voor het plannen en projectbeheer. U kunt gebruikersverhalen en andere vereisten koppelen om cases te testen en fouten kunnen documenteren die zijn gevonden tijdens het testen. Marketplace-extensies voor DevOps gebruiken om statische codeanalyse te verbeteren met hulpprogramma's zoals referentiescanners, opensourcescanners, bugs en beveiligingsscanners en meer.
Operations Azure-dashboards en -rapportage bieden aangepaste rapportage waarmee u belangrijke metrische gegevens over de serviceprestaties kunt bewaken. Azure Diagnostics en Application Insights zijn de standaardmethode voor het bijhouden van de status en status van Azure-resources. Azure Monitor biedt gecentraliseerde bewaking en beheer. Azure Automation kan worden gebruikt om automatisering op basis van gebeurtenissen te maken om problemen vast te stellen en op te lossen.
Samenwerkingen en feedback Met Azure DevOps Wiki kunt u informatie delen met leden van andere teams en ondersteuning bieden voor gezamenlijke bewerking van de inhoud en structuur. Azure Boards bieden kanbansamenwerking en ondersteuning voor opmerkingen en discussies in achterstandsitems. U kunt Microsoft Teams integreren met Azure DevOps voor een volledige teamsamenwerkingservaring.

Azure DevOps- en GitHub-hulpprogrammaketen

Diagram van een Azure DevOps- en GitHub-hulpprogrammaketen.

DevOps-fase Hulpprogramma's
Planning Azure Boards biedt een stabiele en schaalbare oplossing voor planning, opslagplaatsbeheer, gegevensvisualisatie en hiërarchische organisatie van werkitems. Het is geïntegreerd met GitHub, zodat u werkitems en GitHub-doorvoeringen kunt koppelen. Hiermee kunt u ook uw ideale werkstroom kiezen, of dat nu een eenvoudige kant-en-klare werkstroom is of een aangepaste werkstroom die u bouwt met de krachtige en flexibele aanpassingsengine van Azure Boards. Wanneer u uw gegevens wilt visualiseren, kunt u met Azure Boards eenvoudig aangepaste dashboards bouwen en configureren en de voortgang gedurende uw projectlevenscycli bewaken.
CI/CD Gebruik de GitHub Enterprise-versie (GHE) van GitHub, die GitHub-opslagplaats en GitHub Advanced Security (GHAS) bevat. GHAS omvat CodeQL, Code scannen, Geheim scannen en Afhankelijkheidsbeoordeling. GHE biedt ook Codespaces, een cloud-IDE die u kunt gebruiken om code te ontwikkelen en die Visual Studio Code kan vervangen, die organisaties meestal opnemen in Volledige Stack Azure DevOps-scenario's. U kunt GitHub Actions gebruiken om niet-buildwerkstromen te automatiseren als uw opslagplaatsen zich in GitHub bevinden. Als u complexere scenario's hebt waarin u toegang nodig hebt tot code van buiten GitHub of gecentraliseerd beheer nodig hebt voor werkstroomsjablonen en pijplijnen bouwt, moet u Azure Pipelines gebruiken. Voor Azure Boards kunt u Azure Pipelines integreren met GitHub-opslagplaatsen. Zie Werken met Azure DevOps en GitHub voor meer informatie over het integreren van Azure DevOps en GitHub. GitHub Packages is een softwarepakketservice waarmee u uw eigen pakketten privé of openbaar kunt hosten. GitHub biedt ondersteuning voor containerregisters voor het hosten van Docker- of OCI-installatiekopieën. U hebt toegangstokens nodig om pakketten te publiceren, te installeren of te verwijderen en het levenscyclusbeheer van uw pakket veilig te houden. Als u pakketten wilt automatiseren, kunt u GitHub Packages integreren met GitHub Actions, GitHub-API's en webhooks om DevOps-werkstromen te maken die code, CI en implementaties in één interface bevatten.
Operations GitHub Insights biedt analytische rapporten op basis van gegevens van uw GitHub Enterprise Server-exemplaar om u te helpen uw softwareleveringsproces te begrijpen en te verbeteren. Gebruik voor diagnostische gegevens en beheer van landingszones de Azure-services die worden aanbevolen in het Azure DevOps-scenario met volledige stack.
Samenwerking en feedback U kunt GitHub-discussies gebruiken om vragen, ideeën, gesprekken, verzoeken om opmerkingen (RFC), resourceplanning en aankondigingen te delen. Gebruik Azure Boards om eenvoudig aangepaste dashboards te bouwen en te configureren en de voortgang gedurende de levenscyclus van uw project te bewaken. Microsoft Teams gebruiken voor een volledige ervaring voor teamsamenwerking.