opea-project / GenAIInfra

Containerization and cloud native suite for OPEA
Apache License 2.0
32 stars 60 forks source link

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

Open mkbhanda opened 6 months ago

mkbhanda commented 6 months 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 6 months 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 6 months ago

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