konpyutaika / nifikop

The NiFiKop NiFi Kubernetes operator makes it easy to run Apache NiFi on Kubernetes. Apache NiFI is a free, open-source solution that support powerful and scalable directed graphs of data routing, transformation, and system mediation logic.
https://konpyutaika.github.io/nifikop/
Apache License 2.0
122 stars 39 forks source link

Add support for configuring `Service` traffic policies #402

Closed mikejoh closed 3 months ago

mikejoh commented 3 months ago

Is your feature request related to a problem?

Sometimes the environment we're operating (using Cilium as a CNI) in requires us to configure externalTrafficPolicy and/or internalTrafficPolicy on Service objects to be able to handle traffic appropriately.

Describe the solution you'd like to see

Add two new fields to the ExternalServiceSpec (and the CRD) to be able to configure traffic policies.

Describe alternatives you've considered

I've only considered (or rather noted) that the ExternalServiceSpec is a subset of the core Kubernetes ServiceSpec and that we're copying fields over when we want to add new functionality. When we create a Service through the operator we create a ServiceSpec. From a user perspective the externalServices configuration of the NifiCluster API can be a bit awkward to work with since we don't expose the exact same fields in the spec as the Service API provides. Maybe there's a good reason for this though! Long-term maybe it's possible to be 1:1 compatible with the Service API.

Additional context

No response