Volcano logo

Volcano

Volcano is a CNCF incubating batch processing and high-performance computing (HPC) scheduler for Kubernetes. It provides advanced scheduling capabilities including gang scheduling, fair-share scheduling, queue management, and job lifecycle management for batch workloads such as machine learning training, big data processing, and scientific computing. Volcano extends Kubernetes with three CRDs: Job (vcjob), Queue, and PodGroup.

3 APIs 0 Features
Batch ProcessingCloud NativeHPCIncubatingKubernetesSchedulingMachine Learning

APIs

Volcano Batch Scheduling API

Volcano extends Kubernetes with CRDs for batch workload management. The Job resource defines batch workloads with multiple task types and lifecycle policies. Queue resources man...

Volcano Queue API

Kubernetes CRD for defining and managing job queues in Volcano. Queues collect PodGroups and support weight-based fair-share scheduling and resource quotas, providing the primar...

Volcano PodGroup API

Kubernetes CRD that represents a group of pods with strong association, used as the unit of gang scheduling in Volcano. PodGroups define the minimum number of pods that must be ...

Semantic Vocabularies

Volcano Context

0 classes · 7 properties

JSON-LD

API Governance Rules

Volcano API Rules

7 rules · 1 errors 4 warnings 2 info

SPECTRAL

Resources

🔗
LinkedIn
LinkedIn
🔗
Website
Website
🔗
JSONLD
JSONLD
🔗
JSONSchema
JSONSchema
🔗
JSONStructure
JSONStructure
🔗
Vocabulary
Vocabulary
🔗
SpectralRules
SpectralRules
🔗
Documentation
Documentation
🚀
GettingStarted
GettingStarted
📰
Blog
Blog
👥
GitHubOrganization
GitHubOrganization
👥
GitHubRepository
GitHubRepository
🔗
Community
Community

Sources

Raw ↑
aid: volcano
name: Volcano
description: >-
  Volcano is a CNCF incubating batch processing and high-performance computing (HPC) scheduler for Kubernetes. It
  provides advanced scheduling capabilities including gang scheduling, fair-share scheduling, queue management, and job
  lifecycle management for batch workloads such as machine learning training, big data processing, and scientific
  computing. Volcano extends Kubernetes with three CRDs: Job (vcjob), Queue, and PodGroup.
url: https://volcano.sh
image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
tags:
  - Batch Processing
  - Cloud Native
  - HPC
  - Incubating
  - Kubernetes
  - Scheduling
  - Machine Learning
created: '2026-03-16'
modified: '2026-05-19'
specificationVersion: '0.19'
type: Index
apis:
  - aid: volcano:volcano-api
    name: Volcano Batch Scheduling API
    description: >-
      Volcano extends Kubernetes with CRDs for batch workload management. The Job resource defines batch workloads with
      multiple task types and lifecycle policies. Queue resources manage job scheduling with weight-based fair sharing
      and resource quotas. Volcano supports gang scheduling ensuring all pods in a group are scheduled together, and
      integrates with frameworks like TensorFlow, PyTorch, Spark, and MPI.
    humanURL: https://volcano.sh/en/docs/
    properties:
      - type: Documentation
        url: https://volcano.sh/en/docs/
      - type: Reference
        url: https://volcano.sh/en/docs/vcjob/
      - type: GettingStarted
        url: https://volcano.sh/en/docs/installation/
      - type: OpenAPI
        url: openapi/volcano-job-openapi.yml
      - type: JSONSchema
        url: json-schema/volcano-job-schema.json
    tags:
      - Batch Scheduling
      - Gang Scheduling
      - Queues
  - aid: volcano:volcano-queue-api
    name: Volcano Queue API
    description: >-
      Kubernetes CRD for defining and managing job queues in Volcano. Queues collect PodGroups and support weight-based
      fair-share scheduling and resource quotas, providing the primary mechanism for multi-tenant resource partitioning
      and priority-based job admission.
    humanURL: https://volcano.sh/en/docs/v1-10-0/queue/
    properties:
      - type: Documentation
        url: https://volcano.sh/en/docs/v1-10-0/queue/
      - type: OpenAPI
        url: openapi/volcano-queue-openapi.yml
    tags:
      - Batch Scheduling
      - Kubernetes
      - Multi-Tenancy
      - Queues
      - Resource Management
  - aid: volcano:volcano-podgroup-api
    name: Volcano PodGroup API
    description: >-
      Kubernetes CRD that represents a group of pods with strong association, used as the unit of gang scheduling in
      Volcano. PodGroups define the minimum number of pods that must be scheduled together, enabling all-or-nothing
      scheduling semantics for distributed training and computing workloads.
    humanURL: https://volcano.sh/en/docs/podgroup/
    properties:
      - type: Documentation
        url: https://volcano.sh/en/docs/podgroup/
      - type: OpenAPI
        url: openapi/volcano-podgroup-openapi.yml
    tags:
      - Batch Scheduling
      - Distributed Computing
      - Gang Scheduling
      - Kubernetes
      - Pod Management
common:
  - type: LinkedIn
    url: https://www.linkedin.com/company/philips-volcano
  - type: Website
    url: https://volcano.sh/en/
  - type: JSONLD
    url: json-ld/volcano-context.jsonld
  - type: JSONSchema
    url: json-schema/volcano-job-schema.json
  - type: JSONStructure
    url: json-structure/volcano-job-structure.json
  - type: Vocabulary
    url: vocabulary/volcano-vocabulary.yml
  - type: SpectralRules
    url: rules/volcano-rules.yml
  - type: Documentation
    url: https://volcano.sh/en/docs/
  - type: GettingStarted
    url: https://volcano.sh/en/docs/installation/
  - type: Blog
    url: https://volcano.sh/en/blog/
  - type: GitHubOrganization
    url: https://github.com/volcano-sh
  - type: GitHubRepository
    url: https://github.com/volcano-sh/volcano
  - type: Community
    url: https://github.com/volcano-sh/community
maintainers:
  - FN: Kin Lane
    email: kin@apievangelist.com