open-webui / open-webui/terminals

Add kubernetes scheduling overrides for terminal pods

Open
#31 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
108
Forks
23
Avg merge
12h 8m
Merged PRs (30d)
1

Description

Summary

Kubernetes Operator backend users cannot currently constrain generated terminal pods to specific node pools because the operator does not expose nodeSelector or tolerations for the pods it creates.

Use case

In multi-tenant or mixed-workload clusters, operators may want terminal pods to run only on dedicated nodes, for example nodes with stronger isolation, special hardware, different storage, or taints that keep ordinary workloads away.

Today, the generated terminal pods cannot tolerate those taints or target those labels without an external admission controller.

Proposed behavior

Add optional environment-based scheduling overrides for the Kubernetes Operator backend:

  • TERMINALS_KUBERNETES_NODE_SELECTOR
  • TERMINALS_KUBERNETES_TOLERATIONS

These would be applied to generated terminal pods. The same scheduling settings should also apply to reset pods so cleanup/reset work can run in the same node pool.

Notes

This keeps the CRD unchanged and is backward-compatible: if the env vars are unset, generated pods behave as they do today.

Status

I've created a MR #30

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start from the Kubernetes Operator backend code that generates terminal pods and reset pods, then trace how environment-based settings are read. Done means optional node selector and toleration settings affect both pod types while unset variables preserve current behavior; MR #30 indicates work is already underway.

Written by the indexing model from the issue text.

Assessment

Tech stack
kubernetes, python
Domain
devops, infrastructure
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.