Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. Client creates logical cloud using logical cloud creation API and the following documents are created in the DCM collection
    • The core module parses the Json and creates a new document for the logical cloud in the mongodb DCM collection.
    • The core module also creates a cluster document in the DCM collection
    • The user module parses the Json and creates a new document for user 
    • The namespace module parses the Json and creates a new document for namespace
  2. Associates logical cloud with clusters (this API is called multiple times)
    • The core module uses the traffic controller library to get the kubeconfig of the cluster added to the logical cloud
    • Updates the cluster document with the cluster name, loadbalancer ip and kubeconfig of the cluster
  3. Add quota for logical cloud
    • The quota module creates a quota document containing the quota details
  4. Apply API is called
    • Service mesh module gets CA bundle from CA controller via gRPC
    • Service mesh module gets names of logical cloud and creates a new namespace name using name of logical cloud name
    • Service mesh module creates helm template/istioctl manifest 
    • Service mesh module creates service mesh document in the DCM collection and stores the above (CA bundle contents, istio namespace, istioctl manifest) in the document
  5. DCM informs the resource synchronizer to start the logical cloud creation via gRPC and the resource synchronizer starts reading from the DB
  6. The DCM gets status from the resource synchronizer via gRPC


The details of the DCM Data Model can be found in the link below;


DCM MongoDB Data Model

DCM Source Code Directory Structure

...