Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

cmti CA  Wei Chen Deepak Kataria

Introduction

REC Blueprint is deployed and validated in Nokia Espoo and AT&T Middletown Radio Edge Cloud Validation Labs. Deployment of REC and test cases have been run automatically with different clusters such as Nokia OpenEdge, Dell and HP Gen 10. REC feature testing is based on Cloud TAF (Test Automation Framework), which tests basic k8s features. Results of deployments and testing are publicly available in LF Akraino nexus servers.

Overall Test Architecture

Test Bed

Five server cluster with REC software, as described in PCEI Validation Lab

Test Framework

Cloud TAF, robot based test framework for REC https://gerrit.akraino.org/r/gitweb?p=ta%2Fcloudtaf.git;a=summary Note that this Gerrit link is authoritative. In the event of discrepancies between this wiki page and Gerrit, Gerrit is correct. There is no mechanism for automatically updating this wiki page when tests are added to the test suite and no commitment on the part of the developers to do double entry of test cases. The testcases are located in *.robot files in the aptly named "testcases" subdirectory of the cloudtaf repository. The Jenkins servers clone the cloudtaf repo from Gerrit and run whatever tests are contained in it at that time.

Traffic Generator

N/A

Test API description

Test suites:

  • post-install (8 test cases)
  • kube-namespace (1 test case)
  • kube-service (1 test case)
  • smoke-tests (6 test cases)
  • pm-supports (2 test cases)

Test cases:

...

Verify Deployment

...

Check deployment logs (/srv/deployment/log/bootstrap.log). Looking for “Installation complete, Installation Succeeded” in log.

...

Verify Image Build Number

...

Show Build number.

...

Verify Docker Version

...

Check version of the installed docker (needed Docker version 19.03.3)

...

Verify Kubernetes Clusters

...

Check pods’ status in kube-system namespace. All pod needs to be in “Running” state.

...

Verify State of required services

...

Check the services are running and active.

Checked services: docker.service, kubelet.service

...

Verify Node Functionality

...

Checks the state of the nodes. All nodes need to be in “Ready” state.

...

Verify Package Manager Status

...

Try to pull caas/hypercube from common(?) repository. Verify the pull is in success and image is up to date.

...

Verify Helm Caas Infra Status

...

Check helm status. Caas-infra helm chart execution status needs to be “DEPLOYED”

...

Verify creating and testing Namespaces

...

Create “test-ns” namespace. Create a pod from nginx image in test-ns namespace. Verify the pod is created. Check the pod is created in test-ns namespace. Delete the created pod and namespace.

...

Create pod from nginx image. Create a service what contains the previously created pod, and targets TCP port 80 to the pod’s TCP port 80.  Verify that the nginx is reachable on TCP port 80. Delete the created service and pod.

...

Verify Cluster Config Management

...

Verify Cluster Config Management After Reboot Management VIP Node

...

Reboot the VIP(?) node. Verify the restart same as ‘Verify Cluster Config Management’ test case.

...

Verify Database Stop And Start

...

Stop one of the databases. Check database: cluster size needs to be 2.

Start a database node. Check database: cluster size needs to be 3.

...

Verify Create All And No Roles

...

Create a user with all-roles.

Create a user with no roles.

...

Verify SudoShells

...

Verify all the sudo-“node” user. All need to be root user.

...

Verify Remotescript Default

...

Verify ‘remotescript-default’ command execution.

...

PM001

...

Check resource usage of the nodes (kubectl top node).

...

PM002

...

Check kubectl api metrics (kubectl api-versions | grep metrics). Printout needs to be contain “custom.metrics.k8s.io/v1beta1” and “metrics.k8s.io/v1beta1”.

Test execution logs: https://nexus.akraino.org/content/sites/logs/att/job/Cloudtaf_test_suite_Middletown_OE1/ or https://nexus.akraino.org/content/sites/logs/nokia/job/Cloudtaf_test_suite_Espoo_OE/

The Public Cloud Edge Interface (PCEI) blueprint family is to specify a standard set of APIs to expose towards Public Cloud Service Provider instances at the Edge. In this document, we will give an overview about PCEI testing done in CI/CD.

Testing of the PCEI is done in CI/CD using the validation labs described here.

Test description

Due to the time constraint for Release 3, we are not able to execute an end-to-end test for validation. For now the tests are against a few selected location APIs to be exposed on a PCEI enabler, and therefore the hardware requirement is minimal: a physical server or VM running with 4GB RAM, 16GB storage. The validation of the PCEI project in CI/CD consists in several steps:

  1. Manually deploy the PCEI docker image on a pre-installed Ubuntu server or VM
  2. Run the validation tests against the exposed APIs by the PCEI docker image


1. Manual deployment test

The deployment is done by following the instructions per the PCEI installation guide

Expected output

The script will get the information from the service URL for hosting the APIs. Just as follows:

wget -O /dev/null "http://serviceIP:servicePort"

Test Results

2. API Test

Enabling this step is still in progress for Release

3. Test Procedure

The tests are ran using the Akraino Blueprint Validation project procedure, by calling the Bluval Jenkins job

Expected output

All tests pass


Test Dashboards

Single pane view of how the test score looks like for the Blue print.

181818

Total Tests

Test Executed

Pass

Fail

In Progress

22100

Additional Testing

ORAN RIC applications are installed after each REC deployment using Jenkins and results are pushed to LF nexus https://nexus.akraino.org/content/sites/logs/att/job/Install_RIC_on_OpenEdge1/

...

1