awesome-repositories.com
Blog
awesome-repositories.com

Descubre los mejores repositorios open-source con nuestra búsqueda potenciada por IA.

ExplorarBúsquedas curadasAlternativas open-sourceSoftware autohospedableBlogMapa del sitio
ProyectoAcerca deCómo clasificamosPrensaServidor MCP
Aviso legalPrivacidadTérminos
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
kubernetes-sigs avatar

kubernetes-sigs/controller-runtime

0
View on GitHub↗
2,917 estrellas·1,283 forks·Go·Apache-2.0·10 vistas

Controller Runtime

Este proyecto proporciona un framework para construir operadores de Kubernetes y controladores personalizados. Ofrece un conjunto de bibliotecas diseñadas para gestionar el ciclo de vida de los recursos del cluster, permitiendo a los desarrolladores sincronizar el estado real de un cluster con una configuración deseada a través de bucles de reconciliación basados en eventos.

El framework se distingue por proporcionar un entorno orquestado por gestor que coordina múltiples controladores y webhooks dentro de un solo proceso. Incluye soporte incorporado para el control de concurrencia optimista para evitar conflictos de actualización y utiliza el almacenamiento en caché de informadores en memoria para mantener una vista local sincronizada del estado del cluster, lo que reduce la carga en el servidor API.

Más allá de la reconciliación central, el proyecto incluye herramientas para el mapeo de recursos basado en esquemas, permitiendo el registro de definiciones de recursos personalizados. También proporciona mecanismos para el control de admisión, permitiendo la validación y mutación de solicitudes de recursos para aplicar el cumplimiento antes de que los datos se persistan. El framework incluye una suite de pruebas dedicada que pone en marcha entornos de servidor API efímeros y aislados para validar la lógica del controlador contra el comportamiento real del cluster.

Features

  • Kubernetes Controllers - Implements a framework for building custom controllers that synchronize cluster state through declarative reconciliation loops.
  • Kubernetes Operators - Provides a framework for building custom controllers that watch cluster resources and execute logic to maintain a desired state.
  • Reconciliation Loops - Implements continuous control loops that converge cluster resources from their current state toward a desired target state.
  • Local Control Plane Testing - Spins up a local API server environment to validate controller logic against real cluster behavior during testing.
  • Cluster State Reconciliation - Synchronizes the state of cluster resources by watching for changes and executing custom logic to ensure the actual state matches the desired configuration.
  • Admission Controllers - The framework modifies incoming resource requests automatically by injecting or updating fields to ensure compliance with cluster-wide policies or defaults.
  • Admission Controllers - Intercepts resource creation or update requests to enforce custom business rules or inject default values before changes are persisted.
  • In-Memory Caches - Maintains a synchronized local copy of cluster state in memory to reduce API server load and accelerate reconciliation.
  • Optimistic Concurrency Control - Uses resource versioning and conditional updates to prevent conflicts when multiple processes modify the same cluster object.
  • Admission Webhooks - Intercepts resource creation and update requests to validate or mutate data before persistence to cluster storage.
  • Custom Resource Definitions - Maps data structures to specific API group-version-kinds to allow the system to recognize and manage custom resource definitions.
  • Kubernetes API Clients - Provides a comprehensive library for interacting with the Kubernetes API, managing resource schemas, and handling custom business logic.
  • Eventual Consistency Orchestrators - Handles potential cache staleness through optimistic locking, deterministic naming, or periodic requeueing to ensure eventual consistency.
  • Resource Mapping - Associates Go data structures with specific API group-version-kinds to enable automated serialization and management of custom resources.
  • Controller Lifecycle Management - Orchestrates the startup, shared caching, and graceful shutdown of multiple controllers and webhooks within a single process.
  • State Reconciliation - Maps multiple related objects to a single root object and enforces the desired state for that entire resource tree during each execution cycle.
  • API Testing Frameworks - Provides a testing suite that spins up a local API server to validate controller logic against real cluster behavior.
  • Kubernetes - Provides a dedicated testing suite that spins up ephemeral, isolated API server environments to validate controller logic against real cluster behavior.

Historial de estrellas

Gráfico del historial de estrellas de kubernetes-sigs/controller-runtimeGráfico del historial de estrellas de kubernetes-sigs/controller-runtime

Búsqueda con IA

Explora más repositorios increíbles

Describe lo que necesitas en lenguaje sencillo: la IA clasifica miles de proyectos open-source curados por relevancia.

Start searching with AI

Colecciones destacadas con Controller Runtime

Colecciones seleccionadas manualmente donde aparece Controller Runtime.
  • Frameworks de desarrollo de operadores para Kubernetes
  • un runtime para ejecutar tareas concurrentes

Alternativas open-source a Controller Runtime

Proyectos open-source similares, clasificados según cuántas características comparten con Controller Runtime.
  • kubernetes-sigs/kubebuilderAvatar de kubernetes-sigs

    kubernetes-sigs/kubebuilder

    8,992Ver en GitHub↗

    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

    Gok8s-sig-api-machinery
    Ver en GitHub↗8,992
  • operator-framework/operator-sdkAvatar de operator-framework

    operator-framework/operator-sdk

    7,658Ver en GitHub↗

    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.

    Gokubernetesoperatorsdk
    Ver en GitHub↗7,658
  • kube-rs/kubeAvatar de kube-rs

    kube-rs/kube

    3,747Ver en GitHub↗

    Kube-rs is a Rust client library and runtime for interacting with the Kubernetes API server. It provides a type-safe interface for managing cluster resources and state, including a toolkit for defining custom resource definitions and a framework for building admission webhooks to validate or mutate API requests. The project distinguishes itself through a dedicated controller runtime that implements event-driven reconciliation loops to align actual cluster state with desired configurations. It utilizes a streaming system to monitor resource changes and synchronize remote states into a local qu

    Rustclientkubernetesruntime
    Ver en GitHub↗3,747
  • kube-logging/logging-operatorAvatar de kube-logging

    kube-logging/logging-operator

    1,696Ver en GitHub↗

    The logging operator is a Kubernetes-native controller designed to automate the deployment, configuration, and lifecycle management of log collection and routing infrastructure. By utilizing custom resource definitions, it provides a declarative framework for standardizing how container logs are captured, processed, and forwarded across distributed cluster environments. The project distinguishes itself through its support for multi-tenant logging architectures, allowing administrators to enforce namespace-scoped isolation for log collection and routing configurations. It employs a sidecar inj

    Gocloud-nativekuberneteskubernetes-operator
    Ver en GitHub↗1,696
Ver las 30 alternativas a Controller Runtime→

Preguntas frecuentes

¿Qué hace kubernetes-sigs/controller-runtime?

Este proyecto proporciona un framework para construir operadores de Kubernetes y controladores personalizados. Ofrece un conjunto de bibliotecas diseñadas para gestionar el ciclo de vida de los recursos del cluster, permitiendo a los desarrolladores sincronizar el estado real de un cluster con una configuración deseada a través de bucles de reconciliación basados en eventos.

¿Cuáles son las características principales de kubernetes-sigs/controller-runtime?

Las características principales de kubernetes-sigs/controller-runtime son: Kubernetes Controllers, Kubernetes Operators, Reconciliation Loops, Local Control Plane Testing, Cluster State Reconciliation, Admission Controllers, In-Memory Caches, Optimistic Concurrency Control.

¿Qué alternativas de código abierto existen para kubernetes-sigs/controller-runtime?

Las alternativas de código abierto para kubernetes-sigs/controller-runtime incluyen: kubernetes-sigs/kubebuilder — Kubebuilder is a framework and set of scaffolding tools used to build Kubernetes APIs and controllers. It functions as… operator-framework/operator-sdk — The Operator SDK is a framework for building, packaging, and managing custom controllers that extend the Kubernetes… kube-rs/kube — Kube-rs is a Rust client library and runtime for interacting with the Kubernetes API server. It provides a type-safe… kube-logging/logging-operator — The logging operator is a Kubernetes-native controller designed to automate the deployment, configuration, and… fluxcd/flux2 — Flux is a Kubernetes GitOps delivery tool used to automate application deployments by synchronizing cluster state with… kubernetes/client-go — This project is a Go language library that provides a programmatic interface for interacting with the Kubernetes API…