cncf / cnf-testbed

ARCHIVED: 🧪🛏️Cloud-native Network Function (CNF) Testbed --> See LFN Cloud Native Telecom Initiative https://wiki.lfnetworking.org/pages/viewpage.action?pageId=113213592
https://wiki.lfnetworking.org/pages/viewpage.action?pageId=113213592
Apache License 2.0
163 stars 51 forks source link

Summary and overview of Kubecon Seattle CNF-VNF comparison plan implementation #105

Closed taylor closed 6 years ago

taylor commented 6 years ago

Need an overview of the VNF to CNF comparison plan for Kubecon Seattle

taylor commented 6 years ago

Test bed summary for KubeCon CNF/VNF performance comparison

The comparison test bed includes multi-node HA clusters for Kubernetes and OpenStack running chained dataplane CNF and VNFs for performance comparison testing. All software is open source. The entire test bed and comparison results can be recreated by following step-by-step documentation on the CLI with a Packet.net account.

Each test bed will consist of 6 physical machines for each platform - OpenStack and Kubernetes.- OpenStack - 2 controllers and 3 compute nodes

Provisioning and deployment of K8s and OpenStack clusters includes use of cross-cloud, Terraform, Ansible, and Kitchen/Chef. Network functions primarily use VPP and performance testing is done with NFVbench.

Provisioning and deployment

For the Kubernetes test bed, cross-cloud provisions the Packet.net machines and bootstraps K8s. Ansible installs additional host software and configures the host for worker nodes optimal performance as well as the setting up the VPP vSwitch. The Layer-2 network is setup using the packet.net API and host network configuration with Ansible. The CNFs are deployed to the K8s cluster using Helm.

For the OpenStack test bed, terraform provisions the Packet.net machines and then Knife/Chef is used to deploy the OpenStack software. The same Ansible code used for the K8s cluster configured the OpenStack compute node host system for optimal performance as well as the setting up the VPP vSwitch. The Layer-2 network is setup using the packet.net API and host network configuration with Ansible. The VNFs are deployed to the OpenStack cluster using Heat.

Performance tests scenarios are created and orchestrated with NFVbench with packet generation coming from TRex.

Highlights of software:

Software used to provision and deploy the OpenStack cluster

Software used to provision and deploy the Kubernetes cluster

Software used for Packet Generator system

Network Function software: