Kubernetes Scheduler Profiles & Multiple Schedulers Prompt
Design kube-scheduler profiles with plugin enable/disable and scoring weights, or run a second scheduler, to give workload classes different placement behavior.
- Target user
- Cluster operators tuning pod placement policy
- Difficulty
- Advanced
- Tools
- Claude, ChatGPT
The prompt
You are a senior Kubernetes scheduling engineer who configures kube-scheduler via KubeSchedulerConfiguration profiles, knows each plugin's extension points (PreFilter, Filter, Score, Bind), and that `schedulerName` on a Pod selects which profile handles it. I will provide: - My placement goal per workload class (bin-pack batch jobs, spread latency-sensitive services, etc.) - My current KubeSchedulerConfiguration (or that I'm on defaults) - Whether I can edit the in-tree scheduler config or must run a second scheduler deployment Your job: 1. **Map goals to plugins** — choose the right plugins and extension points (e.g. `NodeResourcesFit` with `scoringStrategy: MostAllocated` for bin-packing vs `LeastAllocated` for spread) and their `pluginConfig`. 2. **Author the profiles** — write one KubeSchedulerConfiguration with multiple `profiles[]`, each a distinct `schedulerName`, enabling/disabling and weighting plugins per class. 3. **Wire pods to profiles** — show the `spec.schedulerName` field workloads set to select a profile, and what happens to pods that name a non-existent scheduler (stuck Pending). 4. **Decide single-binary vs second scheduler** — recommend in-tree profiles when possible; reserve a separate scheduler Deployment for out-of-tree plugins, and warn about the two schedulers racing on the same nodes. 5. **Set scoring weights deliberately** — explain how `Score` plugin weights combine and why over-weighting one plugin starves the others. 6. **Validate placement** — give commands to confirm which scheduler bound a pod and to detect Pending pods caused by profile misconfig. Output as: (a) the KubeSchedulerConfiguration YAML with annotated profiles, (b) the workload `schedulerName` snippets, and (c) verification commands for binding and Pending diagnosis. Mark DESTRUCTIVE any change to the default scheduler profile, since it affects every unlabeled pod cluster-wide and a bad Filter plugin can wedge all scheduling.
Run this prompt with AI
Test it, get an AI-improved version, or compare models — live in the Prompt Workspace. No copy-paste.
Related prompts
-
Kubernetes Scheduler Extender Webhook Design Prompt
Design a scheduler extender webhook for filter/prioritize/preempt/bind hooks when in-tree plugins aren't enough, and decide when the scheduler-framework is the better path instead.
-
Pod Affinity & Anti-Affinity Design Prompt
Design pod affinity, anti-affinity, and node affinity rules that spread replicas for HA, co-locate latency-sensitive pairs, and avoid the unschedulable trap of over-strict required rules.
-
Helm Secrets + SOPS Encrypted Values Workflow Prompt
Design a GitOps-safe workflow for encrypting Helm values with the helm-secrets plugin and SOPS (age/KMS) — encrypted values in git, decryption at deploy time, key rotation, and CI wiring.
-
Kubernetes Encryption-at-Rest KMS Provider Design Prompt
Design and roll out etcd encryption-at-rest with an EncryptionConfiguration and a KMS v2 provider — provider ordering, key rotation, and re-encrypting existing Secrets without downtime.
More Kubernetes & Helm prompts & error guides
Browse every Kubernetes & Helm prompt and troubleshooting guide in one place.
Reading prompts? Get all 500 in one free PDF
500 battle-tested, copy-paste AI prompts engineered by a senior systems engineer — every one with fill-in placeholders and safety/back-out notes. Drop your email and it's yours.
- 500 prompts: Linux · Kubernetes · Terraform · OpenStack · GitLab · Docker · Monitoring · Incident Response
- Instant PDF download — yours free, forever
- Plus one practical AI-workflow email a week (no spam)
Single opt-in · unsubscribe anytime · no spam.