lightbend / cloudflow

Cloudflow enables users to quickly develop, orchestrate, and operate distributed streaming applications on Kubernetes.
https://cloudflow.io
Apache License 2.0
321 stars 89 forks source link

Add the ability to declare k8s pod `tolerations` that allow (but do not require) the pods to schedule onto nodes with matching taints #1207

Open idrismike opened 2 years ago

idrismike commented 2 years ago

Is your feature request related to a problem? Please describe. Cloudflow deployments do not provide the ability to schedule pods on specific nodes in k8s cluster.

Is your feature request related to a specific runtime of cloudflow or applicable for all runtimes? This is relevant for all runtimes deployment to k8s.

Describe the solution you'd like Currently, we can declare k8s related configuration in a conf file and provide as --conf to kubectl cloudflow. However, these configuration do not support tolerations for pods that can be scheduled on nodes with matching taints in the k8s cluster. Therefore, it is highly recommended to make this feature available in the cloudflow operator to parse this and add to the deployments before deploying them in the cluster.

Describe alternatives you've considered N/A

Additional context For details on taints and tolerations - see https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/

thomasschoeftner commented 2 years ago

I have proposed a PR to fix this: https://github.com/lightbend/cloudflow/pull/1211