11 dépôts
Automated controllers that continuously synchronize live infrastructure state with declarative configuration manifests.
Distinguishing note: None of the candidates fit; the candidates are either for financial data or marketing/support automation, whereas this is for infrastructure state management.
Explore 11 awesome GitHub repositories matching devops & infrastructure · Infrastructure Reconciliation Controllers. Refine with filters or upvote what's useful.
Pangolin is a zero-trust remote access platform designed to provide secure, identity-aware connectivity to private network resources. It functions as a cloud-native network controller that orchestrates encrypted tunnels, traffic routing, and access policies across distributed environments. By leveraging WireGuard for secure data transport, the platform enables authenticated access to internal web applications, terminal sessions, and remote desktops without exposing services to the public internet. The platform distinguishes itself through a declarative infrastructure model that synchronizes n
The platform manages cluster resources through a controller that supports both namespace-scoped and cluster-wide operation with configurable access permissions.
Argo Workflows is a container-native workflow engine that functions as a Kubernetes custom resource controller. It orchestrates complex sequences of containerized tasks by executing them as directed acyclic graphs, allowing for dependency management and parallel processing within a cluster. The system extends the native Kubernetes control plane to manage the full lifecycle of automated processes, from initial triggering to final resource cleanup. The platform distinguishes itself through its controller-pattern reconciliation, which continuously monitors workflow states to align them with desi
Continuously monitors workflow states and performs corrective actions to align the actual cluster state with desired configurations.
Crossplane is a Kubernetes-based control plane framework that functions as a cloud resource orchestrator and infrastructure-as-code platform. It enables the management of heterogeneous infrastructure by extending the Kubernetes API to provision and maintain external cloud services through declarative configuration. By utilizing custom resource controllers, it continuously reconciles the state of external infrastructure with defined desired states, ensuring consistent deployment and lifecycle management across multiple cloud providers. The platform distinguishes itself through its composition-
Controls the lifecycle of infrastructure by pausing updates, triggering manual reconciliations, or adjusting polling intervals.
Pipeline est un framework CI/CD natif Kubernetes et un orchestrateur de pipelines cloud-native. Il fonctionne comme un contrôleur de ressources personnalisé qui traduit des définitions de pipeline déclaratives en exécutions de pods coordonnées et en charges de travail gérées. Le système agit comme un exécuteur de tâches conteneurisées, permettant le lancement d'étapes de build autonomes et de tâches réutilisables qui traitent des entrées spécifiques pour produire des sorties définies. Il permet l'orchestration de workflows complexes en exécutant une séquence de conteneurs indépendants en tant que composants modulaires au sein d'un environnement cloud. La plateforme couvre la livraison logicielle automatisée et l'orchestration de tâches conteneurisées, prenant en charge une infrastructure de build multi-tenant grâce à l'isolation des ressources. Elle offre des capacités de surveillance des logs d'exécution et de progression, ainsi que la création de composants de pipeline réutilisables pouvant être partagés entre différents namespaces et projets.
Continuously monitors the state of custom resources to instantiate and manage the lifecycle of pods and tasks.
Kubebuilder is a framework and set of scaffolding tools used to build Kubernetes APIs and controllers. It functions as an operator framework that provides generators for custom resource definitions, admission webhooks, and RBAC manifests to extend cluster functionality. The project distinguishes itself through marker-based code generation, which parses source code comments to automatically produce Kubernetes manifests and boilerplate logic. It employs a hub-and-spoke versioning model to translate data between multiple API versions and uses a three-way merge strategy to automate project migrat
Deploys several distinct reconciliation loops for a single resource to handle different logic requirements.
The Operator SDK is a framework for building, packaging, and managing custom controllers that extend the Kubernetes API. It serves as a toolset for defining new API types and implementing reconcile loops to automate the lifecycles of complex applications. The project provides specialized support for creating operators based on Helm charts or Ansible playbooks, allowing users to maintain a desired cluster state using existing automation tools. It includes a dedicated system for packaging controllers into standardized container image bundles for distribution via the Operator Lifecycle Manager.
Enables modification of the reconciliation process behavior via metadata annotations on custom resources.
External Secrets Operator reads information from a third-party service like AWS Secrets Manager and automatically injects the values as Kubernetes Secrets.
Implements a controller that periodically polls external providers to update Kubernetes Secrets.
This repository is a curated collection of tutorials and source code examples for learning Spring Boot development, covering a range of practical project types. It provides hands-on materials for building complete applications, including a bulletin board forum system, a full-stack blog, and a large-scale e-commerce system, as well as projects that demonstrate a decoupled frontend and backend architecture. The collection focuses on guiding developers through real-world application construction, with step-by-step tutorials and source code studies for each project. It covers fundamental Spring B
Provides tutorials demonstrating annotation-driven REST controllers in Spring Boot.
Quip Node Manager est une interface utilisateur graphique conçue pour déployer, surveiller et configurer les nœuds du réseau Quip et leurs piles de conteneurs associées. Il sert de tableau de bord d'orchestration de conteneurs qui permet aux utilisateurs de gérer des services applicatifs interconnectés sans utiliser d'outils en ligne de commande. Le projet dispose d'un gestionnaire d'accélération matérielle pour mapper des ressources de calcul CPU et GPU spécifiques à l'environnement d'exécution et gérer la mémoire des périphériques. Il inclut un validateur de préparation système pour vérifier la disponibilité des outils de conteneur et l'accessibilité des ports réseau avant d'initier la pile applicative, ainsi qu'un gestionnaire de proxy inverse qui acquiert et renouvelle automatiquement les certificats de sécurité via DNS et vérification par email. Le logiciel fournit des capacités pour le déploiement automatisé de nœuds, le streaming de logs d'exécution en temps réel et la surveillance des mises à jour logicielles. Il suit les digests d'images et les versions d'applications à intervalles fixes pour déclencher des redémarrages automatiques du système lorsque des mises à jour sont disponibles.
Automatically tracks new image digests at fixed intervals to trigger system restarts when updates are available.
Ce projet est un client de mise à jour DNS dynamique conteneurisé conçu pour automatiser la synchronisation des enregistrements de domaine avec les adresses IP publiques changeantes. Il fonctionne comme un moteur de synchronisation multi-fournisseur qui surveille la connectivité réseau et met à jour les enregistrements DNS sur diverses plateformes cloud et services personnalisés pour assurer une résolution de domaine cohérente. Le système se distingue par un modèle d'adaptateur basé sur le fournisseur qui abstrait diverses API tierces dans une interface unifiée, permettant une gestion cohérente des enregistrements. Il emploie une découverte d'IP multi-source pour atténuer les limites de débit et les pannes de service, tandis que sa logique de réconciliation basée sur le polling garantit que les mises à jour ne sont déclenchées que lorsqu'une dérive entre l'IP publique actuelle et les enregistrements DNS distants est détectée. Le logiciel inclut un tableau de bord de gestion web réactif pour surveiller la santé du système, visualiser l'état des mises à jour et ajuster les configurations. Il dispose également d'un pipeline de notification piloté par les événements pour les alertes système et une résolution de conflit automatisée pour gérer les enregistrements de domaine racine et wildcard. L'application maintient une persistance de l'état local et des journaux historiques pour soutenir une synchronisation fiable et la récupération des données. Le service est conçu pour un déploiement en tant qu'utilitaire conteneurisé au sein d'environnements comme Kubernetes, prenant en charge l'exposition par ingress pour un accès distant à son interface de gestion.
Periodically polls external systems and reconciles DNS records only when a drift between the current IP and remote records is detected.
Ce projet est un contrôleur d'ingress Kubernetes qui gère le routage du trafic externe en s'intégrant directement à l'infrastructure d'équilibrage de charge de Google Cloud. Il fonctionne comme un contrôleur qui réconcilie continuellement l'état souhaité des définitions d'ingress du cluster avec la configuration réelle des équilibreurs de charge cloud-native. Le contrôleur automatise le provisionnement d'adresses IP statiques ou éphémères et configure les équilibreurs de charge pour distribuer les requêtes réseau à travers plusieurs zones de disponibilité. Il utilise un mappage déclaratif pour traduire les définitions de service abstraites en infrastructure cloud concrète, garantissant que le trafic entrant est dirigé vers les services appropriés au sein du cluster. Pour prendre en charge les environnements où plusieurs clusters partagent un seul projet cloud, le système implémente le namespacing des ressources. En ajoutant des identifiants uniques aux actifs cloud gérés, il empêche les collisions de noms et maintient l'isolation entre les différents déploiements de cluster.
Continuously synchronizes live infrastructure state with declarative configuration manifests.