From 09fd289ae80f41a3d98088facaa1477fcf418ca3 Mon Sep 17 00:00:00 2001 From: Jack Lucas Date: Tue, 23 Mar 2021 10:25:15 -0400 Subject: Document DCAE microservice installation via Helm Add documentation about installation of DCAE microservices via Helm. Update ports/services table. Issue-ID: DCAEGEN2-2615 Signed-off-by: Jack Lucas Change-Id: Ib57973a8b138d50609d683460dc876bc3a2087c5 --- docs/sections/installation_oom.rst | 104 ++++++++++++++++++------------------- 1 file changed, 50 insertions(+), 54 deletions(-) (limited to 'docs') diff --git a/docs/sections/installation_oom.rst b/docs/sections/installation_oom.rst index 671919a2..c2701c88 100644 --- a/docs/sections/installation_oom.rst +++ b/docs/sections/installation_oom.rst @@ -21,11 +21,10 @@ At deployment time, with a single **helm deploy** command, Helm resolves all the and invokes Kubernetes deployment operations for all the resources. All ONAP Helm charts are organized under the **kubernetes** directory of the **OOM** project, where roughly each ONAP component occupies a subdirectory. -DCAE charts are placed under the **dcaegen2** directory. +DCAE platform components are deployed using Helm charts under the **dcaegen2** directory. +Four DCAE services (the HV VES collector, the VES collector, the PNF Registration Handler, and the TCA (Gen 2) analytics service) are deployed using Helm charts under the **dcaegen2-services** directory. -All DCAE platform components have corresponding Helm chart which will be used to trigger the deployment. -All DCAE Services are deployed through Cloudify Blueprint. The default ONAP DCAE deployment includes small subset of DCAE services deployed through Bootstrap pod to meet -ONAP Integration usecases. Optionally operators can deploy on-demand other MS required for their usecases as described in :doc:`On-demand MS Installation +Other DCAE Services are deployed on-demand, after ONAP/DCAE installation, through Cloudify Blueprints. Operators can deploy on-demand other MS required for their usecases as described in :doc:`On-demand MS Installation <./installation_MS_ondemand>`. @@ -51,9 +50,20 @@ The dcaegen2 chart has the following sub-charts: * ``dcae-policy-handler``: deploys the DCAE policy handler service. * ``dcae-redis``: deploys the DCAE Redis cluster. * ``dcae-dashboard``: deploys the DCAE Dashboard for managing DCAE microservices deployments -* ``dcae-servicechange-handler``: deploys the DCAE service change handler service. A subchart (``dcae-inventory-api``) deploys the DCAE inventory API service. +* ``dcae-servicechange-handler``: deploys the DCAE service change handler service. +* ``dcae-inventory-api``: deploys the DCAE inventory API service. * ``dcae-ves-openapi-manager``: deploys the DCAE service validator of VES_EVENT type artifacts from distributed services. +The dcaegen2-services chart has the following sub-charts: + +* ``dcae-hv-ves-collector``: deploys the DCAE High-Volume VES collector service. +* ``dcae-ms-healthcheck``: deploys a health check component that tests the health of the 4 DCAE services deployed via Helm. +* ``dcae-prh``: deploys the DCAE PNF Registration Handler service. +* ``dcae-tcagen2``: deploys the DCAE TCA analytics service. +* ``dcae-ves-collector``: deploys the DCAE VES collector service. + +The dcaegen2-services sub-charts depend on a set of common templates, found under the ``common`` subdirectory under ``dcaegen2-services``. + DCAE Deployment --------------- @@ -70,10 +80,11 @@ These include: * Deployment handler * Policy handler * Service change handler - * Inventory API service (launched as a subchart of service change handler) + * Inventory API service * Inventory postgres database service (launched as a dependency of the inventory API service) * DCAE postgres database service (launched as a dependency of the bootstrap service) * DCAE Redis cluster + * DCAE Mongo database service (launched as a dependency of the bootstrap service) * VES OpenAPI Manager Some of the DCAE subcharts include an initContainer that checks to see if @@ -87,7 +98,6 @@ directory, not as part of the DCAE chart hierarchy. The dcae-bootstrap service has a number of prerequisites because the subsequently deployed DCAE components depends on a number of resources having entered their normal operation state. DCAE bootstrap job will not start before these resources are ready. They are: - * dcae-cloudify-manager * consul-server * msb-discovery @@ -96,32 +106,10 @@ The dcae-bootstrap service has a number of prerequisites because the subsequentl * dcae-db * dcae-mongodb * dcae-inventory-api - + Additionaly tls-init-container invoked during component deployment relies on AAF to generate the required certificate hence AAF -must be enabled under OOM deployment configuration. - -Once started, the DCAE bootstrap service will call Cloudify Manager to deploy -a series of blueprints which specify the additional DCAE microservice components. -These blueprints use the DCAE Kubernetes plugin (``k8splugin``) to deploy -Docker images into the ONAP Kubernetes cluster. For each component, the plugin -creates a Kubernetes deployment and other Kubernetes resources (services, volumes, logging sidecar, etc.) -as needed. - -The DCAE bootstrap service creates the following Kubernetes deployments: - -* deploy/dep-dcae-hv-ves-collector -* deploy/dep-dcae-prh -* deploy/dep-dcae-tca-analytics -* deploy/dep-dcae-tcagen2 -* deploy/dep-dcae-ves-collector -* deploy/dep-holmes-engine-mgmt -* deploy/dep-holmes-rule-mgmt - -After deploying all of the blueprints, the DCAE bootstrap service -continues to run. The bootstrap container can be useful for -troubleshooting or for launching additional components. The bootstrap -container logs (accessed using the ``kubectl logs`` command) show the -details of all of the component deployments. +must be enabled under OOM deployment configuration. + DCAE Configuration ------------------ @@ -149,6 +137,9 @@ In addition, for DCAE components deployed through Cloudify Manager blueprints, t Now we walk through an example, how to configure the Docker image for the DCAE VESCollector, which is deployed by Cloudify Manager. +(*Note: Beginning with the Honolulu release, VESCollector is no longer deployed using Cloudify Manager. However, the example is still +useful for understanding how to deploy other components using a Cloudify blueprint.*) + In the `k8s-ves.yaml `_ blueprint, the Docker image to use is defined as an input parameter with a default value: .. code-block:: yaml @@ -156,7 +147,7 @@ In the `k8s-ves.yaml