stackabletech / issues

This repository is only for issues that concern multiple repositories or don't fit into any specific repository
2 stars 0 forks source link

Make creation of nodeport services configurable across all operators in a way that is forward compatible with future Listener operator configuration #360

Closed soenkeliebau closed 1 year ago

soenkeliebau commented 1 year ago

Currently most of our operators create a lot of nodeport services to expose cluster services to the world outside of Kubernetes. This is often not needed or even wanted and users should be able to disable this behavior via configuration.

We have implemented workarounds for this in three operators currently:

The configuration is done via a top level field in the CRD:

spec:
  serviceType: "NodePort" or "ClusterIP" # optional Enum

At some point in the future this functionality will be provided by the Listener operator and ListenerClasses, but at the moment this is still some time away from implementation. However we should move to a user facing configuration that can remain stable and support the implementation of this ticket and a later move to the listener operator (see #351).

Since we do not currently have a struct with shared config items across all our operators this will be introduced as part of this epic as well. For organizational reasons this might mean that unrelated changes may be bundled with this. Candidates for this are:

### Generic Tasks
- [ ] #351 
### Operator Implementations
- [ ] https://github.com/stackabletech/trino-operator/pull/406
- [ ] https://github.com/stackabletech/zookeeper-operator/pull/661
- [ ] https://github.com/stackabletech/hdfs-operator/pull/340
- [ ] https://github.com/stackabletech/hbase-operator/pull/338
- [ ] https://github.com/stackabletech/airflow-operator/pull/258
- [ ] https://github.com/stackabletech/superset-operator/pull/350
- [ ] https://github.com/stackabletech/hive-operator/pull/327
- [ ] https://github.com/stackabletech/druid-operator/pull/423
- [ ] https://github.com/stackabletech/nifi-operator/pull/449
- [ ] https://github.com/stackabletech/spark-k8s-operator/pull/228
- [ ] https://github.com/stackabletech/opa-operator/pull/432
- [x] NOT IMPLEMENTED: https://github.com/stackabletech/kafka-operator/pull/576
sbernauer commented 1 year ago

Should be implemented :)