{
  "id": 18666387,
  "title": "Kubernetes DRA Extended Resources: GPUs Without Device Plugins",
  "url": "https://urgent.news/2026/11/07/kubernetes-dra-extended-resources-gpus-without-device-plugins",
  "topic": "tech",
  "section": "Tech",
  "published": "2026-11-07T08:01:34.000Z",
  "source": {
    "name": "Dev.to",
    "slug": "dev-to",
    "url": "https://dev.to/oleksandr_kuryzhev_42873f/kubernetes-dra-extended-resources-gpus-without-device-plugins-b2d"
  },
  "original_language": "en",
  "account": "Kubernetes v1.37 has introduced Dynamic Resource Allocation (DRA) extended resources, which enable GPU support without needing device plugins. This change allows a more flexible allocation model that can handle per-model GPU selection, MIG slices, and shared devices. The DRA extended resources replace the opaque integer representation used by classic extended resources with structured data, allowing the scheduler to allocate specific devices to pods through ResourceClaim objects. Kubernetes v1.37 has graduated DRA extended resources to GA status, making the migration path stable. To implement DRA, install a DRA driver for GPUs, create a DeviceClass that declares the extended resource name it should satisfy, and continue requesting nvidia.com/gpu in resources.limits. The process involves migrating one labeled node pool at a time and ensuring that the quota and metrics tooling are updated to account for DRA-allocated devices.",
  "summary": "Originally published on kuryzhev.cloud A platform team has 200 training manifests that all say nvidia.com/gpu: 1 . They also want per-model GPU selection, MIG slices and shared devices, which the device plugin model cannot express. Rewriting every manifest to use ResourceClaims would be a large, slow and risky project. DRA extended resources exist to remove that trade-off. Kubernetes v1.37…",
  "key_points": [
    "Kubernetes v1.37 introduces DRA extended resources for GPU support without device plugins.",
    "DRA extended resources replace opaque integers with structured data for scheduler device allocation."
  ],
  "editors_take": null,
  "illustration": null,
  "coverage": {
    "outlets": 1,
    "also_reported_by": []
  },
  "ai_generated": true,
  "disclaimer": "Summaries, key points and the editor’s take are written by software from other outlets’ reporting and may contain errors — always check the linked original."
}