...
While commissioning a control loop, the Helm chart parameters are passed via TOSCA template to the control loop runtime database. And when the control loop is instantiated, the Kubernetes participant receives control loop element update event from the CLAMP runtime. It then invokes the Helm client running on the host machine to install the corresponding Helm charts associated with the affected control loop elements. The k8s- The Kubernetes participant gets the parameters (chart name, version, release name and namespace) of the chart from the control loop runtime. If the repository of the chart had not been specified in the TOSCA, it performs performs a "chart lookup" on all the configured repositories of in the helm Helm client as well as on the local chart directory where the helm Helm charts are may be manually onboarded by the operator. It fetches the appropriate repository info and installs the chart via the helm cliCLI.
The k8s-Kubernetes participant takes care of creating a namespace on the cluster if required, fetching the helm Helm chart from the available repositories, installing and uninstalling the chart in to the cluster. In the upcoming releasereleases, additional options will be supported in control loop CLAMP for onboarding the helm Helm charts to the repositories via TOSCA (both configured helm Helm repos and local chart directory) before instantiation. (Under discussion)
Drawio | |||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
The code block below shows a Sample TOSCA service template passed during commissioning of control loops. Below are the ways , the charts Charts can be commissioned via TOSCA . in the following ways:
- Chart parameters: name, version, release_name and namespace are mandatory in TOSCA.
- Repository can be specified with either configured helm repository name or any local directory where the helm charts are available.
(Note: Repository name is an optional parameter in control loop TOSCA template. If not specified, the k8s-Kubernetes particpant will do a look - up on the available repos)
...