...
draw.io Diagram | ||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Fig 1: DCM Components
Sample DCM DB tables
...
DCM Sequence
- Client creates logical cloud using logical cloud creation API
- Associates logical cloud with clusters (this API is called multiple times)
- Add quota for logical cloud
- The client talks to the core module and at each step the core module calls the specific modules which then take the information and store it in the required section in the database. For examle, the namespace module will store the namespace for the logical cloud in the DB.
- Apply API is called
- Service mesh module gets CA bundle from CA controller
- Service mesh module gets names of logical cloud and creates a new namespace name using name of logical cloud
Service mesh module creates helm template/istioctl manifest and stores it in the database with the namespace to use
- Service mesh module creates k8s coredns file for coredns of control plane for each cluster i.e, there is a coredns deployment file, configmap, service account etc for each cluster per control plane (logical cloud)
- DCM informs the resource synchronizer to start the logical cloud creation via gRPC and the resource synchronizer starts reading from the DB
- The DCM gets status from the resource synchronizer via gRPC
...