airbytehq / airbytehq/airbyte

Per-component priorityClassName and update strategy; extend topologySpreadConstraints; remove unused hpa values

未關閉
#83,758 2 則留言 0 個 reaction 已指派 0 人 在 GitHub 檢視
autoteam community team/use
主要語言
Python
星號
22.1k
分支
5.4k
平均合併
5 小時
30 天內合併 PR
671

描述

The airbyte-platform PR template directs contributions here, so filing this as an issue with a ready patch.

## Proposed change

Three small, related completions of the chart v2 scheduling surface:

1. `priorityClassName` for all workloads. Every component already exposes `nodeSelector`, `tolerations` and `affinity`; this adds the one standard scheduling field missing everywhere, in the identical guarded shape the existing `nodeSelector` blocks use.
2. `deploymentStrategyType` for the six components that currently hardcode their strategy (workload-launcher, connector-rollout-worker and metrics hardcode `Recreate`; featureflag-server, stigg-sidecar and workload-api-server hardcode `RollingUpdate`). Each new value defaults to the component's current literal, so nothing changes unless an operator opts in. This makes the strategy configurable; it does not change any default behavior.
3. `topologySpreadConstraints` for worker, workload-launcher and workload-api-server, extending the block airbyte-server already has.

Also removes the four `hpa: {enabled: false}` blocks in values.yaml that no template consumes; they read as a supported feature but render nothing.

## Why

Production self-managed clusters using preemption tiers and zone spreading currently cannot express either for most Airbyte components. The strategy knob matters for single-replica components on clusters where `Recreate` downtime windows are policy-relevant, while keeping the safe defaults for components where `Recreate` may be load-bearing.

## How

`priorityClassName` and `topologySpreadConstraints` reuse the existing passthrough patterns already used for `nodeSelector` and `affinity`. Every new value carries a `# --` helm-docs annotation. Renders with default values are unchanged. No changes to autogenerated files under templates/config.

A ready patch is available at https://github.com/airbytehq/airbyte-platform/compare/main...RafPe:airbyte-platform:chart-scheduling-disruption-surfaces; happy to open it as a PR wherever you prefer.

---
**Internal Tracking:** https://github.com/airbytehq/oncall/issues/13246

貢獻指南

開啟貢獻指南

研究方向

Start in the chart v2 values.yaml and the workload templates/config, using airbyte-server's existing topologySpreadConstraints block and nodeSelector guards as entry points. Check the six named strategy fields and all workload scheduling blocks, then render with default values; done means the new Helm values are documented, unused HPA blocks are gone, and default renders remain unchanged.

由索引模型根據 Issue 內容生成。

評估

技術堆疊
helm, kubernetes, yaml
領域
devops, infrastructure
Issue 類型
功能
難度
4/5
預估耗時
3-5 天
活躍度
冷清
描述清晰度
基本清楚
新手友好度
55/100

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。