awesome-repositories.com
Blog
awesome-repositories.com

Entdecke die besten Open-Source-Repositories mit KI-gestützter Suche.

EntdeckenKuratierte SuchenOpen-Source-AlternativenSelf-hosted SoftwareBlogSitemap
ProjektÜber unsRanking-MethodikPresseMCP-Server
RechtlichesDatenschutzAGB
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
kubernetes avatar

kubernetes/client-go

0
View on GitHub↗
9,837 Stars·3,030 Forks·Go·Apache-2.0·4 Aufrufe

Client Go

This project is a Go language library that provides a programmatic interface for interacting with the Kubernetes API server. It serves as a client for managing cluster resources, offering both typed interfaces for compile-time safety and dynamic interfaces for unstructured data and custom resource management.

The library includes a controller framework designed for building event-driven automation. This framework utilizes informers to maintain local resource caches and rate-limited work queues to decouple event detection from state reconciliation. High availability is supported through a leader election tool that uses shared lease objects to ensure single-writer exclusivity.

Beyond core API interaction, the project covers secure authentication via internal service tokens and pluggable external credential providers. It also provides utilities for server-side apply functionality, API capability discovery, and tools for mocking API responses during testing.

Features

  • Kubernetes API Clients - Provides the primary Go library for interacting with Kubernetes control planes via secure API clients.
  • Kubernetes Controllers - Provides a framework for building event-driven controllers that synchronize cluster state via reconciliation loops.
  • Event Distribution Caches - Distributes resource change events to multiple handlers via a centralized cache to reduce API server load.
  • Resource Mirrors - Maintains a local mirrored state of server resources by combining initial snapshots with continuous watch streams.
  • Informer Synchronization - Combines initial snapshots with a continuous stream of changes to maintain a local cache of resources.
  • Custom Resource Definitions - Defines custom resource types and implements controllers to manage application-specific state.
  • Kubernetes Operations Automation - Enables programmatic management of cluster resources to automate infrastructure and application lifecycles.
  • Local Resource Caches - Mirrors server-side resources into local memory to enable high-performance cluster state queries.
  • Cluster State Caching - Caches cluster objects locally to provide fast synchronization mechanisms for building efficient controllers.
  • Reconciliation Queues - Decouples event detection from reconciliation using object queues with retry logic and throughput throttling.
  • Type-Safe API Clients - Executes requests against the server using a typed clientset for compile-time safety.
  • Unstructured API Clients - Accesses arbitrary API resources without compile-time types by using generic maps to represent server objects.
  • Distributed Leader Election - Coordinates high availability using distributed locks on shared objects to ensure single-writer exclusivity.
  • Leader Election - Provides leader election tools using shared lease objects to ensure high availability and prevent concurrent writes.
  • Coordination Tools - Implements coordination mechanisms using shared lease objects to ensure only one active process performs work.
  • Remote Cluster Access - Enables authentication and communication with clusters from environments outside the cluster.
  • Server-Side Apply Operations - Constructs declarative patches using type-safe builders for collaborative object management.
  • Reconciliation Queues - Implements rate-limited work queues to decouple resource event detection from state reconciliation.
  • Authentication Providers - Resolves identity tokens through a registry of external plugins to support diverse credential sources.
  • Externalized Credential Loaders - Extracts authentication tokens from external providers to gain authorized access to the server.
  • External Identity Provider Integration - Verifies user identities through external credential sources using plugins to secure connections.
  • Developer Workspaces - Official Go client library for Kubernetes.

Star-Verlauf

Star-Verlauf für kubernetes/client-goStar-Verlauf für kubernetes/client-go

KI-Suche

Entdecke weitere awesome Repositories

Beschreibe in einfachen Worten, was du brauchst — die KI bewertet tausende kuratierte Open-Source-Projekte nach Relevanz.

Start searching with AI

Häufig gestellte Fragen

Was macht kubernetes/client-go?

This project is a Go language library that provides a programmatic interface for interacting with the Kubernetes API server. It serves as a client for managing cluster resources, offering both typed interfaces for compile-time safety and dynamic interfaces for unstructured data and custom resource management.

Was sind die Hauptfunktionen von kubernetes/client-go?

Die Hauptfunktionen von kubernetes/client-go sind: Kubernetes API Clients, Kubernetes Controllers, Event Distribution Caches, Resource Mirrors, Informer Synchronization, Custom Resource Definitions, Kubernetes Operations Automation, Local Resource Caches.

Welche Open-Source-Alternativen gibt es zu kubernetes/client-go?

Open-Source-Alternativen zu kubernetes/client-go sind unter anderem: kube-rs/kube — Kube-rs is a Rust client library and runtime for interacting with the Kubernetes API server. It provides a type-safe… operator-framework/operator-sdk — The Operator SDK is a framework for building, packaging, and managing custom controllers that extend the Kubernetes… kubernetes-client/java — This is a Java client library for interacting with the Kubernetes API server. It provides a programmatic interface and… kubernetes-sigs/controller-runtime — This project provides a framework for building Kubernetes operators and custom controllers. It offers a set of… kubernetes-sigs/kubebuilder — Kubebuilder is a framework and set of scaffolding tools used to build Kubernetes APIs and controllers. It functions as… crossplane/crossplane — Crossplane is a Kubernetes-based control plane framework that functions as a cloud resource orchestrator and…

Open-Source-Alternativen zu Client Go

Ähnliche Open-Source-Projekte, sortiert nach der Anzahl der gemeinsamen Funktionen mit Client Go.
  • kube-rs/kubeAvatar von kube-rs

    kube-rs/kube

    3,747Auf GitHub ansehen↗

    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
    Auf GitHub ansehen↗3,747
  • operator-framework/operator-sdkAvatar von operator-framework

    operator-framework/operator-sdk

    7,658Auf GitHub ansehen↗

    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
    Auf GitHub ansehen↗7,658
  • kubernetes-client/javaAvatar von kubernetes-client

    kubernetes-client/java

    3,987Auf GitHub ansehen↗

    This is a Java client library for interacting with the Kubernetes API server. It provides a programmatic interface and a set of typed models to manage cluster resources, orchestrate state reconciliation, and administer pods and namespaces within a Kubernetes environment. The library enables the development of custom controllers by providing frameworks for implementing automated control loops that reconcile the actual state of resources with a desired target state. It supports the generation of strongly-typed Java classes from OpenAPI specifications and custom resource definitions to ensure ty

    Java
    Auf GitHub ansehen↗3,987
  • kubernetes-sigs/controller-runtimeAvatar von kubernetes-sigs

    kubernetes-sigs/controller-runtime

    2,917Auf GitHub ansehen↗

    This project provides a framework for building Kubernetes operators and custom controllers. It offers a set of libraries designed to manage the lifecycle of cluster resources, enabling developers to synchronize the actual state of a cluster with a desired configuration through event-driven reconciliation loops. The framework distinguishes itself by providing a manager-orchestrated environment that coordinates multiple controllers and webhooks within a single process. It includes built-in support for optimistic concurrency control to prevent update conflicts and utilizes in-memory informer cac

    Gok8s-sig-api-machinery
    Auf GitHub ansehen↗2,917
Alle 30 Alternativen zu Client Go anzeigen→