Table of Contents | ||
---|---|---|
|
...
Multi-Cluster Tenant controller
<This section is incomplete and a work in progress ... needs rework and further updates ... >
Srini notes:
- Define CRUD API - add/delete/modify/read MC Tenant.
- Cluster from the the Edge location are registered to the ONAP as follows :
- Cluster-100.2-labels: { Cascade, SRIOV, QAT,}
- Cluster-101.1-labels: { Sky-lake, SRIOV}
- Tenant Object is template in ONAP with following filed
Code Block language js { "metadata": { "name": "tenant-a", "clusterlabels": "label-A" }, "spec": { "users": [ { "name": "users-1", "crt": "/path/to/crt" }, { "name": "users-2", "crt": "/path/to/crt" } ] } }
- ONAP create the Tenant based on the cluster labels
- Find the cluster Artifacts kubeconfig based on the cluster labels
- Get the Multicloud k8s-plugin API to create the Tenant json
curl -d @create_tenant-a.json http:
//NODE_IP
:30280
/api/multicloud-k8s/v1/v1/tenant
- MC Cluster Tenant API - <This section is incomplete and a work in progress ... needs rework and further updates ... >
- Create
- Update
- Delete
- Get
- List
- Watch
- Patch
- Each corresponding MC Cluster Tenant API will have a K8s Tenant CR API
- Cluster from the the Edge location are registered to the ONAP as follows :
- Design note :
- On how this would be done as Micro-service in the ONAP.
- How does interact with K8S clusters.
- How does it ensure that all the configuration is applied (rollbacks, unsuccessful edges).
- Visibility of the configuration applied on per MCTenant basis.
- When new K8S cluster is added with the label of interest, taking care of creating tenant-specific information in that edge etc..
- Extensibility (future K8S clusters having some other features that require configuration for multi-tenancy).
...