/
Introduction of Helm Plugin

Introduction of Helm Plugin

This Plugin will utilize the ONAP helm chart to install, uninstall, upgrade, and rollback ONAP components.

Plugin Requirements:

  • Python versions:

    • 2.7.x

  • Helm client should available on CM 

Compatibility

  • OOM master branch 

  • OOM Beijing release

  • OOM Casablanca release



Type

ONAP.nodes.component


example

so:
  type: onap.nodes.component
  properties:
    component-name: so
    config-path: '/tmp/so.yaml'
    chart-repo-url: { get_input: chart-repo-url }
    chart-version: { get_input: chart-version }
    namespace: { get_input: namespace }
    config: { get_input: jsonConfig}

Derived From: cloudify.nodes.Root

Properties:

  •  

    • tiller-server-ip:

      description: IP of tiller server

      type: string

  •  

    • tiller-server-port:

      description: Port of tiller server

      type: string

    • chart-repo-url

      description:  helm chart repo url
      default: http://127.0.0.1:8879/charts

    • component-name

      description: the helm chart name of the ONAP component

  •  

    • chart-version

      description: The version of ONAP helm chart.

    • namespace

      description: The kubernetes namespace to deploy the helm chart.
      default: onap

    • config

      description: String format json object. To save the input config.
      default: ' '

    • config-url

      description: The input config file URL
      default: ' '

    • config-format

      description: The URL input config file format, json or yaml.
      default: 'json '

    • runtime-config

      description:  String format json object. To save the runtime config generate from other nodes.
      default:''

    • tls-enable

      description:  enable TSL between tiller and helm client. please check this link "SSL/TLS connection between HELM and Tiller" 
      default: false
      type: boolean

    • ca

      description: value of tls-ca-cert
      default: ''

    • cert

      description: value of tls-cert
      default: ''

    • key

      description: value of tls-key
      default: ''

Runtime properties

 Runtime Properties are execution-time details of node instances. 

 Runtime Properties are saved to the database so that they can be consumed by plugins or by users.

  • Current-helm-value

    The all the current helm value same as a JSON object.
    This property will be updated during install, upgrade and rollback.


  • helm-history

    This property contains historical revisions. 
    This property will be updated during install, upgrade and rollback.

  • install-status

    This property contains the output from 'helm status'

Operations:

  • configure

    Based on the config and dmaap-topic generate the value yaml file on config-path.

  • start

    Find the ONAP helm chart on chart repo. Install that helm chart with the value yaml file which be generated on config operation.

  • stop

    Delete the ONAP componment. 

  • upgrade

    Upgrate the helm value or helm chats.

  • rollback:

    Rollback to some revision.

  • status

    Get helm deployment status

Workflows:

  • install

    1. Execute  configure operation
    2. Execute  start operation



  • uninstall

    Execute stop operation


  • upgrade

    Execute upgrade operation
    Workflow parameters:

    • node_instance_id :The ID of the node instance that needs upgrade.

    • config_json: The json object to override the current helm value.

    • chartVersion: Helm chart version.

    • chartRepo: Helm chart repo url.


  • rollback

    Execute rollback  operation
    Workflow parameters:

    • node_instance_id :The ID of the node instance that needs rollback.

    • revision: The revision number you want to rollack to. You can find the revision number in runtime property helm history.



  • status

    Execute status operation
    Workflow parameters:

Related content

OOM Helm (un)Deploy plugins
OOM Helm (un)Deploy plugins
More like this
K8S / helm basic commands for ONAP integration
K8S / helm basic commands for ONAP integration
More like this
Setup helm3 for oom
Setup helm3 for oom
More like this
Deploying vFw and EdgeXFoundry Services on Kubernets Cluster with ONAP
Deploying vFw and EdgeXFoundry Services on Kubernets Cluster with ONAP
More like this
The CLAMP Kubernetes Participant
The CLAMP Kubernetes Participant
More like this
MultiCloud K8s-Plugin-service API
MultiCloud K8s-Plugin-service API
More like this