Tisser GitOps - AWS Conseils prescriptifs

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Tisser GitOps

Weave GitOps a été développé par Weaveworks, la société qui a introduit le terme. GitOps Cet outil fournit une GitOps solution complète qui repose sur les GitOps principes de base.

GitOps soutien

Area Capacités des outils

Git comme source unique de vérité

Weave GitOps utilise les référentiels Git comme source officielle pour définir l'état souhaité du système. Toutes les configurations, y compris les manifestes d'applications, les définitions d'infrastructure et les politiques, sont stockées dans Git.

Configuration déclarative

Le système repose sur des descriptions déclaratives de l'état complet du système. Ces descriptions sont généralement des manifestes Kubernetes, des diagrammes de Helm ou d'autres formats déclaratifs.

Synchronisation automatisée

Weave surveille GitOps en permanence les dépôts Git pour détecter les modifications. Lorsqu'il détecte des modifications, il les applique automatiquement à l'environnement cible.

Architecture native de Kubernetes

Weave GitOps est conçu comme un ensemble de contrôleurs Kubernetes et de ressources personnalisées. Il utilise les mécanismes d'extension de Kubernetes pour fournir des fonctionnalités. GitOps

Réconciliation continue

Cet outil compare constamment l'état réel du cluster avec l'état souhaité défini dans Git. Il corrige automatiquement toute dérive détectée entre ces états.

Gestion de plusieurs clusters

Weave GitOps prend en charge la gestion de plusieurs clusters Kubernetes à partir d'un seul plan de contrôle. Il permet un déploiement cohérent des applications dans différents environnements.

La politique en tant que code

Weave GitOps intègre le concept de politique en tant que code permettant d'appliquer les règles de sécurité et de conformité. Les politiques sont contrôlées par les versions, ainsi que le code de l'application et les définitions de l'infrastructure.

Livraison progressive

Cet outil prend en charge les stratégies de déploiement avancées telles que les versions et les blue/green déploiements de Canary. Il s'intègre à Flagger pour une livraison automatisée et progressive.

Observabilité et tableaux de bord

Weave GitOps fournit des tableaux de bord intégrés pour surveiller l'état des applications et des clusters. Il donne un aperçu des processus de réconciliation et de la santé des clusters.

Sécurisé dès la conception

L'outil met en œuvre les meilleures pratiques de sécurité, notamment l'intégration RBAC et la gestion des secrets. Il prend en charge différentes méthodes d'authentification et s'intègre aux fournisseurs d'identité d'entreprise.

Extensibilité et intégration

L'outil est conçu pour fonctionner avec un large éventail d'outils natifs du cloud. Il prend en charge des outils populaires tels que Flux, Helm et Kustomize.

Plateformes de développement en libre-service

Weave GitOps permet de créer des plateformes en libre-service pour les développeurs. Il fournit des modèles et des garde-fous pour le déploiement des applications.

GitOps  Automatisation

L'outil automatise de nombreux aspects du GitOps flux de travail, notamment la génération de pull requests pour les mises à jour.

Pipelines de livraison continue

Il s'intègre aux CI/CD systèmes pour créer des pipelines end-to-end de livraison.

Audit et conformité

Weave DevOps fournit une piste d'audit complète de toutes les modifications et actions. Il vous aide à répondre aux exigences de conformité grâce au contrôle des versions et à des processus automatisés.

Evolutivité

L'outil est conçu pour s'adapter aux petits projets aux déploiements de grande envergure destinés aux entreprises.

Collaboration en équipe

Weave GitOps facilite la collaboration entre les équipes de développement et d'exploitation grâce à des flux de travail basés sur Git.

GitOps en tant que service

Cet outil est proposé GitOps sous forme de service géré, ce qui simplifie l'adoption et la gestion.

Support hybride et multicloud

Weave GitOps permet une gestion cohérente entre les différents fournisseurs de cloud et les environnements sur site.

Sécurité continue

L'outil intègre l'analyse de sécurité et l'application des politiques tout au long du processus de déploiement.

Weave GitOps met en œuvre ces principes pour fournir une GitOps solution complète qui va au-delà de l'automatisation de base du déploiement. Il vise à créer un modèle opérationnel complet pour les applications cloud natives qui met l'accent sur la sécurité, l'évolutivité et la facilité d'utilisation. En adhérant à ces GitOps principes, Weave GitOps aide les entreprises à gérer de manière cohérente, auditable et efficace leurs environnements Kubernetes sur plusieurs clusters et fournisseurs de cloud.

Pour plus d'informations, consultez la GitOpsdocumentation Weave.

Architecture

Le schéma suivant illustre un flux de travail GitOps sur CD piloté qui utilise Weave GitOps au sein d'un cluster EKS. Pour des informations détaillées, consultez le GitOpsréférentiel Weave.

Intégrez l' GitOps architecture et le flux de travail. AWS

où :

  • Étape 1 : fusion par pull request (PR). Un développeur valide les modifications apportées aux manifestes Kubernetes ou aux graphiques Helm stockés dans un référentiel Git. Lorsque le PR a été révisé et fusionné dans la branche principale, l'état souhaité de l'application est mis à jour dans le contrôle de source.

  • Étape 2 : synchronisation du référentiel. Weave GitOps s'exécute dans l'espace de noms Flux du cluster EKS et surveille en permanence le référentiel Git configuré. Lorsqu'il détecte des modifications, il extrait les dernières mises à jour pour réconcilier l'état déclaré.

  • Étape 3 : Déploiement vers l'espace de noms cible Weave GitOps compare l'état souhaité dans Git avec l'état réel du cluster. Il applique ensuite les modifications nécessaires à l'espace de noms de charge de travail cible afin que l'application soit déployée ou mise à jour en conséquence.