awesome-repositories.com
ब्लॉग
MCP
awesome-repositories.com

AI-संचालित खोज के साथ बेहतरीन ओपन-सोर्स रिपॉजिटरी खोजें।

एक्सप्लोर करेंक्यूरेटेड खोजेंओपन-सोर्स विकल्पसेल्फ-होस्टेड सॉफ्टवेयरब्लॉगसाइटमैप
प्रोजेक्टMCP सर्वरहमारे बारे मेंहम रैंकिंग कैसे करते हैंप्रेस
कानूनीगोपनीयताशर्तें
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
kubernetes-sigs avatar

kubernetes-sigs/descheduler

0
View on GitHub↗
5,451 स्टार्स·797 फोर्क्स·Go·Apache-2.0·6 व्यूज़sigs.k8s.io/descheduler↗

Descheduler

Descheduler एक Kubernetes वर्कलोड रीबैलेंसर और पॉड इविक्शन मैनेजर है जिसे रिसोर्स डिस्ट्रीब्यूशन को ऑप्टिमाइज़ करने और क्लस्टर स्थिरता बनाए रखने के लिए डिज़ाइन किया गया है। यह उन पॉड्स की पहचान करता है और उन्हें हटाता है जो अब शेड्यूलिंग बाधाओं या स्वास्थ्य आवश्यकताओं को पूरा नहीं करते हैं, जिससे क्लस्टर उन्हें अधिक उपयुक्त नोड्स पर स्थानांतरित कर सकता है।

यह प्रोजेक्ट नोड रिसोर्स उपयोग को संतुलित करने, टोपोलॉजी स्प्रेड बाधाओं को लागू करने और वितरण में सुधार के लिए डुप्लिकेट पॉड्स को हटाने के लिए विशेष क्षमताएं प्रदान करता है। यह अप्रयुक्त इंफ्रास्ट्रक्चर को डाउनस्केल करने की सुविधा के लिए वर्कलोड को कम नोड्स पर कॉम्पैक्ट करके एक ऑटोस्केलर हेल्पर के रूप में भी कार्य करता है।

यह सिस्टम विफल, अस्थिर या पुराने पॉड्स की सफाई और नोड एफिनिटी व टेंट रूल्स को लागू करने सहित रखरखाव कार्यों की एक विस्तृत श्रृंखला को कवर करता है। इसमें शेड्यूलिंग-फिट वैलिडेशन जैसे सुरक्षा तंत्र शामिल हैं ताकि यह सुनिश्चित किया जा सके कि पॉड्स को इविक्शन से पहले रीशेड्यूल किया जा सके, महत्वपूर्ण वर्कलोड की सुरक्षा के लिए लेबल-आधारित फ़िल्टरिंग, और परिवर्तनों का पूर्वावलोकन करने के लिए ड्राई-रन मोड शामिल है।

इस यूटिलिटी को निरंतर बैकग्राउंड प्रोसेस या आवर्ती क्रॉन जॉब के रूप में तैनात किया जा सकता है और यह लीडर इलेक्शन के माध्यम से उच्च उपलब्धता का समर्थन करता है।

Features

  • Dynamic Workload Rebalancers - Dynamically rearranges pods within the cluster to optimize distribution and balance load.
  • Node Resource Balancing - Evicts pods from overutilized nodes to underutilized ones based on CPU, memory, and pod count thresholds.
  • Node Utilization Optimizers - Balances CPU and memory utilization by moving pods from overutilized to underutilized nodes.
  • Utilization-Based Evictions - Removes pods from over-utilized or under-utilized nodes to balance the workload across the cluster.
  • Scheduling-Fit Validations - Ensures pods can be successfully rescheduled before eviction to prevent them from becoming unschedulable.
  • Cluster Node Management - Verifies that a pod can be rescheduled based on selectors, taints, and resource requests before removal.
  • Resource-Based Pod Redistribution - Evicts pods from overutilized nodes to underutilized nodes based on CPU, memory, and pod capacity thresholds.
  • Workload Compaction - Evicts pods from underutilized nodes to pack workloads more densely and facilitate cluster downscaling.
  • Cluster Resource Rebalancing - Evicts pods from overutilized nodes to underutilized ones to balance CPU and memory.
  • Lifecycle State Evictions - Removes pods based on age, status phases, exit codes, or condition transitions to clean up stuck workloads.
  • Pod Health Cleanup - Removes aged, unstable, or failed pods that exceed restart thresholds.
  • Duplicate Pod Removal - Evicts duplicate pods from the same node that belong to the same controller to improve workload distribution.
  • Pod Lifecycle Management - Manages the removal of pods based on their lifecycle state, including age and status transitions.
  • Anti-Affinity Enforcement - Removes pods that violate anti-affinity rules to ensure pods that should not coexist on the same node are relocated.
  • Topology Spread Enforcement - Moves pods to satisfy topology spread constraints and anti-affinity rules.
  • Kubernetes API Clients - Integrates with the Kubernetes API to query cluster state and issue pod deletion requests.
  • Cluster Autoscalers - Compacts workloads to enable cluster autoscalers to shut down unused worker nodes.
  • Constraint-Based Evictions - Moves pods that no longer satisfy node affinity or topology spread constraints to more appropriate nodes.
  • Node Scheduling Optimization - Relocates pods that no longer satisfy node affinity or taint requirements.
  • Pod Eviction Managers - Removes unhealthy, aged, or duplicate pods to maintain cluster freshness and stability.
  • Pod Health Evictions - Identifies and removes pods that have failed too many times or exceeded a specific lifetime.
  • Pod Lifecycle Cleanups - Provides automated eviction of pods based on their age, status transitions, and exit codes.
  • Pod Termination - Implements the removal of pods that exceed restart thresholds or enter failed status phases.
  • Resource Distribution Rebalancing - Detects resource utilization imbalances and triggers pod rescheduling to optimize allocation.
  • Scheduling-Fit Validations - Checks if a pod can be successfully rescheduled to another node before evicting it to prevent unschedulable pods.
  • Topology Spread Enforcement - Evicts the minimum number of pods required to satisfy topology spread constraints and maintain maximum skew.
  • Workload Compaction - Evicts pods from underutilized nodes into fewer, denser nodes to facilitate cluster downscaling.
  • Node Load Balancing - Balances CPU and memory utilization by evicting pods from overutilized nodes to underutilized ones.
  • Pod - Removes pods that exceed restart thresholds or are stuck in failure states.
  • Eviction Strategies - Implements a modular plugin system for evaluating cluster state and identifying pods eligible for removal.
  • Node Utilization Optimization - Evicts pods from overutilized nodes to underutilized nodes or compacts them to trigger autoscaling.
  • Unstable Pod Evictions - Evicts pods that exceed a restart threshold or remain in a failed state to encourage rescheduling.
  • Kubernetes Workload Label Filters - Uses label selectors and namespaces to filter and protect specific workloads from being evicted.
  • Dry-Run Previews - Provides a dry-run mode to preview which pods would be evicted without performing actual deletions.
  • Autoscaler Helpers - Packs pods onto fewer nodes to trigger cluster autoscaler downscaling of unused infrastructure.
  • Node Affinity Rules - Evicts pods that no longer satisfy defined node affinity rules to ensure optimal placement.
  • Distributed Recurring Task Scheduling - Executes cluster rebalancing tasks on a recurring schedule across multiple nodes while preventing concurrent execution.
  • Dry-Run Modes - Provides a simulation mode to identify pod eviction candidates without applying actual changes to the cluster.
  • Duplicate Pod Elimination - Evicts duplicate pods from the same node that belong to the same controller to improve workload distribution.
  • Eviction Filters - Excludes pods from eviction based on labels, namespaces, pod age, minimum replica counts, or protection policies.
  • Leader Election - Implements distributed locking to ensure only one instance manages the eviction process in high-availability deployments.
  • Pod and Namespace Label Filtering - Filters pods eligible for removal using criteria such as labels, namespaces, and protection policies.
  • Eviction Target Filtering - Restricts eviction candidates using label selectors, namespaces, and priority thresholds to protect critical workloads.
  • Pod Distribution Optimizations - Evicts duplicate pods from a single node to ensure workloads are better distributed across the cluster.
  • Pod Eviction Protections - Prevents the eviction of system-critical pods and DaemonSets to maintain cluster stability.
  • Pod Distribution Balancing - Evicts duplicate pods from the same node to ensure better workload distribution.
  • Topology Balancing Controllers - Enforces topology spread constraints by evicting pods to reduce skew across failure domains.
  • Taint-Based Pod Evictions - Evicts workloads from nodes with specific taints to facilitate automated node recovery and scaling.
  • Taint Enforcement - Removes pods that do not possess the necessary tolerations for taints assigned to a node.
  • Failed Pod Cleanup - Evicts pods in a failed status phase based on configurable exit codes, reasons, or minimum lifetimes.
  • Pod Health Dashboards - Identifies and removes pods based on failure phases or state transitions to maintain health.
  • Pod Lifecycle Cleanup - Removes pods based on their lifetime or status transitions to maintain cluster freshness.
  • Unstable Pod Cleanup - Evicts pods that exceed a restart threshold or maximum lifetime to clear failing or stale workloads.
  • Infrastructure and Operations - Evicts pods based on custom policies.
  • Workload Orchestration and Scheduling - Descheduler for Kubernetes.

स्टार हिस्ट्री

kubernetes-sigs/descheduler के लिए स्टार हिस्ट्री चार्टkubernetes-sigs/descheduler के लिए स्टार हिस्ट्री चार्ट

AI सर्च

और अधिक बेहतरीन रिपॉजिटरी खोजें

अपनी ज़रूरत को सरल भाषा में बताएं — AI हजारों क्यूरेटेड ओपन-सोर्स प्रोजेक्ट्स को प्रासंगिकता के आधार पर रैंक करता है।

Start searching with AI

अक्सर पूछे जाने वाले प्रश्न

kubernetes-sigs/descheduler क्या करता है?

Descheduler एक Kubernetes वर्कलोड रीबैलेंसर और पॉड इविक्शन मैनेजर है जिसे रिसोर्स डिस्ट्रीब्यूशन को ऑप्टिमाइज़ करने और क्लस्टर स्थिरता बनाए रखने के लिए डिज़ाइन किया गया है। यह उन पॉड्स की पहचान करता है और उन्हें हटाता है जो अब शेड्यूलिंग बाधाओं या स्वास्थ्य आवश्यकताओं को पूरा नहीं करते हैं, जिससे क्लस्टर उन्हें अधिक उपयुक्त नोड्स पर स्थानांतरित कर सकता है।

kubernetes-sigs/descheduler की मुख्य विशेषताएं क्या हैं?

kubernetes-sigs/descheduler की मुख्य विशेषताएं हैं: Dynamic Workload Rebalancers, Node Resource Balancing, Node Utilization Optimizers, Utilization-Based Evictions, Scheduling-Fit Validations, Cluster Node Management, Resource-Based Pod Redistribution, Workload Compaction।

kubernetes-sigs/descheduler के कुछ ओपन-सोर्स विकल्प क्या हैं?

kubernetes-sigs/descheduler के ओपन-सोर्स विकल्पों में शामिल हैं: kubeedge/kubeedge — KubeEdge is a distributed edge computing framework that extends Kubernetes to manage containerized workloads and… kubernetes/client-go — This project is a Go language library that provides a programmatic interface for interacting with the Kubernetes API… kube-rs/kube — Kube-rs is a Rust client library and runtime for interacting with the Kubernetes API server. It provides a type-safe… deuxfleurs-org/garage — Garage is a distributed object storage system that provides an S3-compatible API gateway. It is designed to… ben1234560/k8s_paas — This project provides a comprehensive architectural blueprint and implementation set for building a… cloudwu/skynet — Skynet is a distributed game server framework designed for building scalable online game backends. It utilizes…

Descheduler के ओपन-सोर्स विकल्प

समान ओपन-सोर्स प्रोजेक्ट्स, जो Descheduler के साथ साझा की गई सुविधाओं के आधार पर रैंक किए गए हैं।
  • kubeedge/kubeedgekubeedge का अवतार

    kubeedge/kubeedge

    7,487GitHub पर देखें↗

    KubeEdge is a distributed edge computing framework that extends Kubernetes to manage containerized workloads and hardware devices at the edge. It functions as a Kubernetes edge orchestration system, allowing the deployment and management of applications across distributed edge nodes using native Kubernetes APIs and workflows. The project distinguishes itself through a specialized focus on IoT integration and node autonomy. It employs digital-twin state modeling to represent physical hardware devices as virtual objects, utilizing an MQTT-based messaging bus for communication with heterogeneous

    Gocloud-nativecncfcontainer
    GitHub पर देखें↗7,487
  • kubernetes/client-gokubernetes का अवतार

    kubernetes/client-go

    9,837GitHub पर देखें↗

    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 lead

    Gok8s-staging
    GitHub पर देखें↗9,837
  • kube-rs/kubekube-rs का अवतार

    kube-rs/kube

    3,747GitHub पर देखें↗

    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
    GitHub पर देखें↗3,747
  • cloudwu/skynetcloudwu का अवतार

    cloudwu/skynet

    14,075GitHub पर देखें↗

    Skynet is a distributed game server framework designed for building scalable online game backends. It utilizes distributed actor-based clusters and real-time network communication to manage high-concurrency session coordination across multiple nodes. The framework includes a cluster management orchestrator for coordinating services via cluster-wide messaging and dynamic configuration updates. It features a multi-protocol network gateway supporting TCP, UDP, and WebSockets, alongside a data encoding layer using BSON and Sproto serialization for efficient information transfer between distribute

    C
    GitHub पर देखें↗14,075
  • Descheduler के सभी 30 विकल्प देखें→