18 Repos
Deployment strategies that ensure cluster-wide availability through redundant control planes and agent nodes.
Distinct from High-Availability Deployments: Distinct from High-Availability Deployments: focuses on the entire cluster architecture rather than specific Helm chart replicas.
Explore 18 awesome GitHub repositories matching devops & infrastructure · High Availability Cluster Deployments. Refine with filters or upvote what's useful.
This project is a local Kubernetes cluster manager and tool that runs control plane and worker nodes as containers on a host machine. It provides an environment for local development and automated testing by emulating a full Kubernetes cluster within a container runtime. The tool enables the creation of multi-node topologies and high-availability control planes through configuration files. It supports image sideloading to transfer container images directly from the host to nodes, bypassing remote registries, and allows for offline deployments using pre-built node images. Capabilities include
Defines and deploys complex Kubernetes architectures with multiple control planes and worker nodes for high availability testing.
vcluster is a Kubernetes virtual cluster platform that creates fully isolated Kubernetes environments with dedicated control planes, API servers, and RBAC on shared physical infrastructure. It virtualizes Kubernetes control planes by running them as pods inside a host cluster, as standalone binaries on bare metal or virtual machines, or within Docker containers, providing each tenant their own isolated Kubernetes environment without the overhead of managing separate physical clusters. The platform enables multi-tenant Kubernetes isolation through multiple tenancy models, from shared node pool
Runs virtual cluster control planes with multiple replicas and failover for production resilience.
This project provides a comprehensive guide and set of scripts for deploying and configuring a production-ready Kubernetes cluster from scratch. It centers on establishing a functional environment by installing core management components, storage, and networking across multiple nodes. The implementation emphasizes high availability for the control plane, utilizing layer-4 load balancing and leader election for the API server, scheduler, and controller manager. It further ensures reliability through the deployment of a distributed key-value store for persistent runtime data. The project cover
Ensures API server availability by deploying multiple instances behind a layer-4 load balancer.
SpringCloud-Learning is an educational project that demonstrates how to build microservices using Spring Cloud, covering the core patterns of service discovery, centralized configuration management, and API gateway routing. The project provides hands-on examples for registering and discovering microservice instances with Nacos, Eureka, or Consul, and for routing external API requests through Spring Cloud Gateway with support for filters and load balancing. The tutorials explore service resilience through circuit breakers and rate limiting with Sentinel and Hystrix, including custom fallback l
Demonstrates deploying multiple Nacos configuration server instances for high availability.
This project is a collection of learning resources and instructional guides for implementing asynchronous messaging patterns using RabbitMQ. It provides a series of tutorials and runnable code examples focused on the Advanced Message Queuing Protocol to help users decouple services via a message broker. The resources cover practical implementation patterns including request-reply, pub-sub, and stream processing. These guides demonstrate how to use official client libraries to balance worker loads, route messages across multiple consumers in a distributed system, and deploy high availability b
Provides documentation and examples for deploying high availability broker clusters on Kubernetes.
k3d is a containerized Kubernetes orchestrator and wrapper that manages the lifecycle of k3s nodes and servers within container runtimes. It serves as a tool for deploying and destroying multi-node Kubernetes environments on a single machine for local development and testing. The project distinguishes itself by wrapping k3s to provide integrated networking, resource limit control, and local registry orchestration. It enables multi-node cluster simulation by wrapping nodes as isolated containers and using host-entry injection and port proxying to route host TCP and UDP traffic into the cluster
Emulates multi-node cluster topologies and high availability configurations on a single host using containers.
k0s is a Kubernetes distribution that packages all control plane and worker components into a single binary, enabling cluster deployment with no host dependencies beyond the Linux kernel. It supports a container-native runtime where controllers and workers run inside Docker containers using a single OCI image, and offers declarative YAML configuration for defining cluster topology, host roles, and SSH connection details. The distribution provides pre-built binaries for x86-64, ARM64, ARMv7, and RISC-V architectures, and uses cryptographically signed tokens for secure node enrollment. The proj
Expands a cluster from one node to a multi-node setup with isolated control planes for fault tolerance.
gpt-load is a transparent proxy gateway that routes API requests to multiple AI providers—including OpenAI, Google Gemini, and Anthropic Claude—through a single endpoint while preserving each provider's native format and authentication. It acts as a centralized routing layer, allowing applications to switch between AI services by changing only the base URL without modifying any client code or business logic. The proxy distinguishes itself through intelligent traffic management across pools of API keys, offering automatic key rotation, weighted or round-robin load balancing, and failover that
Deploying a master-slave architecture with horizontal scaling, configuration sync, and graceful shutdown for enterprise use.
pfSense is an open-source operating system that turns a standard computer into a dedicated firewall and router with a web-based management interface. It runs on the FreeBSD kernel with the pf packet filter for stateful firewall and NAT processing, and manages all settings through a PHP-driven web interface that writes to XML configuration files. The platform provides a comprehensive set of network security capabilities accessible through its browser-based control panel. Users can configure packet filtering rules to control traffic flow between network segments, manage network address translat
Pairs two firewalls in a failover cluster using CARP for seamless high availability.
m3 ist eine verteilte Zeitreihendatenbank, die für hochauflösende Metriken und die Verwaltung von Daten mit hoher Kardinalität entwickelt wurde. Sie fungiert als skalierbares Speichersystem und Multi-Cluster-Query-Engine und bietet einen verteilten Metrik-Aggregator, der Daten vor dem Speichern downsamplen und zusammenfassen kann. Das Projekt zeichnet sich durch ein koordiniertes Clustermodell aus, das etcd für die Knotenmitgliedschaft und Shard-Platzierung nutzt. Es unterstützt mehrere Ingestion-Protokolle, einschließlich des Prometheus-Remote-Write-Protokolls, des InfluxDB-Line-Protokolls und des Graphite-Carbon-Plaintext-Protokolls, und bietet kompatible Query-Schnittstellen für PromQL und Graphite. Das System deckt breite Funktionsbereiche ab, einschließlich spaltenorientierter Zeitreihenspeicherung, synchroner Datenreplikation und verteiltem Query-Fan-out. Es integriert Daten-Lifecycle-Automatisierung, Quorum-basiertes Konsistenz-Tuning und Tag-basierte Serienindizierung, um Datenintegrität und Abfragegeschwindigkeit über isolierte Namespaces hinweg aufrechtzuerhalten. Cluster-Orchestrierung und Komponentenplatzierung werden durch automatisierte Tools und Operatoren verwaltet, um hohe Verfügbarkeit und eine ausgewogene Datenverteilung sicherzustellen.
Uses leader and follower replication to ensure data flushing continues if a primary node fails.
Pomerium is an identity-aware reverse proxy designed to provide zero-trust access control for internal infrastructure. It functions as a centralized gateway that verifies user identity, device context, and group membership for every request before granting access to protected applications, services, or API servers. By integrating directly with external identity providers, it replaces traditional VPNs with granular, policy-based access enforcement. The platform distinguishes itself by extending zero-trust principles beyond standard web traffic to include non-HTTP protocols, such as TCP and UDP
Deploys and scales local proxy instances connected to a centralized control plane for unified policy distribution.
caddy-docker-proxy ist ein dynamischer HTTP-Reverse-Proxy und Docker-Netzwerk-Ingress-Controller, der automatisch Routing-Konfigurationen generiert, indem er Labels aus Docker-Containern liest. Er dient als Service-Discovery-Tool, das Container-IP-Adressen in Echtzeit erkennt, um eingehenden Web-Traffic an die korrekten Backend-Ziele weiterzuleiten. Das Projekt fungiert als verteilter Proxy-Orchestrator, der in der Lage ist, generierte Konfigurationen von einem zentralen Controller an mehrere Remote-Server-Instanzen zu pushen, um die Request-Verarbeitung zu skalieren. Es automatisiert die Ausstellung und Erneuerung von TLS-Sicherheitszertifikaten für proxied Domains und koordiniert gemeinsam genutzte Zertifikate über Server-Replikate hinweg. Das System unterstützt die label-basierte Konfigurationsgenerierung unter Verwendung von Templates und Docker-Secrets, um Metadaten und globale Einstellungen in die Serverkonfiguration zu injizieren. Es behält die Synchronisierung bei, indem es auf Container-Lebenszyklusereignisse lauscht und einen In-Process-Lademechanismus verwendet, um das Serververhalten zu aktualisieren. Die Traffic-Management-Funktionen umfassen das Definieren von Request-Routing-Regeln, Pfad-Matching und URI-Rewriting, um Traffic an containerisierte Ressourcen zu leiten.
Deploys multiple server instances coordinated by a central controller to scale request handling.
Mgmt ist ein verteiltes Konfigurationsmanagementsystem, das den gewünschten Zustand von Clustern mittels ereignisgesteuerter Automatisierung und Closed-Loop-Feedback aufrechterhält. Es fungiert als Infrastruktur-Automatisierungs-Engine, die Systemzustandskorrekturen in Echtzeit basierend auf Ressourcenüberwachung und vordefinierten Spezifikationen auslöst. Das System enthält einen verteilten Cluster-Node-Selektor für die Wahl von Teilmengen von Hosts basierend auf spezifischen Strategien und Einschränkungen, um Workloads zu verteilen. Es verfügt zudem über einen Cloud-Infrastruktur-Manager für die Steuerung des Lebenszyklus von virtuellen Maschineninstanzen, einschließlich Image-Deployment, Regionsauswahl und Startup-Skripten, ergänzt durch einen Hardware-Firmware-Orchestrator für die Installation und Verifizierung von Binärdateien auf Baseboard-Management-Controllern. Zusätzliche Funktionen decken parallele Task-Ausführung, lens-basierte Konfigurationsdateimodifikation und System-Metadatenabruf ab. Das Toolset bietet zudem Dienstprogramme für Datentyp-Transformation, Format-Dekodierung und Umgebungsinspektion, um aktuelle Systemzustände zu bestimmen.
Ships a distributed node selector to elect host subsets based on specific strategies and constraints.
Emitter ist eine verteilte Pub-Sub-Plattform und ein Message-Broker, der Echtzeit-Datenrouting zwischen Publishern und Subscribern in einem verteilten Cluster ermöglicht. Er fungiert als MQTT-Message-Broker für stromsparende Geräte und als WebSocket-Kommunikationsserver für webbasierte Clients, während er gleichzeitig als sicherer Channel-Orchestrator verschlüsselte Datenströme verwaltet. Das System zeichnet sich durch eine Kombination aus verteiltem Broker-Clustering für hohe Verfügbarkeit und einem persistenzbasierten Message-Playback-System aus. Dadurch kann die Plattform historische Nachrichten speichern und an Subscriber ausliefern, die während der ursprünglichen Übertragung offline waren. Der Zugriff wird über zeitlich begrenzte Berechtigungsschlüssel gesteuert, die granulare Lese- und Schreibkontrollen für spezifische Channel-Pfade erzwingen. Die Plattform deckt ein breites Spektrum an Messaging-Funktionen ab, einschließlich asynchroner Zustellung, Offline-Client-Queuing sowie der Übertragung von Binär- und Textformaten. Sie unterstützt Channel-basiertes Routing mit Nachrichtenfilterung zur Entkopplung von Systemkomponenten und bietet operative Observability durch Verbindungs-Metadaten und Performance-Monitoring. Das System ist über Docker-Container bereitstellbar und kann mittels Umgebungsvariablen und externen Konfigurationsdateien konfiguriert werden.
Supports deploying synchronized node networks to increase throughput and ensure continuous service availability.
This project is a Terraform Kubernetes provisioner and K3s cluster deployer designed to automate the installation and configuration of lightweight container orchestration on Hetzner Cloud infrastructure. It functions as a Hetzner Cloud infrastructure module, using declarative configuration to manage the full lifecycle of virtual machines, private networks, and load balancers. The orchestrator focuses on high availability by deploying redundant control planes and worker nodes across multiple physical data centers to ensure service continuity. It incorporates a cloud network security manager to
Supports redundant control planes and agent nodes deployed across multiple zones for fault tolerance.
Light Task Scheduler is a distributed job scheduling and workflow orchestration platform designed for managing background processing across scalable computing environments. It functions as a cluster management system that coordinates stateless nodes to execute recurring, cron-based, or one-time tasks with centralized control and high availability. The platform distinguishes itself through a leader-based coordination model that automatically elects a primary controller to manage task distribution and system state. It supports complex workflow dependencies, ensuring that prerequisite tasks comp
Provides a platform for managing distributed computing nodes with automatic master election and high availability.
Ansible Interactive Tutorial is a learning platform and command-line training utility that runs interactive configuration management exercises inside pre-configured Docker containers. It provides an isolated multi-container sandbox environment featuring a control node and target hosts configured with pre-shared SSH keys for practicing infrastructure automation step by step. The platform guides users through structured, sequential learning paths from fundamental to advanced configuration management concepts. It supports volume-mounted local workspaces that bind host directories directly into r
Deploys a multi-node topology emulating isolated runtime instances with pre-configured networking and security trust relationships.
XWiki Platform is a collaborative content management system and enterprise wiki designed for creating, organizing, and sharing structured documentation. It functions as a Java-based application framework that enables teams to build data-driven business applications directly within a web environment. By combining a flexible knowledge base with modular development tools, the platform supports both standard document management and the creation of custom, interactive software solutions. The platform distinguishes itself through a highly extensible architecture that allows for deep customization w
Distributes traffic across multiple server instances connected to a shared database to balance load and improve performance.