Introduction
This document covers both Integrated Edge Cloud Type 1 & 2.
Integrated Edge Cloud (IEC) is an important part of Akraino project. It focuses on the multi-archtecture based solution on the Edge and Cloud computing areas. In this document, we will give a brief introduction about IEC test on itframework.
This document is divided into 3 parts. At first, we will introduce the basic infrastructure about our test framework. Secondly, we will introduce some test cases about IEC environments and user cases. Finally, we will give our testing result about it.
...
Currently, 2 or 3 virtual hosts will be are deployed on arm64 platform by fuel (compass or fuel ) tools. For all the baremetal server on which will be deployed virtual hosts, it servers, those must meet those hardware and software requirements. In addition, the Internet is essential for the CI platform.
Hardware Information:
CPU |
Architecture | Memory | Hard disk | Network |
Arm64 | At least 16G | 500G | 1Gbps (Internet essential) |
Software Information:
kubectl | kubeadm | Kubelet | Kubenetes-cni | Docker-ce | Calico | OS |
1.13.0 | 1.13.0 | 1.13.0 | 0.6.0 | 18.06.1~ce | V3.3 | Ubuntu 16.04 |
Overall Test Architecture
The following picture describes the overall testing environment deployed by Compass/Fuel tools. For the whole environment, there are some several virtual hosts which will be deployed on baremetal host. One is jumper host which is used for running the k8s deployment scripts. Others are K8s nodes which will be deployed K8s with Calico. For each of virtual host, there are 2 NICs with 1Gbps, one is for Internet, the other is for internal connection. The specific information please reference:
...
The IEC project tests can be divided into 2 parts. The first part is about IEC platform tests which is used for testing the basic function of Kubernetes and Container Networking interface (CNI). And the second part is Feature tests which is about IEC functional test for verifying IEC user cases, just like SEBA and other user cases.
Platform tests
In IEC project, there are 2 cases in Platform test. One is about service deployment test by Nginx serverfor verifying the basic K8s network function and deployment function end to end. The other is the K8s smoke check for checking K8s environments.
Deployment case
This test will verify the K8s basic function by deploying a simple Nginx server. By deploying a simple When Nginx server , it could check the basic server function and network function of Kubernetes.And you can manually start it from iec/src/foundation/scripts/nginx.sh scripts shellwas deployed, the test will verify the reply which is getted from Nginx server for checking the basic function of K8s. And it can be started by shell scripts nginx.sh.
The Test inputs
There should be a nginx.yaml configuration files which is used for deploying the Nginx pods.
...
The test is completed by a script which located at iec project. At first, the program will start a Nginx server based on nginx.yaml file. After the status of Nginx pods are OK, it will send a wget "get" request to the Nginx server port for getting the reply. If there is a reply, it will be checked automaticly and restored in local database. At last, all the resources about it Nginx will be deleted by "kubectl delete" command.
Expected output
The script will get the information from the Nginx service IP for checking. Just as follows:
wget -O /dev/null "http://serviceIP"
...
The feature tests are still going on developing now.
Test Step:
All the test cases has been integrated into IEC projects. You can start those tests by simple scripts on K8s-master node just as follows.
# source src/foundation/scripts/functest.sh <master-ip> #Functest case # source src/foundation/scripts/nginx.sh #Nginx case |
---|
Test Dashboards
Single pane view of how the test score looks like for the Blue print.
...