opea-project / GenAIInfra

Containerization and cloud native suite for OPEA
Apache License 2.0
16 stars 22 forks source link

Discuss pros/cons - yaml versus helm charts versus cdk8 #65

Open mkbhanda opened 1 month ago

mkbhanda commented 1 month ago

Currently we are deploying yaml based definition of microservices. They are easy to create and use. Helm charts are more complex but they allow modifying the template, passing in HW information to even determine which image to download. CDK8 is yet another format that allows varying allocated resources. With Service mesh both yaml and helm charts work to trigger launch of services. It would be good to pause and determine if we should support one or more formats of each for the sample microservices and GMC support connecting services in any format.

eero-t commented 1 month ago

FYI: Helm (explicitly) does not support updating nor removing CRDs, for those one needs to apply/remove manifests manually any way, which needs to be separately documented.

(Manifest files could be generated from Helm charts with helm template / helm install --dry-run.)

If common configuration options are in e.g shared configMaps, instead of hard-coded to multiple pod specs, IMHO editing them is not much harder than using Helm. IMHO more interesting question is which of those options could be updated at runtime / do OPEA services have config reloader like e.g. Prometheus services have?

mkbhanda commented 1 month ago

Thank you @eero-t ! Will be leveraging your expertise in this space.