Repository navigation
Testing
This test plan focuses on testing the horizontal scalability of the Express project when deployed on a Kubernetes cluster. It supports the following objectives.
- To
This test plan was created to evaluate the ability
Four physical or virtual machines with identical hardware specifications are required to run the Kubernetes cluster. Each machine must have a minimum of 2 GB of RAM and the following minimum CPU requirements.
- 2 AWS vCPU
- 2 GCP Core
- 2 Azure vCore
- 2 Hyperthread on a bare-metal Intel processor with Hyperthreading
A single physical or virtual test machine is required to run the tests and interface with the Kubernetes cluster. It is recommended that the machine's CPU is at minimum an Intel Core i5-3330 or equivalent.
The test machine must be able to communicate with the four physical machines over a public or private network using HTTP.
The four machines must meet the following software requirements.
- Kubernetes cluster. A Kubernetes cluster running version 1.8.5 must be deployed on the machines. Documentation on setting up a Kubernetes cluster can be found here.
-
Helm. The Helm server must be initialized on the Kubernetes cluster using the
helm initcommand after installing the Helm client and kubectl on the single test machine.
The single test machine must meet the following software requirements.
- kubectl. kubectl must be installed to interface with the Kubernetes cluster. Documentation on setting up kubectl can be found here.
- Helm. The Helm client must be installed. Documentation on setting up the Helm client can be found here.
- Python 3.0.
For executing the tests, Kubernetes Engine on the Google Cloud Platform was utilized. Four Compute Engine VM instances with 2 GCP Cores and 4 GB of RAM were used. The cluster was setup to use Kubernetes v1.8.5. in the us-central1-a zone.