elegant-sandwich-48375
09/12/2025, 10:54 AMancient-wolf-19325
09/12/2025, 10:54 AMmysterious-dinner-77632
09/12/2025, 10:57 AMancient-wolf-19325
09/12/2025, 10:57 AMcore.manager section in your values YAML file (e.g., values-eks.yaml). Set flytepropeller.manager: true and configure core.manager.shard with type: Project and the per-shard-mapping list to assign projects to shards. This configuration is merged into the deployment via Helm.
Would you like a concrete YAML example for this setup?
Sources:
- flytepropeller/manager/doc.go π 0 button π 0 button π‘ Hint: Mention @runllm in the thread for followups.mysterious-dinner-77632
09/12/2025, 10:59 AMancient-wolf-19325
09/12/2025, 10:59 AMmysterious-dinner-77632
09/12/2025, 11:00 AMancient-wolf-19325
09/12/2025, 11:00 AMvalues.yaml (or a custom values file), set flytepropeller.manager: true to enable the manager.
- Under core.manager, define the sharding strategy as follows:
flytepropeller:
manager: true
core:
manager:
pod-application: "flytepropeller"
pod-template-container-name: "flytepropeller"
pod-template-name: "flytepropeller-template"
pod-template-namespace: "flyte"
scan-interval: 10s
shard:
type: Project
per-shard-mapping:
- ids:
- project1
- ids:
- project2
- ids:
- "*"
- This configuration ensures that one propeller instance handles all workflows for project1, another for project2, and a third for all other projects.
2. On Each Propeller (Data Plane) Cluster:
- No special sharding configuration is needed on the individual propeller clusters; the manager in the admin cluster will launch and manage the propeller pods with the correct label selectors based on the above configuration.
3. Deploy the Helm Chart:
- Apply your Helm chart with the updated values file to the admin cluster. The manager will create and manage the propeller pods as specified.
This setup ensures project-based routing of workflows to propeller instances, with all sharding logic centralized in the admin clusterβs configuration.
Sources:
- flytepropeller/manager/doc.go π 0 button π 0 button π‘ Hint: Mention @runllm in the thread for followups.mysterious-dinner-77632
09/12/2025, 11:04 AMancient-wolf-19325
09/12/2025, 11:04 AMper-shard-mapping is a list that assigns specific project IDs to each FlytePropeller instance (shard) when using the "Project" shard strategy. The ids field under each mapping specifies which projects a particular propeller instance will manage. Each propeller is configured with Kubernetes label selectors to only process FlyteWorkflows with the matching project label, so all workflows for a given project are routed to the designated propeller instance.
For example, if you set:
per-shard-mapping:
- ids: [project1]
- ids: [project2, project3]
- ids: ["*"]
the first propeller handles project1, the second handles project2 and project3, and the third handles all other projects not explicitly listed. This ensures project-level assignment of workflows to propeller instances.
Would you like more detail on how the label selectors work or how to verify the assignment?
Sources:
- flytepropeller/manager/doc.go π 0 button π 0 button π‘ Hint: Mention @runllm in the thread for followups.mysterious-dinner-77632
09/12/2025, 11:05 AMancient-wolf-19325
09/12/2025, 11:05 AMper-shard-mapping list. The first entry corresponds to the first propeller, the second entry to the second propeller, and so on. Each propeller is launched by the manager with a deterministic name and assigned the projects listed in its corresponding ids entry. The mapping is positional: the first mapping in the list is for the first propeller, the second for the second, etc.
Would you like to see how the pod names or selectors are generated for each propeller?
Sources:
- flytepropeller/manager/doc.go π 0 button π 0 button π‘ Hint: Mention @runllm in the thread for followups.mysterious-dinner-77632
09/12/2025, 11:07 AMancient-wolf-19325
09/12/2025, 11:07 AMper-shard-mapping list in the manager configuration determines the assignment, not the order of entries in clusters: clusterConfigs or the names X and Y you might use elsewhere. The manager itself creates and manages the propeller pods, assigning each one to the projects listed in the corresponding position in per-shard-mapping. The first entry in per-shard-mapping is assigned to the first managed propeller pod, the second to the second, and so onβthis is independent of any external cluster naming.
If you are manually defining propeller deployments (not using the manager), project-based sharding as described is not supported; the manager must control the assignment. The mapping is positional and handled internally by the manager, not by the order in clusterConfigs.
Would you like more detail on how the manager names or launches the pods?
Sources:
- flytepropeller/manager/doc.go π 0 button π 0 button π‘ Hint: Mention @runllm in the thread for followups.