23 dépôts
Systems for managing connections and failover between primary and backup remote clusters.
Distinct from Remote Cluster Access: Focuses on cluster-level failover and connection management rather than general remote access.
Explore 23 awesome GitHub repositories matching devops & infrastructure · Cluster Failover Managers. Refine with filters or upvote what's useful.
This project is a comprehensive Java backend engineering guide and technical reference focused on high-concurrency design, distributed systems, and microservices architecture. It provides detailed strategies for decomposing monolithic applications, managing service discovery, and implementing the architectural patterns required for scalable backend environments. The repository distinguishes itself through an extensive collection of big data algorithmic references and database scaling strategies. It covers memory-efficient techniques for analyzing massive datasets, such as Top-K element extrac
Provides strategies for automated master election and cluster reconfiguration during node failures.
RocketMQ is a cloud-native distributed messaging platform and streaming engine. It functions as a distributed transactional queue that ensures atomicity between local transactions and message delivery, and serves as an MQTT IoT message broker to bridge lightweight device traffic into high-performance data streams. The system is distinguished by a Kubernetes-native architecture that decouples compute from storage to allow independent scaling of traffic and data retention. It utilizes a tiered storage model to offload older data to remote storage and employs quorum-based replication and automat
Automatically detects primary node failures and promotes a secondary node to maintain continuous system availability.
Quarkus is a Kubernetes-native Java framework designed for building high-performance, memory-efficient applications. It utilizes ahead-of-time native compilation to transform Java code into standalone, optimized binaries that eliminate the need for a virtual machine, enabling rapid startup and reduced memory consumption. By performing code augmentation during the build phase, it shifts heavy processing tasks away from runtime, ensuring that applications are optimized for cloud-native environments. The framework distinguishes itself through a unified approach to reactive and imperative program
Manages connections to remote clusters with automated failover between primary and backup sites.
ioredis is a performance-focused Redis client for Node.js applications. It provides a comprehensive interface for interacting with Redis servers, including specialized clients for sharded clusters and Sentinel-based high availability environments. The project distinguishes itself through advanced networking and execution capabilities, such as automatic event-loop pipelining to reduce overhead and a system for routing read-write traffic between primary and replica nodes. It also features a dedicated Lua scripting interface that allows server-side scripts to be registered as custom client comma
Coordinates automated master failover and replica transitions to maintain cluster uptime.
Eureka is a service registry and discovery server that serves as a coordination tool for microservices. It provides a distributed service registry where instances record their network locations and health status to enable dynamic communication without the use of hardcoded addresses. The system functions as a client-side load balancing framework, providing location data to consumers so they can distribute network traffic across available instances. It employs a heartbeat-based health monitor to track instance availability and automatically removes unresponsive nodes from the registry to manage
Manages service failover by redirecting traffic away from instances that fail health checks.
Garnet is a multi-threaded in-memory database and distributed key-value store. It functions as a high-performance remote cache store that implements the RESP wire protocol to maintain compatibility with existing Redis clients and libraries. The project is distinguished by a shared-memory architecture that enables parallel request processing across multiple cores for sub-millisecond latency. It features a tiered storage system that automatically offloads colder data from system memory to SSD or cloud storage layers, and includes a specialized vector search database for high-dimensional similar
Exposes administrative commands that allow an external control plane to manage failure detection and trigger failovers.
DiceDB is a distributed cache manager and hierarchical storage engine based on a Valkey key-value store. It functions as a high-availability key-value cluster that balances performance and cost by distributing data across memory and disk tiers. The system supports working sets larger than available RAM by persisting evicted keys to disk and restoring them on demand. It also includes a real-time query subscription system that notifies clients when data matching specific criteria is updated. The project provides distributed cache coordination through master node health monitoring and quorum-ba
Ensures high availability through quorum-based leader election and failover monitoring.
This project provides a version of the Redis 3.0 codebase featuring detailed technical commentary and annotations. It serves as a technical resource for studying the internal design and implementation of an in-memory key-value store and the architecture of a networked NoSQL database. The documentation focuses on the implementation of the Redis Sentinel system, covering the mechanisms used for monitoring instance health, managing automatic failover, and notifying clients of primary node changes. The project covers broader architectural areas including in-memory data storage, high availability
Uses a consensus-driven approach among monitor nodes to elect a new primary when a failure is detected.
Patroni is a high availability manager and cluster orchestrator for PostgreSQL. It functions as an automatic failover controller and replication manager that ensures continuous database availability by automating leader election and promoting standby nodes during failures. The system maintains a consistent cluster state by acting as a distributed consensus coordinator. It synchronizes configuration and manages leader elections through integration with distributed configuration stores such as etcd, ZooKeeper, or Consul. Its broader capabilities include managing both synchronous and asynchrono
Automates the process of electing a new master and reconfiguring the cluster during a failure.
This project is a comprehensive educational resource and curriculum focused on site reliability engineering, distributed systems, and infrastructure operations. It provides technical guides, a systems engineering course, and instructional manuals designed to teach the principles of managing large-scale computing environments. The curriculum covers high-level architectural design for scalability and resilience, including fault-tolerant infrastructure, high-availability patterns, and microservices decomposition. It emphasizes the practical application of site reliability engineering through the
Explains consensus-based processes to maintain cluster quorum and prevent split-brain scenarios.
CloudNativePG is a Kubernetes operator designed for the administration, lifecycle management, and high availability of PostgreSQL database clusters. It functions as a declarative orchestrator that manages database instances through custom resources and manifests. The project distinguishes itself by automating complex operational tasks, including primary election and failover management via streaming physical replication. It provides specialized tools for database version migrations, supporting both offline in-place upgrades and online migrations through logical replication. The operator cove
Implements automated primary election and reconfiguration to ensure high availability during node failures.
Hazelcast is a distributed data platform that combines an in-memory data grid with a stream processing engine to support real-time analytics and event-driven applications. It functions as a partitioned, distributed key-value store that replicates data across cluster nodes to provide low-latency access and high availability. The platform also serves as a distributed SQL query engine, allowing users to execute standard SQL statements against both in-memory datasets and external data sources. What distinguishes Hazelcast is its use of a distributed consensus subsystem to maintain strongly consis
Configures automatic reconnection and failover strategies to ensure high availability.
Optimism est une stack de rollup optimiste pour Ethereum, conçue pour augmenter le débit des transactions en les traitant sur une couche secondaire et en validant l'état sur le mainnet Ethereum. Il fonctionne comme un framework de mise à l'échelle utilisant un séquenceur de rollup pour ordonnancer les transactions, produire des blocs et soumettre des données groupées à la blockchain principale. Le système intègre un mécanisme de preuve de fraude utilisant l'émulation d'instructions on-chain pour résoudre les litiges et vérifier l'exactitude des transitions d'état. Il inclut un ensemble d'outils dédiés au déploiement et à la mise à jour des smart contracts nécessaires pour initialiser et maintenir le réseau. Le projet couvre des domaines variés comme la synchronisation d'état de blockchain, le routage de messages cross-chain et l'administration de séquenceurs avec basculement haute disponibilité. Il fournit également une infrastructure pour la disponibilité des données, la génération de preuves de faute et un framework orienté services pour le développement de composants blockchain. Le dépôt inclut un kit de développement avec des utilitaires pour la gestion de comptes, la simulation réseau et les tests d'intégration afin de valider le comportement du système et la stabilité des mises à jour.
Coordinates a cluster of nodes to automate leadership transfer and maintain continuous block production during failures.
Orchestrator est un système de haute disponibilité et un gestionnaire de réplication pour les clusters de bases de données MySQL. Il fonctionne comme un automatiseur de basculement et un visualiseur de topologie conçu pour détecter les pannes de maître et promouvoir les réplicas de secours afin de minimiser les temps d'arrêt du système. Le projet se concentre sur la gestion et la reconfiguration des topologies de réplication MySQL pour maintenir une distribution cohérente des données. Il utilise l'exploration de découverte de topologie pour mapper les structures de réplication et identifie les pannes actives au sein du cluster de base de données. Le système fournit des fonctionnalités pour la récupération automatisée de cluster, le suivi d'instance conscient de l'emplacement et la reconfiguration de topologie basée sur des contraintes. Il maintient également un journal d'audit de l'enregistrement d'état pour suivre les changements de topologie historiques et les événements de basculement.
Detects master failures and triggers automated promotions based on the state of the MySQL replication graph.
MySQL replication topology management and HA
Handles MySQL master and intermediate master failovers with configurable recovery policies and manual override support.
Cronicle is a distributed job scheduler that replaces traditional cron with a browser-based management interface. It runs scheduled tasks across a cluster of servers with automatic failover, using a custom cron parser that intersects day-of-month and day-of-week constraints when both are specified. The system executes jobs through a plugin framework that runs command-line scripts in any language, communicating via JSON over standard input and output. The scheduler provides a web-based real-time dashboard for monitoring running jobs with live logs, resource usage charts, and progress updates.
Implements automatic primary election and failover to backup servers for distributing jobs across a cluster.
Seesaw est une plateforme de distribution de trafic basée sur la technologie Linux Virtual Server. Elle fonctionne comme un équilibreur de charge pour gérer des clusters réseau à haute disponibilité, utilisant un contrôleur de routage BGP anycast pour annoncer et retirer des adresses IP virtuelles afin de diriger le trafic vers le nœud disponible le plus proche. Le système inclut un orchestrateur de retour direct au serveur (DSR) qui permet aux serveurs backend d'envoyer le trafic sortant directement aux clients. Il fournit également une interface en ligne de commande pour la gestion du cluster, permettant de recharger les configurations et de déclencher des basculements entre les nœuds. La plateforme couvre la surveillance de la santé des backends via les protocoles HTTP, TCP, ICMP et DNS. Elle gère également la distribution du trafic réseau grâce à la gestion du poids des serveurs pour contrôler la proportion de trafic reçue par chaque hôte en fonction de sa capacité.
Manages load balancer configurations and triggers failovers between nodes to maintain continuous service availability.
Pigsty est une plateforme d'orchestration d'infrastructure de base de données complète conçue pour automatiser le cycle de vie complet des clusters PostgreSQL à haute disponibilité. Il fonctionne comme un framework d'infrastructure en tant que code qui gère la coordination des clusters, le provisionnement des nœuds et la découverte de services via des playbooks idempotents. En intégrant des mécanismes de consensus distribués, la plateforme assure un basculement automatisé et une application cohérente de l'état à travers divers environnements, y compris le matériel nu et l'infrastructure virtualisée. La plateforme se distingue par une suite robuste de capacités opérationnelles qui s'étendent au-delà de la gestion de base de données standard. Elle dispose d'un pipeline d'observabilité intégré qui agrège les métriques, les logs et les traces dans des tableaux de bord centralisés pour une surveillance des performances en temps réel et une analyse diagnostique. De plus, elle fournit un framework de migration qui émule les protocoles filaires propriétaires et la syntaxe SQL, permettant l'intégration de charges de travail de base de données d'entreprise héritées dans des environnements relationnels modernes. Le système couvre une large surface fonctionnelle, y compris la gestion avancée du stockage avec clonage par copie sur écriture pour un déploiement rapide, et l'orchestration multi-base de données qui coordonne les moteurs relationnels avec la mise en cache et le stockage d'objets. Il intègre également le renforcement de la sécurité, la sauvegarde et la récupération automatisées, et le routage du trafic via des proxys en couches pour découpler les connexions client de la topologie de cluster sous-jacente. Le projet est distribué sous forme de modèle de miroir de package autonome, permettant un déploiement et une gestion des dépendances cohérents dans des environnements sécurisés ou isolés.
Provides automated leader election and service discovery to ensure high availability for database clusters during failover events.
Keepalived est un gestionnaire de haute disponibilité et un outil de basculement d'IP virtuelle qui assure une disponibilité continue du service. Il coordonne la migration des adresses IP flottantes entre les nœuds maître et de sauvegarde en utilisant le protocole VRRP (Virtual Router Redundancy Protocol) pour gérer la redondance des routeurs et le basculement transparent. Le projet se distingue en s'intégrant au module IPVS du noyau Linux pour fonctionner comme un équilibreur de charge de couche transport. Il distribue le trafic réseau à travers les serveurs backend en utilisant divers algorithmes de planification et méthodes de transfert tels que NAT, routage direct ou tunneling. Le système inclut des capacités de surveillance de la santé du réseau utilisant TCP, HTTP et le protocole BFD (Bidirectional Forwarding Detection) pour identifier les défaillances en quelques millisecondes. Il prend en charge l'orchestration automatisée du basculement via l'exécution de scripts personnalisés, des alertes administratives SMTP et la synchronisation des chemins de routage à travers plusieurs instances. Le logiciel fournit une surface de configuration qui prend en charge la templétisation, l'isolation des espaces de noms réseau et l'exportation des métriques système via SNMP.
Coordinates virtual IP addresses across nodes using an election process to ensure backup takeover when a master fails.
This project is a Kubernetes operator designed for deploying and managing production PostgreSQL database clusters using declarative configurations. It functions as a controller that synchronizes the actual state of database clusters with a desired state, providing a system for high availability orchestration, automated backup and recovery, and containerized database administration. The operator distinguishes itself through a comprehensive data protection suite that supports point-in-time recovery, multi-mode backups to cloud object storage, and cluster cloning. It ensures continuous availabil
Uses a coordinated agreement mechanism to automatically elect a new primary instance during node failures for high availability.