CNCF Day: Cloud Native VNF Development (Sponsored by Red Hat and Intel)
Tuesday, June 13
9:00 - 18:00
The promise of NFV is to be able to manage core telco applications with the agility and scale of the cloud. However, it is not obvious how to convert a legacy application into a "Cloud Native" application. How do you take a traditional monolithic VNF, and incrementally change it to take advantage of the flexibility of OpenStack? This one-day workshop will take you on a hero's journey, from monolith to cloud native container VNF, with practical advice from experts who have walked this path.
9:00 - 18:00
|Start Time||End Time||Topic/title||Details||Speaker|
|9:00 AM||9:45 AM||Automating the Deployment of Legacy VNFs with Ansible||The first step on the journey to Cloud Native is to have a reproducible, automated deployment of your application to all environments. Using Ansible, we will see how to reproduce the deployment of an application, and extract configuration to enable deployment from the same source repository for different deployment types (production, QE, development).
We will see how to treat the provisioning of new infrastructure in the same way as provisioning code, to allow you to begin taking advantage of the cloud, and hear about some of the advantages of automated deployments, including reduced time for deployments, easier onboarding for new developers, and consistency across test, dev, pre-prod, and production environments.
|Daniel Farrell (Red Hat)|
|9:50 AM||10:35 AM||Monitoring Cloud Applications||
One of the key aspects of cloud applications is that your applications must be resilient to failure in the underlying platform. And one of the key aspects of resiliency is to be aware of when something goes wrong.
Where traditional system monitoring assumes that servers will not appear and disappear randomly, and capacity grows slowly over time, monitoring of cloud applications requires the ability to register and unregister host instances frequently, and to understand the underlying structure of the application across load balanced clusters.
This presentation will cover all that you need to know about monitoring your cloud applications throughout tier lifecycle.
|Wilson Lai (Dynatrace)|
|10:40 AM||10:55 AM||MORNING BREAK|
|10:55 AM||11:40 AM||Scaling Out Legacy Applications - Best Practices for Componentization||
One of the most labor-intensive parts of moving a monolithic application to a componentized microservice architecture is breaking out significant functions and providing them as microservices to the application as a while.
This presentation will cover common strategies for breaking out services which can typically run on a different instance, like log aggregation, object and query caching, database services, reverse proxy cache, and so on. We will also cover best practices for identifying parts of a larger application which can be broken out to their own microservice, and how to manage this migration through refactoring.
To show these practices, we will use a sample VNF of a VoIP server which we will take from a monolithic application to a scale-out application managed by Kubernetes.
|Doug Smith (Red Hat)|
|11:45 AM||12:30 PM||Management of State in a Cloud Application||
One of the core tenets of the cloud is that you want to separate stateful from stateless components as much as possible. For many NFV applications, this is easier said than done. Applications like EPC are inherently stateful, and can also have latency requirements which require data proximity to control functions.
This presentation will cover the various options you have for extracting state from your application, including object storage, distributed data stores or in-memory databases, and handling the inherent state of an application with some redundancy and fast recovery.
The presenter will share his experience with examples from the migration of a traditional EPC application to a cloud-native vEPC which can be run on a container management platform.
|Dejan Leskaroski (Affirmed Networks)|
|12:30 PM||1:30 PM||LUNCH|
|1:30 PM||2:15 PM||The Deployment Production Line: Setting up a CI and CD Pipeline||* Integration of testing
* One-click builds
* Managing upgrades
* A/B testing, red/green builds, canary testing...
|Doug Smith, Tomofumi Hayashi (Red Hat)|
|2:20 PM||3:05 PM||Telemetry, Fault management, and Service Assurance for Cloud-Native VNFs||
Maintaining service levels appropriate for telco in applications requires more than just monitoring your application. The operator also needs to gather telemetry from the underlying host platform, and be able to correlate events from the host platform to events in the guests.
Managing applications for NFV requires fault management, which requires very good data about the state of the platform and the applications running on top of it.
We will introduce the basics of a fault management framework for NFV, and why VNF developers should care about it. We will cover the gathering of low-level telemetry using collected, aggregating logs using fluent, and publishing VNF events to a VNF event stream. We will also explain how to use Doctor to mitigate faults which are detected from the event stream.
Tomofumi Hayash (Red Hat)
Ryota Mibu (NEC)
|3:10 PM||3:25 PM||AFTERNOON BREAK|
|3:25 PM||4:10 PM||Integrating With an NFV management Platform for VNF Developers||
A management and orchestration platform like ONAP offers a large number of services to operators who are running a production NFV environment. Onboarding VNFs quickly and easily, defining fault management policy for VNFs, and creating network services consisting of multiple VNFs, are services that are vital to effectively run VNFs in production.
This presentation will give an overview of the ONAP platform, and explain how VNF vendors can integrate with the platform to be effectively managed throughout their lifecycle.
|Lingli Deng (China Mobile, OPEN-O, ONAP)
|4:15 PM||5:00 PM||Application Orchestration with Kubernetes||When moving from VM based applications to container based applications, there are a number of things which change in the application is developed and managed. This presentation will cover all aspects of deploying an application on a Kubernetes-based container management platform, including packaging applications for deployment, satisfying performance constraints of NFV applications, and the ways in which container management platforms can provide services which make the development and management of cloud native applications easier.||Glenn West (Red Hat)|
|5:05 PM||5:50 PM||Telco Requirements for Container Orchestration of VNFs||In this presentation, I will present the work of the OpenRetriever project, including the containerization of multiple VNFs, and the lessons learned in this process. We will present test results from running a containerized vEPC managed by Kubernetes, the acceleration of dataplane traffic for containers using SR-IOV and DPDK acceleration, telco specific requirements for Kubernetes, and lessons learned from designing VNFs including vIMS and vEPC as microservice applications.||Jia Xuan (China Mobile)|