Versions Compared

Key

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

...

This document covers  Test Deployment Environment and Test Case Result for  ELIOT IoT Gateway Blueprint. 

Akarino Test Group Information

The Test Environment consists of three topologies :

...

The number of nodes in the ELIOT Cluster remains same as Release 1.0 ;  one virtual machine  node for ELIOT Manager and one Virtual Node for ELIOT Edge Node (IoT Gateway)

The changes include testing of the new software included in the ELIOT Platform Stack.

Akarino Test Group Information

Not Applicable

Overall Test Architecture

ELIOT topology with Kubernetes Cluster.
ELIOT Manager and single ELIOT Edge Node are installed VM having Ubuntu 16.04.

In ELIOT Manager the setup.sh is executed which internally installs docker ,k8s and tests k8s deployment by deploying nginx on ELIOT Edge Node

ELIOT topology with KubeEdge

ELIOT Manager and single ELIOT Edge Node are installed VM having Ubuntu 16.04.

In ELIOT Manager Docker, K8S , KubeEdge-EdgeController is installed and in ELIOT Edge Docker and KubeEdge-EdgeCore is installed.

In the KubeEdge init command the nginx is deployed in ELIOT - Edge Core.Cluster Number of Nodes remains same as Release 1.0

  • One Node for ELIOT Manager.
  • One Node for ELIOT Edge Node.

Both the nodes are running on Virtual Machine.

In Release 1.0 the Test Environments were :-

  • ELIOT Cluster with Kubernetes  on Ubuntu OS.
  • ELIOT Cluster  with KubeEdge on Ubuntu OS

In Release 2.0 the Test Environments are :-

  • ELIOT Cluster with Kubernetes  + EdgeX Platform on Ubuntu OS.
  • ELIOT Cluster with Kubernetes  + OPC-UA on Tailored OS
  • ELIOT Cluster with KubeEdge  on Cent OS

Traffic Generator

N/A

Test API description

Some test cases are re-used from Release 1.0 . Test cases are marked as inherited from Release 1.0 and New Test Cases.

1.  Deployment Type 1 Test Environment

ELIOT Cluster Deployment with Kubernetes + EdgeX Platform on Ubuntu OS

1.1 ELIOT Platform Test

Test Case 1: NGINX deployment verification.

(Inherited from Release 1.0)

Test inputs:

Execute the bootstrap script to setup the ELIOT platform.  The bootstrap script internally invokes verifyk8s.sh script. 

verifyk8s.sh script check if the nginx pod is deployed and running in the ELIOT Cluster. If not returns non zero value.

Test Procedure

The setup.sh script will deploy nginx pod in the ELIOT Edge Node after Kubernetes Installation.

Manual Check : execute kubectl get pods

Expected output

It will check nginx deployment and result the details in the log. If the nginx pod is not in running state after 10 retry setup.sh script will return value 1.

(CI Job fails if the return value is 1)

Test Results

root@akraino-slave-0001:~# kubectl get pods

NAME READY STATUS RESTARTS AGE

nginx-deployment-74d48dbfb8-kvx9q 1/1 Running 0 18h

Test Case 2 : Test Kubernetes cluster, EdgeX Platform  Check.

(New Test Case)

Test Input :

Execute the bootstrap script to setup the ELIOT Platform.

Test Procedure:

root@akraino-slave-001:-# cd eliot/blueprints/iotgateway/script

...

NAME                                                                                           READY                         READY                     STATUS                                 RESTARTS           AGE               IP                                            NODE                                    NOMINATED            NODE READINESS GATES

edgex-config-seed                                                                    0/1                          1                         Completed                                      0                    26h          192.168.53.74                  akraino-slave-0002                      <none>                  <none>

edgex-core-command-5fb859467f-dkbkw                        1/1                           1                         Running                                            0                   26h          192.168.53.69                 akraino-slave-0002                       <none>                  <none>

edgex-core-consul-5b6b5c7567-jlpqz                             jlpqz                              1/1                           1                         Running                                            0                   26h          192.168.53.76                 akraino-slave-0002                       <none>                 <none>

edgex-core-data-67b9677944-zp7tt                                1/1                            Running                                            0                   26h          192.168.53.72                akraino-slave-0002                       <none>                <none>

edgex-core-metadata-57f7fb45f8-nzsgq                       nzsgq                        1/1                              Running                                             0                   26h          192.168.53.73                akraino-slave-0002                      <none>                <none>

edgex-device-virtual-59674ffc4c-vrz7b                             1/1                           Running                                             1                   26h           192.168.53.77               akraino-slave-0002                       <none>               <none>

edgex-export-client-578c48cc87-m92nl                             1/1                           Running                                             0                   26h           192.168.53.70               akraino-slave-0003                       <none>                  <none>

edgex-export-distro-66c679875d-2hhb2                       1/1                           1                          Running                                             0                   26h           192.168.53.71                akraino-slave-0003                      <none>                 <none>

edgex-mongo-676d599f54-kzp87                                        1/1                           1                          Running                                             0                   26h           192.168.53.80                akraino-slave-0003                      <none>                  <none>

edgex-support-logging-696ff8d9fc-5hbn2                    1/1                           1                          Running                                             0                   26h           192.168.53.81                 akraino-slave-0003                     <none>                  <none>

edgex-support-notifications-86577b7b57-7xwsc      7xwsc       1/1                           1                          Running                                              0                   26h           192.168.53.75                akraino-slave-0003                      <none>                  <none>

edgex-support-rulesengine-6b5765d57f-q8bf8          1/1                           1                          Running                                              1                   26h           192.168.53.79                akraino-slave-0003                     <none>                   <none>

edgex-support-scheduler-bc8f4fd6-42bbj                     1/1                           1                          Running                                              0                   26h           192.168.53.78                akraino-slave-0003                      <none>                  <none>

Test Case 2: NGINX deployment verification.

The Test inputs

There should be a nginx.yaml configuration files which is used for deploying the Nginx on ELIOT Edge Node.

Test Procedure

The setup.sh script will deploy nginx server in the ELIOT Edge Node after Kubernetes Installation.

Expected output

It will check nginx deployment and result the details in the log.

Test Results

root@akraino-slave-0001:~# kubectl get pods

NAME                                                              READY    STATUS     RESTARTS AGE

nginx-deployment-74d48dbfb8-kvx9q 1/1       Running           0            18h


CI/CD Logs:

Nexus Repo Path:-

https://nexus.akraino.org/content/sites/logs/huawei/blueprints/iotgateway/job/eliot-iotgateway-deploy-k8s-virtual-daily-master/221/

1.2 Conformance Test:

(New Test Case)

Test Execution Step :

Blu-Val Validation test suite Kubernetes conformance test case is executed on ELIOT Platform

...

https://nexus.akraino.org/content/sites/logs/huawei/blu-val/job/eliot-deploy-virtual-daily-master-validation/13/

2. Deployment Type 2 Test Environment

ELIOT Deployment Cluster with Kubernetes + OPC-UA on Tailored OS.

2.1 ELIOT Platform Test

Test Case

...

: Test Kubernetes cluster & OPC_UA Platform  Check.

(Inherited from Release 1.0)

Test Input :

Execute the bootstrap script to setup the ELIOT Platform

...

https://nexus.akraino.org/content/sites/logs/huawei/blueprints/iotgateway/job/eliot-deploy-iotgateway-minimal-os-virtual-daily-master/65/

3. Deployment Type 3 Test Environment

ELIOT Deployment  with KubeEdge on CentOS .

3.1 ELIOT Platform Test

Test Case : Test KubeEdge Deployment.

Test Input :

Execute the kubeedge setup script kubeedge_setup.sh script to setup the ELIOT Platform with KubeEdge

Test Procedure:

There is no test script for this deployment, only Manual Testing

Manual Test Steps:

1.  After the kubeedge_setup.sh script execution is complete check in the ELIOT Manager whether edgecontroller process status.

ps -eaf | grep edgecontroller

2. In ELIOT Edge Node check if edge_core process status.

ps -eaf | grep edge_core


CI/CD Logs:

Nexus Repository URL :

...