Enhancing Hypervisor and Cloud Solutions Using Embedded Linux Iisko Lappalainen MontaVista



Similar documents
SDN software switch Lagopus and NFV enabled software node

Real-Time KVM for the Masses Unrestricted Siemens AG All rights reserved

Software Defined Network (SDN)

KVM Architecture Overview

KVM, OpenStack, and the Open Cloud

Programmable Networking with Open vswitch

An Introduction to Service Containers

State of the Art Cloud Infrastructure

RCL: Design and Open Specification

Global Headquarters: 5 Speen Street Framingham, MA USA P F

Outline. Why Neutron? What is Neutron? API Abstractions Plugin Architecture

KVM, OpenStack, and the Open Cloud

HRG Assessment: Stratus everrun Enterprise

High Performance OpenStack Cloud. Eli Karpilovski Cloud Advisory Council Chairman

Operating Systems Virtualization mechanisms

NEC s Carrier-Grade Cloud Platform

Virtualization, SDN and NFV

Assessing the Performance of Virtualization Technologies for NFV: a Preliminary Benchmarking

Windows Server 2012 Hyper-V Virtual Switch Extension Software UNIVERGE PF1000 Overview. IT Network Global Solutions Division UNIVERGE Support Center

Linux KVM Virtual Traffic Monitoring

SDN/Virtualization and Cloud Computing

How Linux kernel enables MidoNet s overlay networks for virtualized environments. LinuxTag Berlin, May 2014

KVM in Embedded Requirements, Experiences, Open Challenges

Qualifying SDN/OpenFlow Enabled Networks

Networking for Caribbean Development

Network Virtualization Technologies and their Effect on Performance

SOFTWARE DEFINED NETWORKING

Beyond Virtualization: A Novel Software Architecture for Multi-Core SoCs. Jim Ready September 18, 2012

Real-Time Virtualization How Crazy Are We?

Optimizing Data Center Networks for Cloud Computing

Use Case Brief BUILDING A PRIVATE CLOUD PROVIDING PUBLIC CLOUD FUNCTIONALITY WITHIN THE SAFETY OF YOUR ORGANIZATION

Telecom - The technology behind

The QEMU/KVM Hypervisor

Cloud Networking Disruption with Software Defined Network Virtualization. Ali Khayam

RED HAT ENTERPRISE VIRTUALIZATION 3.0

RIDE THE SDN AND CLOUD WAVE WITH CONTRAIL

Open Source Networking for Cloud Data Centers

SOFTWARE-DEFINED NETWORKING AND OPENFLOW

Datacenter Operating Systems

Cloud Operating Systems for Servers

Building an Open, Adaptive & Responsive Data Center using OpenDaylight

Using SouthBound APIs to build an SDN Solution. Dan Mihai Dumitriu Midokura Feb 5 th, 2014

How Solace Message Routers Reduce the Cost of IT Infrastructure

Pluribus Netvisor Solution Brief

IO Visor Project Overview

Foundation for High-Performance, Open and Flexible Software and Services in the Carrier Network. Sandeep Shah Director, Systems Architecture EZchip

KVM: A Hypervisor for All Seasons. Avi Kivity avi@qumranet.com

Vyatta Network OS for Network Virtualization

A hypervisor approach with real-time support to the MIPS M5150 processor

Enabling Technologies for Distributed Computing

Microkernels, virtualization, exokernels. Tutorial 1 CSC469

Optimize Server Virtualization with QLogic s 10GbE Secure SR-IOV

Enabling Database-as-a-Service (DBaaS) within Enterprises or Cloud Offerings

This presentation covers virtual application shared services supplied with IBM Workload Deployer version 3.1.

Virtual Hosting & Virtual Machines

Ryu SDN Framework What weʼ ve learned Where weʼ ll go

SDN Applications in Today s Data Center

Securing your Virtual Datacenter. Part 1: Preventing, Mitigating Privilege Escalation

The Role of Virtual Routers In Carrier Networks

How To Get The Most Out Of Redhat.Com

Network Functions Virtualization on top of Xen

Next Generation Now: Red Hat Enterprise Linux 6 Virtualization A Unique Cloud Approach. Jeff Ruby Channel Manager jruby@redhat.com

Yocto Meta-Virtualization Project

Software-Defined Networks Powered by VellOS

Cisco Application-Centric Infrastructure (ACI) and Linux Containers

ViSION Status Update. Dan Savu Stefan Stancu. D. Savu - CERN openlab

How To Make A Vpc More Secure With A Cloud Network Overlay (Network) On A Vlan) On An Openstack Vlan On A Server On A Network On A 2D (Vlan) (Vpn) On Your Vlan

Software Defined Networks Virtualized networks & SDN

Data Center Virtualization and Cloud QA Expertise

SDN_CDN Documentation

Virtualization. Pradipta De

Sistemi Operativi e Reti. Cloud Computing

Network Virtualization

Virtualization Technologies and Blackboard: The Future of Blackboard Software on Multi-Core Technologies

IPOP-TinCan: User-defined IP-over-P2P Virtual Private Networks

HAWAII TECH TALK SDN. Paul Deakin Field Systems Engineer

Enterprise-Class Virtualization with Open Source Technologies

KVM, OpenStack and the Open Cloud SUSECon November 2015

Network Virtualization: Delivering on the Promises of SDN. Bruce Davie, Principal Engineer

Cisco and Canonical: Cisco Network Virtualization Solution for Ubuntu OpenStack

Advanced Computer Networks. Network I/O Virtualization

A Look at the New Converged Data Center

COMPUTING. Centellis Virtualization Platform An open hardware and software platform for implementing virtualized applications

SDN v praxi overlay sítí pro OpenStack Daniel Prchal daniel.prchal@hpe.com

Simplifying Big Data Deployments in Cloud Environments with Mellanox Interconnects and QualiSystems Orchestration Solutions

OpenStack, OpenDaylight, and OPNFV. Chris Wright Chief Technologist Red Hat Feb 3, CHRIS WRIGHT OpenStack, SDN and NFV

SDN CENTRALIZED NETWORK COMMAND AND CONTROL

Software Defined Environments

With Red Hat Enterprise Virtualization, you can: Take advantage of existing people skills and investments

Network Virtualization

Virtualization System Vulnerability Discovery Framework. Speaker: Qinghao Tang Title:360 Marvel Team Leader

Ethernet-based Software Defined Network (SDN)

Evaluation and Characterization of NFV Infrastructure Solutions on HP Server Platforms

RCL: Software Prototype

High-performance vnic framework for hypervisor-based NFV with userspace vswitch Yoshihiro Nakajima, Hitoshi Masutani, Hirokazu Takahashi NTT Labs.

Transcription:

Enhancing Hypervisor and Cloud Solutions Using Embedded Linux Iisko Lappalainen MontaVista

Setting the Stage This presentation will discuss the usage of Linux as a base component of hypervisor components particularily in the context of creating a base for a cloud hosting framework. The basis for the discussion is formed by combining technologies like KVM/QEMU, OpenVSwitch, OpenFlow and OpenStack to form a technical base for the solution, and digging into particular problem areas to see where the experience from the embedded world can help in creating a more competent experience. The presentation also discusses the general characteristics of the above technologies to create an overview of the problem area. In particular the issues that are key to creating a competetive solution are the responsiveness and throughput of the system, the capability for providing logging and tracing facilities across the hypervisor and guest domains, the seamless integration of the components to provide stability and maintainability and providing a suitable level of security throughout the layers of SW in the system. 2

Agenda Key Components and Architecture Main Architecture OpenStack OpenvSwitch QEMU/KVM Virtualization Problems and Solutions Further Work on the Topic

Example Hypervisor Solution Architecture Carrier Grade Services (HA, Tracing, Logging, Security, CGL) Guest VM KVM/QEMU incl. HW acceleration OpenVSwitch Guest Container LXC OpenFlow OpenStack Management and Provisioning SW and Services OS layer and base services Hardware

QEMU and KVM hypervisor solutions At least it will be looking forward Features QEMU: Comprehensive architecture support X86, ARM, MIPS, PPC, etc QEMU: Support for particular board configurations QEMU :Live Migration of guests -based KVM: Integration with HW virtualization capabilities for x86, PPC, ARM Best support on x86 currently ARM seeing a lot of work currently

OpenVSwitch OpenVSwitch features Virtual switching ports and connection to physical switch HW Support for OpenFlow control Support for standards such NetFlow, sflow, SPAN What does it provide Facilitates live-migration Much easier to replicate state between hosts Abstraction API Similar interfaces to all switches accessed Performance

OpenFlow Software Defined Networking (SDN) means to separate the control plane from the data plane in network switches and routers to different components The expectation is that this leads to massively more scalable network infrastructure The initiative for the standardization of OpenFlow is being led by major end-users like Google and Facebook and not really the equipment vendors OpenFlow is split into target and controller domains API is in essence a adaptation layer Both types of OSS SW for Linux available

Open Stack Cloud Management OpenStack is a cloud management system that controls large pools of compute, storage, and networking resources throughout a datacenter, all managed through a dashboard that gives administrators control while empowering their users to provision resources through a web interface.

OpenStack OpenStack features Control APIs for managing VM images and setups Integration to multiple cloud subsystems User interface, dashboard OpenStack Components Quantum-network, Nova-compute, Keystone-identity Cinder-block storage, Swift-object storage Glance-image service Savanna-Hadoop service What does it provide OpenStack is a key higher-level components in our Cloud solution of today A Cloud Framework like Openstack is usually required in all real Cloud deployments

Agenda Key Components and Architecture Main Architecture OpenStack OpenvSwitch QEMU/KVM Virtualization Problems and Solutions Further Work on the Topic

Hypervisor Pain Points Real-time Latency Application Guest Network Throughput Tracing, Logging, Security functionality Memory Access Speed HW-independent acceleration API Guest VM KVM/QEMU incl. HW acceleration Kernel Layer Hardware PIC NIC Memory

Hypervisor Pain Points Security and Isolation Application Multi-OS support Tracing, Logging, Security functionality Forward portability HW-independent acceleration API Guest VM KVM/QEMU incl. HW acceleration Kernel Layer Hardware PIC NIC Memory

Hypervisor Pain Points Application Full-stack Management Interfaces Tracing, Logging, Security functionality HW-independent acceleration API Guest VM KVM/QEMU incl. HW acceleration Kernel Layer Hardware PIC NIC Memory Custom HW adaptation

Background: Real-Time / Context Switching Application 1) The interrupt event will enable a thread for running, usually invoking the host-side scheduler first Tracing, Logging, Security functionality Guest VM Scheduler KVM/QEMU 2) The scheduler in the guest-side will get activated to actually thread inside the guest domain 3) The application running in the thread will process the event Kernel Layer Hardware PIC Scheduler ISR NIC -> the critical components are the context switching time and the RT latency related to switching to the right thread

Use-case: Real-Time / Context Switching Tracing, Logging, Security functionality Video Stack Application Guest VM Scheduler KVM/QEMU 1) The streaming video protocol stack and endpoint have to process packets at a certain continuous rate to avoid dropping the connection or having low quality picture transfer 2) The application running the stack is dependant on the scheduling mechanism on the guest and host Kernel Layer Hardware PIC Scheduler ISR NIC 3) The timer interrupts are usually controlled by the HW and are used to control the timing, sometimes a network synchronized time source is used

Solution: Real-Time / Context Switching Video Stack Application 1) Enhance latency response by integrating Real-Time Linux to the hypervisor Tracing, Logging, Security functionality Scheduler Guest VM KVM/QEMU 2) Improve the context switching response by customizing the IPI interrupt handling for the VM guest Scheduler Kernel Layer ISR Hardware PIC NIC Page 16

Background: Network Throughput Tracing, Logging, Security functionality Kernel Layer Hardware Guest Network Throughput Host Network Throughput NIC Application Guest VM KVM/QEMU 1) The application inserts data into the OS mechanisms that control the HW packet transmission inside the guest VM 2) The network handler in the guest OS will feed the data to the virtual interface (for example virtio) 3) The host OS will handle transmission from the virtual interface to the actual HW, possibly multiplexing the HW IP interface -> the critical components are the propagation time from the guest to the host and the effectiveness of the host IP stack Page 17

Use-Case: Network Throughput Control Plane Server Application 1) A control plane server application is used to provide large amount Tracing, Logging, Security functionality Kernel Layer Guest Network Throughput Host Network Throughput Guest VM KVM/QEMU 2) It uses standard networking to send data from inside a virtualized guest OS, which is used to provide load-balancing and failover facilities in the total system. 3) The packet traffic is routed through the guest and host OS and if affected by delays at each of the points, therefore affecting the total capacity of the server Hardware NIC

Solution: Network Throughput Tracing, Logging, Security functionality Guest Network Throughput Control Plane Server Application Host Network Throughput Guest VM KVM/QEMU 1) Implement packet handling on the host to bypass userspace and enter the kernel or dedicated HW directly Eliminate processing for traffic copy Eliminate context transitions 2) Implement control mechanisms for prioritizing and balancing traffic in case of multiple VMs Allow better QoS capabilities for higher-priority functions, like streaming data Kernel Layer Hardware NIC

Multi-OS Support Several Cloud users especially targeting embeddedtype deployments have significant SW legacy HW consolidation of legacy OSs Multi-version support for forward portability future versions of the platform Issues faced Real-time IO performance However, usually new HW can do much better in relation..

Security and Isolation Hypervisor and Guest-to-Guest vulnerabilities are seen as new fruitful ground for hackers Multi-tenancy Multi-node consolidation Guests of lesser importance can be used to gain access to the hypervisor and the more important Guest domains Hypervisor priviledge escalation Careful management of CVEs needed SELinux - svirt Not only exploits, also important data must not be visible to non-authorized Guests Packet traffic Memory, IO

Full-Stack Management Interfaces Key usability characteristic of a Cloud solution is the accessibility to the provisioning and monitoring systems Custom GUIs for end solutions Need access to APIs exposed by underlying facilities Monitoring Solutions Hypervisor and Guest logging OpenStack interface adaptation OpenStack plugin adapation Libvirt as a key underlying facility

Agenda Key Components and Architecture Main Architecture OpenStack OpenvSwitch QEMU/KVM Virtualization Problems and Solutions Further Work on the Topic

The Way Forward Co-operative Scheduling Paravirtualized Easy Adaptation of Applications Across HW and Middleware Adaptation layer for DPDK, SE, LWE, RTE etc Performance and Manageability OpenStack Value-add-solutions

Thank you! Questions? Comments on chosen components?