sodafoundation / delfin

delfin is the SODA Infrastructure Manager project which provides unified, intelligent and scalable resource management, alert and performance monitoring
https://sodafoundation.io/
Apache License 2.0
202 stars 355 forks source link

kubernetes deployment consideration (RDBMS) #1013

Open thatsdone opened 7 months ago

thatsdone commented 7 months ago

Issue/Feature Description:

Inconsistent API query results are returned from delfin-api server when we deploy delfin on kubernetes using manifests under:

https://github.com/sodafoundation/examples/tree/master/delfin-kubernetes

This is because all the delfin components (api/task/alert/exporter) deployments are defined to use replica = 2, and (at least) delfin-api uses RDBMS/sqlite3 (through sqlalchemy) for its control data management. This causes management data inconsistency.

Possible resolutions would be:

  1. Use replica=1
  2. Use Independent RDBMS such as MariaDB, PostgreSQL etc.

Better to add notes like above, I think.

Why this issue to fixed / feature is needed(give scenarios or use cases):

kubernetes deployment also should be easy and trouble free.

How to reproduce, in case of a bug:

  1. Prepare kuberntes cluster
  2. Deploy delfin using the manifest available under:
  3. Register some stroage box and see status using curl multiple times
  4. You would see different results depending on API calls

Other Notes / Environment Information: (Please give the env information, log link or any useful information for this issue)

Delfin: 1.8.0 Kubernetes: v1.27.4