diff options
author | Eric Multanen <eric.w.multanen@intel.com> | 2020-07-01 23:30:49 -0700 |
---|---|---|
committer | Eric Multanen <eric.w.multanen@intel.com> | 2020-07-08 13:36:34 -0700 |
commit | e06b947b03c3fcce2c954feb68890a519c7740c3 (patch) | |
tree | 5617b570ea85bf07dd76c6410975059acc23cc70 /kud | |
parent | a43096cbdca3fdabeda3d404bedadd7a7272a3c2 (diff) |
Adds composite app status update and query
This patch provides the basic framework for supporting
monitoring of composite application resources in clusters.
1. Updates to the monitor files for use with v2.
2. Invokes the Watcher process per cluster/app when the
app is instantiated.
3. Adds a ResourceBundleState CR resource to the cluster/app
so that monitor will be able to update status to it.
4. Watcher updates appropriate appcontext status object
when updates are made in clusters by monitor
5. Update appcontext library to define a status handle
and object at the app/cluster level
6. Labels resources with an appropriate tracking label
to coordinate with the ResourceBundleState CR
Issue-ID: MULTICLOUD-1042
Signed-off-by: Eric Multanen <eric.w.multanen@intel.com>
Change-Id: If007c1fd86ca7a65bb941d1776cfd2d3afed766b
Diffstat (limited to 'kud')
-rw-r--r-- | kud/tests/README-composite-vfw.txt | 24 | ||||
-rw-r--r-- | kud/tests/cleanup-composite-vfw.sh | 21 | ||||
-rwxr-xr-x[-rw-r--r--] | kud/tests/vfw-test-clean-cluster.sh | 11 | ||||
-rwxr-xr-x | kud/tests/vfw-test.sh | 6 |
4 files changed, 40 insertions, 22 deletions
diff --git a/kud/tests/README-composite-vfw.txt b/kud/tests/README-composite-vfw.txt index d2018c09..3f334a25 100644 --- a/kud/tests/README-composite-vfw.txt +++ b/kud/tests/README-composite-vfw.txt @@ -7,7 +7,29 @@ As written, the vfw-test.sh script assumes 3 clusters The edge cluster in which vFW will be instantiated should be KUD clusters. -# Preparations +# Edge cluster preparation + +For status monitoring support, the 'monitor' docker image must be built and +deployed. + +In multicloud-k8s repo: + cd multicloud-k8s/src/monitor + docker build -f build/Dockerfile . -t monitor + <tag and push docker image to dockerhub ...> + +Deploy monitor program in each cluster (assumes multicloud-k8s repo is present in cloud) + # one time setup per cluster - install the CRD + cd multicloud-k8s/src/monitor/deploy/crds + kubectl apply -f crds/k8splugin_v1alpha1_resourcebundlestate_crd.yaml + + # one time setup per cluster + # update yaml files with correct image + # (cleanup first, if monitor was already installed - see monitor-cleanup.sh) + cd multicloud-k8s/src/monitor/deploy + monitor-deploy.sh + + +# Preparation of the vFW Composit Application ## Prepare the Composite vFW Application Charts and Profiles diff --git a/kud/tests/cleanup-composite-vfw.sh b/kud/tests/cleanup-composite-vfw.sh deleted file mode 100644 index 7f96e8ac..00000000 --- a/kud/tests/cleanup-composite-vfw.sh +++ /dev/null @@ -1,21 +0,0 @@ -# To clean up composite vfw demo resources in a cluster -kubectl -n onap4k8s delete deployment clm -kubectl -n onap4k8s delete deployment orchestrator -kubectl -n onap4k8s delete deployment ncm -kubectl -n onap4k8s delete deployment ovnaction -kubectl -n onap4k8s delete deployment rsync -kubectl -n onap4k8s delete service clm -kubectl -n onap4k8s delete service orchestrator -kubectl -n onap4k8s delete service ncm -kubectl -n onap4k8s delete service ovnaction -kubectl -n onap4k8s delete service rsync -kubectl -n onap4k8s delete configmap clm -kubectl -n onap4k8s delete configmap orchestrator -kubectl -n onap4k8s delete configmap ncm -kubectl -n onap4k8s delete configmap ovnaction -kubectl -n onap4k8s delete configmap rsync - -# delete the networks -kubectl delete network protected-private-net -kubectl delete providernetwork emco-private-net -kubectl delete providernetwork unprotected-private-net diff --git a/kud/tests/vfw-test-clean-cluster.sh b/kud/tests/vfw-test-clean-cluster.sh index 3d386466..153924ca 100644..100755 --- a/kud/tests/vfw-test-clean-cluster.sh +++ b/kud/tests/vfw-test-clean-cluster.sh @@ -1,6 +1,17 @@ +#!/bin/bash + +# script to delete vfw resources (until terminate is completed) kubectl delete deploy fw0-packetgen kubectl delete deploy fw0-firewall kubectl delete deploy fw0-sink kubectl delete service packetgen-service kubectl delete service sink-service kubectl delete configmap sink-configmap + +kubectl delete network protected-private-net +kubectl delete providernetwork emco-private-net +kubectl delete providernetwork unprotected-private-net + +for i in `kubectl get resourcebundlestate --template '{{range .items}}{{.metadata.name}}{{"\n"}}{{end}}'`; do + kubectl delete resourcebundlestate $i +done diff --git a/kud/tests/vfw-test.sh b/kud/tests/vfw-test.sh index 2bdddcd7..9c431ef0 100755 --- a/kud/tests/vfw-test.sh +++ b/kud/tests/vfw-test.sh @@ -969,6 +969,9 @@ function instantiateVfw { call_api -d "{ }" "${base_url_orchestrator}/projects/${projectname}/composite-apps/${vfw_compositeapp_name}/${vfw_compositeapp_version}/deployment-intent-groups/${deployment_intent_group_name}/instantiate" } +function statusVfw { + call_api "${base_url_orchestrator}/projects/${projectname}/composite-apps/${vfw_compositeapp_name}/${vfw_compositeapp_version}/deployment-intent-groups/${deployment_intent_group_name}/status" +} function usage { echo "Usage: $0 create|get|delete|apply|terminate|instantiate" @@ -986,12 +989,14 @@ function usage { echo " delete - deletes all resources in ncm, ovnaction, clm resources created for vfw" echo " apply - applys the network intents - e.g. networks created in ncm" echo " instantiate - approves and instantiates the composite app via the generic deployment intent" + echo " status - get status of deployed resources" echo " terminate - remove the network inents created by ncm" echo "" echo " a reasonable test sequence:" echo " 1. create" echo " 2. apply" echo " 3. instantiate" + echo " 4. status" exit } @@ -1050,5 +1055,6 @@ case "$1" in "apply" ) applyNcmData ;; "terminate" ) terminateNcmData ;; "instantiate" ) instantiateVfw ;; + "status" ) statusVfw ;; *) usage ;; esac |