Logo
Sign in

Apache YuniKorn is a universal resource scheduler for Kubernetes that enables efficient, fair, and flexible scheduling of batch and streaming workloads in cloud-native environments, supporting multi-tenancy and hierarchical queues for better resource management.

Vendor

Vendor

The Apache Software Foundation

Company Website

Company Website

yk-ui-screenshots-d24de16a6a2af41a4d5ac1f488ce04a1.gif
architecture-333225e01d82300eb9ee34e76cf34697.png
Product details

Apache YuniKorn

Apache YuniKorn is a lightweight, universal resource scheduler designed for container orchestrator systems like Kubernetes. It provides fine-grained resource sharing and efficient scheduling for batch, data, and machine learning workloads in multi-tenant, cloud-native environments. YuniKorn replaces the default Kubernetes scheduler with a more powerful alternative that supports hierarchical queues, resource fairness, and application-aware scheduling.

Features

  • Application-aware scheduling with context of users, apps, and queues
  • Hierarchical resource queues for fine-grained resource control
  • Gang scheduling to reserve and allocate resources for entire applications
  • Job ordering policies including FIFO, Fair, Priority, and StateAware
  • Pluggable node sorting policies and preemption support
  • Centralized UI for monitoring cluster, queue, and application resource usage
  • ARM and x86 architecture support with prebuilt images

Capabilities

  • Full compatibility with Kubernetes workloads
  • Transparent integration with existing Kubernetes applications
  • Elastic resource management with cloud autoscaler support
  • Efficient bin-packing and proactive up-scaling for cost optimization
  • Centralized dashboard for resource planning and monitoring
  • Configurable reservation behavior and multi-gang scheduling

Benefits

  • Improved scheduling predictability and fairness across tenants
  • Enhanced resource utilization and reduced fragmentation
  • Simplified client-side operations with queue-based resource management
  • Cost savings through optimized cloud resource usage
  • Better control over resource quotas and priorities
  • Scalable and flexible deployment for both on-prem and cloud environments