Repository navigation
flyte-core: document opt-in horizontal autoscaling (chart v2.0.52+) - #1774
Draft
unionai-docsy-agent[bot] wants to merge 2 commits into
Draft
unionai-docsy-agent[bot] wants to merge 2 commits into
unionai-docsy-agent[bot] wants to merge 2 commits into
Conversation
Drafted by Docsy for case 830. Signed-off-by: unionai-docsy-agent[bot] <336110417+unionai-docsy-agent[bot]@users.noreply.github.com>
GHA build & deploy previewBuilt by
Updated automatically on every push. |
… rendering flyte-core v2.0.52 (resources default to {}, autoscaling drops replicas from the Deployment, the HPA uses a Resource CPU target), and list autoscaling among the per-component keys.
Pushed by Docsy at the direction of Peeter Piegaze (ppiegaze).
Signed-off-by: unionai-docsy-agent[bot] <336110417+unionai-docsy-agent[bot]@users.noreply.github.com>
Contributor
Author
|
Docsy actions: what Docsy did on this PR, and at whose direction. Docsy adds a line for each.
|
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds a "Horizontal autoscaling" subsection to the
flyte-coredeployment page, at the end of "Scaling and scheduling individual components". It covers the opt-inHorizontalPodAutoscalersupport that flyteorg/flyte#8158 added to the chart. The executor warning now also says the executor has noautoscaling. Everything comes from reading the chart source at thev2.0.52tag. I could not render the chart:helmisn't installed here, and the sandbox blocks network tools.Re-applied edits: when I started this revision, the working tree held none of the earlier draft's page edits. Only the pre-existing SVG mode change was there. I wrote the edits again against the source, with the reviewer's findings included.
What changed in the product, and which signals asked for docs
flyteorg/flyte#8158, "Add support for HPAs to flyte-core helm chart", was opened on 2026-10-09 (signal 830) and merged on 2026-10-13 (signal 993). It adds an
autoscalingblock to mostflyte-corecomponents. When the block is enabled, the chart renders anautoscaling/v2HorizontalPodAutoscaler for that component. It is off by default.Release: the
v2.0.52tag isd95058da. That is the commit checked out insources/flyte, and its tree containscharts/flyte-core/templates/*/hpa.yaml. I resolved the tag in the previous round. I couldn't re-check it this round, because network tools are blocked. The owner's note of 2026-10-20 saysv2.0.51does not contain #8158.Two corrections to the brief
flyte-corevalues.content/oss-deployment/aws-deployment/flyte-core.md(Flyte variant only) does, and it already has a scaling section, so I extended that page.console.autoscaling, notcomponents.console.autoscaling.secretalso gets an autoscaler.executordoes not.Changes to
content/oss-deployment/aws-deployment/flyte-core.md### Horizontal autoscalingsubsection:app, the component itself must also be enabled.helm repo update/helm search repocheck.replicaCountis ignored while autoscaling is on.replicaCountand noautoscaling".Evidence (flyte
d95058da,charts/flyte-core/)templates/{runs,actions,events,secret,cache,app,dataproxy,console}/hpa.yamlexist; there is none underexecutor/.executor/deployment.yamlhardcodesreplicas: 1.console/hpa.yamlreads$.Values.console.values.yaml, the same for every component andconsole):enabled: false,minReplicas: 1,maxReplicas: 10,targetCPUUtilizationPercentage: 80,targetMemoryUtilizationPercentage: null,metrics: [],behavior: {}. The comments say "Resource utilization requires resource requests" and list the metric types as "Pods, Object, External, or Resource".hpa.yamlemits the CPU metric underwith, then the memory metric underwith, thentoYamlofmetrics. The CPU metric appears whenever its target is set, and the default is80.with $autoscaling.behavioris followed bytoYaml.replicaCountignored: eachdeployment.yaml, including the console's, wrapsreplicas:inif not ...autoscaling.enabled.appmust be enabled: eachhpa.yamlis gated onif and $component.enabled $autoscaling.enabled.fail "...: require 1 <= minReplicas <= maxReplicas"fail "...: configure at least one metric"when the CPU target, the memory target andmetricsare all unset.publish-helm.ymlruns onv2*tags, withVERSION: ${{ github.ref_name }}.scripts/tag-helm.shwrites${VERSION}intoChart.yamlversion:, so the published chart version isv2.0.52, with thev. The page uses that form.values.schema.json, so Helm doesn't reject unknown keys. Older charts have nohpa.yamland noreplicasgate, so the values do nothing. I could only see thev2.0.52tree; the shallow clone doesn't containv2.0.51.Reviewer findings
helm repo update, then confirm thathelm search repo flyteorg/flyte-core --versionslists v2.0.52 or later. The requirement itself is settled: the feature exists only from thev2.0.52tag on.hpa.yamland the80default. The rendering-failure note was changed to match.v2.0.52or2.0.52? Answered from source: it isv2.0.52, becauseVERSIONisgithub.ref_name. Whether the publish run succeeded is still open (below).Open questions, answered in session
helm search repo flyteorg/flyte-core --versionslistsv2.0.52,v2.0.53andv2.0.54.helm pull flyteorg/flyte-core --version 2.0.52, thenhelm template:--set components.actions.autoscaling.enabled=truerenders an HPA foractions(min 1, max 10, oneResourceCPU metric at 80%), and theactionsDeployment has noreplicas.values.yamlhasresources: {}for every component, so that Deployment's container has no requests.minReplicas=0fails withactions.autoscaling: require 1 <= minReplicas <= maxReplicas;targetCPUUtilizationPercentage=nullalone fails withactions.autoscaling: configure at least one metric.templates/*/hpa.yamlexists for exactly the eight components the page lists, and not forexecutor.Revised in session (Peeter Piegaze, 7d5ff08)
Docsy's pre-flight gotchas, now on the page as a "Before you turn it on" list at the end of the subsection:
resources: {}the HPA has no request to compute utilization against, so it never scales.replicasfrom the Deployment, which falls back to the default of one replica until the HPA scales up. The Kubernetes docs warn about this when migrating a Deployment to an HPA. Not reproduced on a live cluster.autoscaling, with a link to the subsection.Note
The working tree also shows a mode change (
100755 → 100644) oncontent/_static/images/deployment/flyte_wf_timeline.svg. It was already in the checkout and is not part of this change. Don't commit it.docsy left out changes outside the pages a draft may change:
content/_static/images/deployment/flyte_wf_timeline.svg.Pre-flight review
docsy's reviewer read the first draft before it was opened and made 5 findings. The draft was revised twice in response; its last check still made 5 findings. Its summary of the first draft:
Docsy case 830: https://docsy.apps.demo.hosted.unionai.cloud/cases/830
Drafted by Docsy, Union.ai's documentation agent, from the product changes and requests in this case. Review it like any PR; close it if it's not wanted.