awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
openkruise avatar

openkruise/kruise

0
View on GitHub↗
5,272 stars·891 forks·Go·16 viewsopenkruise.io↗

Kruise

Kruise is a workload management system designed for large-scale applications on Kubernetes. It provides a framework for advanced orchestration, scaling, and upgrade strategies to maintain stability in massive deployments.

The project is distinguished by its ability to perform in-place updates of container images and resource limits without deleting and recreating pods. It includes a dedicated image pre-puller to accelerate pod startup and a sidecar injector to dynamically manage the lifecycle of sidecar containers. Additionally, a resource distributor synchronizes configuration maps and secrets across multiple namespaces for cluster-wide consistency.

The system covers a broad range of capability areas, including topology-aware pod scheduling, canary rollouts with partition-based progress control, and multi-domain workload autoscaling. It also implements high availability protections such as application disruption limits, graceful traffic draining, and cascading deletion prevention.

Operational visibility is provided through resource metric exports, rollout deadline monitoring, and structured log emission.

Features

  • In-Place Container Image Updates - Enables refreshing container images and resource limits by restarting specific containers without deleting the parent pod.
  • Kubernetes Cluster Orchestration - Provides a comprehensive system for automated deployment and scaling of massive containerized microservices within Kubernetes clusters.
  • Replica Scaling - Adjusts the number of replicas for deployments or controllers to match resource demands.
  • Admission Webhooks - Uses admission webhooks to intercept pod creation requests for sidecar injection and availability enforcement.
  • Workload Resource Definitions - Provides configurations for defining underlying resource kinds for extended workload objects like pods and stateful sets.
  • Image Pre-pulling - Predictively downloads container images to nodes before they are needed to accelerate pod startup and reduce rollout latency.
  • Batch - Downloads multiple container images in a single job to pre-heat nodes for complex applications.
  • Scheduled - Triggers image pulling tasks on a fixed timetable to ensure large images are available before jobs start.
  • Multi-Domain Deployment - Provisions workload subsets across different node groups using labels to target specific domains.
  • Cross-Namespace Resource Synchronization - Synchronizes secrets and configuration maps across multiple Kubernetes namespaces to ensure cluster-wide consistency.
  • Custom Resource Controllers - Utilizes the operator pattern with custom resource controllers and reconciliation loops to manage extended workload objects.
  • Deployment Lifecycle Controls - Provides controls to pause, resume, and roll back the deployment lifecycle for workloads.
  • Availability Guardrails - Defines the maximum number of unavailable or surge pods allowed during updates to ensure service continuity.
  • Container-Level In-Place Updates - Updates container images and resource limits in place without deleting and recreating pods to reduce downtime.
  • In-Place Container Updates - Updates container images and resource limits without deleting and recreating pods to reduce downtime and overhead.
  • In-Place Resource Modifications - Changes CPU and memory limits for containers during updates without deleting and recreating pods.
  • Node Container Managers - Executes low-level node operations such as image pre-downloading and container restarts directly on target nodes.
  • Multi-Domain Rollout Management - Triggers pod upgrades across all subsets when templates change using manual partition control.
  • Node-Level Task Orchestration - Schedules low-level operations like image pre-downloading and container restarts directly on target nodes to reduce startup latency.
  • Pod Autoscaling - Provides automated adjustment of pod replicas based on resource utilization metrics.
  • Pod Disruption Control - Implements pod disruption budgets and constraints to maintain service availability during voluntary node or pod evictions.
  • Resource Ownership References - Uses Kubernetes owner references to ensure that deleting a controller automatically removes all synchronized replicated resources.
  • Dependency-Based Deletion Blocks - Prevents the deletion of specific resources when active dependencies exist or based on static safety policies.
  • Topology-Aware Distribution - Allocates pod replicas across multiple node groups or domains using ratio-based scattering and domain labels for high availability.
  • Sidecar Containers - Manages the injection and update of sidecar containers with controlled startup sequences and dynamic resource allocation.
  • Workload Availability Protection - Prevents service disruption during upgrades and node drains by controlling pod unavailability and cascading deletions.
  • Workload Orchestration - Orchestrates large-scale container deployments using advanced scaling and upgrade strategies to maintain system stability.
  • Partition-Based Rollouts - Restricts the number of pods updated to a new version using a partition value for canary deployments.
  • Kubernetes Workload Dashboards - Provides a system for managing large-scale application workloads on Kubernetes using advanced scaling and upgrade strategies.
  • Cascading Deletion Protections - Blocks the automatic deletion of dependent resources when a parent object is removed to protect system stability.
  • Retention Policies - Defines policies for how persistent volume claims are retained or handled during the lifecycle of stateful workloads.
  • Scaling Rate Limits - Controls scale-up speed by restricting the number of pods created per step.
  • Owner Reference Management - Uses owner references to replicate configuration maps and secrets across namespaces and automate lifecycle cleanup.
  • Per-Pod Volume Templates - Defines volume claim templates to ensure each pod has its own dedicated persistent volume.
  • PVC Template Updates - Controls how changes to volume templates are applied to existing persistent volume claims.
  • Targeted Container Restarts - Triggers restarts of specific containers within a pod without affecting other running containers.
  • Update Suspension - Allows suspending the update process for pods while maintaining the current replica count.
  • Container Startup Coordination - Manages the specific startup order of containers within a pod to ensure dependency resolution.
  • Cross-Namespace Resource Distribution - Synchronizes configuration maps and secrets across multiple namespaces to ensure cluster-wide configuration consistency.
  • Daemon-Style Job Distribution - Distributes a single pod to every node in a cluster to execute a job once.
  • Scaling Order Control - Determines the sequence in which pods are scaled across subsets for predictable deployment patterns.
  • Dynamic Configuration Updates - Modifies environment variables, container images, and resource limits for active workloads in real-time.
  • Node Label Filtering - Provides the ability to target rolling updates to specific node subsets using label matching.
  • Ordinal-Based Update Sequencing - Controls the rollout order of pods using index-based priorities to ensure a predictable and stable upgrade sequence.
  • Pod Attribute Persistence - Retains specific pod attributes, such as network IP addresses, across restarts or recreations.
  • Domain-Based Redirection - Schedules pods to temporary subsets when target domains are unavailable and migrates them back later.
  • Multi-Domain Autoscalings - Implements dynamic replica adjustment for workloads spanning multiple infrastructure domains.
  • Pod Lifecycle Hooks - Triggers custom actions during specific pod state transitions for preparation and cleanup tasks.
  • Pod Ordinal Management - Skips specific pod index numbers during creation and deletes existing pods that match those ordinals.
  • Pod Traffic Draining - Sets pods to a not-ready state during deletion to route traffic away gracefully before stopping containers.
  • Pre-deletion Hooks - Runs custom tasks or checks before a pod is deleted to ensure safe removal.
  • Recurring Job Scheduling - Creates recurring jobs for all nodes or specific image pulling tasks on a configurable timetable.
  • Rollout Progress Monitors - Tracks rollout progress and marks operations as failed if they exceed a configurable time deadline.
  • Sidecar Hot Upgrades - Updates stateful sidecar containers using temporary images and state migration to maintain availability.
  • Targeted Pod Deletion - Targets specific pods for removal during scale-down using explicit name lists or labels.
  • Update Sequence Strategies - Determines whether pods are updated in a strict ordinal order or via a priority strategy.
  • Pod IP Persistence - Reschedules a pod to its original node after eviction to preserve its existing network IP.
  • Sidecar Injection - Dynamically injects and manages the lifecycle of sidecar containers within application pods.
  • Injection Versioning - Tracks historical revisions of sidecar configurations to enable specific versions for canary analysis.
  • Canary Version Rollouts - Implements canary rollouts by restricting the number of updated pods using partition values for gradual traffic shifting.
  • Subset Rescheduling - Moves pods from failing or over-capacity subsets to other defined subsets after a set duration.
  • HTTP Health Probes - Executes socket or HTTP probes against containers to trigger custom scaling and upgrade behaviors.
  • Cluster Resources Management - Extends core controllers for advanced workload management.
  • Workload Orchestration and Scheduling - Application workload management for Kubernetes.

Star history

Star history chart for openkruise/kruiseStar history chart for openkruise/kruise

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Projects sharing features with Kruise

These projects share indexed features with Kruise. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • agones-dev/agonesagones-dev avatar

    agones-dev/agones

    6,888View on GitHub↗

    Agones is a Kubernetes game server orchestrator designed for hosting, scaling, and managing dedicated multiplayer game servers. It extends the Kubernetes control plane using custom resource definitions to define game server and fleet objects, utilizing a dedicated fleet manager to maintain pools of warm server instances. The system provides a game server SDK and language-specific client libraries that allow server processes to signal readiness, health, and shutdown states directly to the controller. It distinguishes itself through specialized scaling logic, including the use of WebAssembly mo

    Goagonesdedicated-game-serversdedicated-gameservers
    View on GitHub↗6,888
  • operator-framework/operator-sdkoperator-framework avatar

    operator-framework/operator-sdk

    7,658View on 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
    View on GitHub↗7,658
  • crunchydata/postgres-operatorCrunchyData avatar

    CrunchyData/postgres-operator

    4,423View on GitHub↗

    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

    Go
    View on GitHub↗4,423
  • ben1234560/k8s_paasben1234560 avatar

    ben1234560/k8s_PaaS

    5,426View on GitHub↗

    This project provides a comprehensive architectural blueprint and implementation set for building a platform-as-a-service on Kubernetes. It serves as a technical resource for deploying container orchestration environments, managing the full software development lifecycle, and integrating a complete DevOps toolchain. The implementation emphasizes automated software delivery through the integration of build and delivery pipelines, private container registries, and distributed configuration systems. It enables the decoupling of application settings from images via a centralized configuration man

    Shellapollocdci
    View on GitHub↗5,426
Compare all 30 related projects→

Frequently asked questions

What does openkruise/kruise do?

Kruise is a workload management system designed for large-scale applications on Kubernetes. It provides a framework for advanced orchestration, scaling, and upgrade strategies to maintain stability in massive deployments.

What are the main features of openkruise/kruise?

The main features of openkruise/kruise are: In-Place Container Image Updates, Kubernetes Cluster Orchestration, Replica Scaling, Admission Webhooks, Workload Resource Definitions, Image Pre-pulling, Batch, Scheduled.

Which projects share features with openkruise/kruise?

Projects with overlapping indexed features include: agones-dev/agones — Agones is a Kubernetes game server orchestrator designed for hosting, scaling, and managing dedicated multiplayer game… operator-framework/operator-sdk — The Operator SDK is a framework for building, packaging, and managing custom controllers that extend the Kubernetes… crunchydata/postgres-operator — This project is a Kubernetes operator designed for deploying and managing production PostgreSQL database clusters… sidpalas/devops-directive-kubernetes-course — This project is a comprehensive educational curriculum designed to teach the fundamentals of container orchestration… ben1234560/k8s_paas — This project provides a comprehensive architectural blueprint and implementation set for building a… tsuru/tsuru — Tsuru is an open-source platform as a service for automating the build, deployment, and scaling of containerized…