This directory provides a way to reproduce chained vnf vs cnf testing results.
- Using Equinix Metal for bare metal provisioning
- Minimal user prerequisite software (ssh,git,docker)
- Minimal scripted steps to setup, execute tests and destroy
- Hand altering of BIOS and GRUB for quad port Intel NIC's
- Openstack version
- Openstack installation details?
- K8s version
The Kubernetes and Openstack clusters will have 2-3 machines which run the network functions.
Specs at a glance:
- CPU: Dual socket Xeon Gold 5120 (2.2Ghz)
- Cores: 24 per CPU (48 total)
- Memory: 384 GB of DDR4 ECC
- Storage: 3.2 TB of NVMe Flash
- NIC: Quad port Intel x710
The system hardware configuration is based on the m2.xlarge.x86 server from Equinix Metal.
The default dual port Mellanox ConnectX-4 NIC has been replaced by quad port Intel x710 NIC.. The NIC ports are connected to 10GbE ports on the top-of-rack switches.
Caveats:
- As of 12/18 the Quad port Intel NIC is not publically available. It should become publically available in Q1/19.**
- Some custom BIOS changes will be needed for Quad port Intel
- This documentation assumes you have an Equinix Metal account.
CNCF is not responsible for any charges on your Equinix Metal account. Please verify that all servers are deleted when your testing is completed via the Equinix Metal Console
-
Install prereq software on your desktop machine
-
Create Equinix Metal account
-
Create Equinix Metal account setup variables
- preserve your project ID UUID in
- create and preserve project-specific api key
- add your personal ssh key
-
Setup environment (dual mellanox test)
- Clone the test repository
- Change into the test directory
- create global environment file from template
- edit global.env file with Equinix Metal details
- load environment variables
git clone --depth 1 git@github.com:cncf/cnfs.git cd cnfs/comparison/kubecon18-chained_nf_test cp template.env global.env emacs global.env . ./global.env
-
Kubernetes deploy and test execution
- Build k8s cluster on Equinix Metal
- Equinix Metal Layer 2 setup
- Execute k8s test
./deploy_k8s_test_case ./????packet_l2_setup ./run_k8s_test_case
- Openstack deploy and test execution
- Build Openstack cluster on Equinix Metal
- Equinix Metal Layer 2 setup
- Execute Openstack test
./deploy_openstack_test_case ./????packet_l2_setup ./run_openstack_test_case ``