The meta-virtualization layer of OpenEmbedded

Similar documents
The Yocto Project. Chris Young S/W Specialist SILICA Europe. Harmonising Software Development across multiple Embedded ARM SOC targets

Securing Edge Devices

LINUX CONTAINERS. Where Enterprise Meets Embedded Operating Environments WHEN IT MATTERS, IT RUNS ON WIND RIVER

Yocto Overview. Dexuan Cui Intel Corporation

How Container Runtimes matter in Kubernetes?

Introduction to the Yocto Project

The speed of containers, the security of VMs

Yocto Project: A Vehicle for Embedded Qt Development

Unified Kubernetes CRI runtimes based on Kata Containers. Xu Wang hyper.sh

Enterprise Linux vs. Embedded Linux

Intel Clear Containers. Amy Leeland Program Manager Clear Linux, Clear Containers And Ciao

IoT usecase for Yocto Project

THE STATE OF CONTAINERS

Yocto Project and OpenEmbedded training 3-day session

OpenEmbedded in the Real World

OCI Runtime Tools for Container Standardization

The speed of containers, the security of VMs. KataContainers.io

WIND RIVER INTELLIGENT DEVICE PLATFORM XT

Multi-Arch Layered Image Build System

PAVING THE WAY TO OPEN SOURCE NFV. A Linux Foundation Collaborative Project

OPENSTACK Building Block for Cloud. Ng Hwee Ming Principal Technologist (Telco) APAC Office of Technology

NFV in the Embedded World: Yocto Project and OpenStack

WIND RIVER TITANIUM CLOUD FOR TELECOMMUNICATIONS

Building Container Images with OpenEmbedded and the Yocto Project. Scott Murray

Debian & Yocto: State of the Art

TITANIUM CLOUD VIRTUALIZATION PLATFORM

Isar. Build Debian-Based Products with BitBake. Baurzhan Ismagulov. Embedded Linux Conference Europe Oct 11-13, 2016 Berlin, Germany

Improving the Yocto Project Developer Experience. How New Tools Will Enable a Better Workflow October 2016 Henry Bruce

TEN LAYERS OF CONTAINER SECURITY

Docker and Oracle Everything You Wanted To Know

Customizing with Yocto. Dexuan Cui Intel Corporation

Multitenancy Deep Dive

Deby - Reproducible and Maintainable Embedded Linux Environment with Poky

Prototyping IoT with. Pierre Ficheux 02/2017. Prototyping IoT with Yocto

ServerReady and Open Standards Accelerating Delivery

Amir Zipory Senior Solutions Architect, Redhat Israel, Greece & Cyprus

ViryaOS RFC: Secure Containers for Embedded and IoT. A proposal for a new Xen Project sub-project

KHEM RAJ YOCTO PROJECT/OPEN EMBEDDED

Red Hat Roadmap for Containers and DevOps

Design Better. Reduce Risks. Ease Upgrades. Protect Your Software Investment

Adding hardware support to Buildroot

Software Development Using Full System Simulation with Freescale QorIQ Communications Processors

Move Up to an OpenStack Private Cloud and Lose the Vendor Lock-in

TEN LAYERS OF CONTAINER SECURITY. Kirsten Newcomer Security Strategist

AMD SEV Update Linux Security Summit David Kaplan, Security Architect

IT S COMPLICATED: THE ENTERPRISE OPEN SOURCE VENDOR RELATIONSHIP. Red Hat s POV

Intel, OpenStack, & Trust in the Open Cloud. Intel Introduction

SUSE An introduction...

WIND RIVER NETWORKING SOLUTIONS

How to Keep UP Through Digital Transformation with Next-Generation App Development

Red Hat Atomic Details Dockah, Dockah, Dockah! Containerization as a shift of paradigm for the GNU/Linux OS

High Performance Containers. Convergence of Hyperscale, Big Data and Big Compute

Introduction to Standards based approach to Server

The ultimate guide to software updates on embedded Linux devices

ovirt and Docker Integration

VMware s (Open Source) Way of Container. Dr. Udo Seidel

ACCELERATE APPLICATION DELIVERY WITH OPENSHIFT. Siamak Sadeghianfar Sr Technical Marketing Manager, April 2016

YumaPro Yocto Linux Quickstart Guide

How to Put Your AF Server into a Container

Security: The Key to Affordable Unmanned Aircraft Systems

Kubernetes 101. Doug Davis, STSM September, 2017

Azure DevOps. Randy Pagels Intelligent Cloud Technical Specialist Great Lakes Region

Building Debian-Based Products: Experiences in Collaboration

A DEVOPS STATE OF MIND WITH DOCKER AND KUBERNETES. Chris Van Tuin Chief Technologist, West

A Big Little Hypervisor for IoT Development February 2018

Oracle Application Container Cloud

Application container orchestration for the distributed internet of things

Multi-tenancy Virtualization Challenges & Solutions. Daniel J Walsh Mr SELinux, Red Hat Date

What You Need to Know About OpenStack + VMware

Spring 2017 :: CSE 506. Introduction to. Virtual Machines. Nima Honarmand

Red Hat OpenShift Roadmap Q4 CY16 and H1 CY17 Releases. Lutz Lange Solution

Jim Gallagher Senior Technical Marketing Lead, MontaVista Software

A Greybeard's Worst Nightmare

Learning Embedded Linux Using the Yocto Project

Surviving in the wilderness integrity protection and system update. Patrick Ohly, Intel Open Source Technology Center Preliminary version

Simple custom Linux distributions with LinuxKit. Justin Cormack

Design Better. Reduce Risks. Ease Upgrades. Protect Your Software Investment

F# is the future of OSS.NET

SUSE Linux Entreprise Server for ARM

More Containers, More Problems

IBM s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice at IBM s sole discretion.

2013 Cisco and/or its affiliates. All rights reserved. 1

Linux Foundation Onsite Classroom Requirements

Travis Cardwell Technical Meeting

Deploy Stuff, Run Stuff Jax Devops London Kris

Welcome to Linux Foundation Virtual Training

KVM for IBM z Systems

[Docker] Containerization

Kuber-what?! Learn about Kubernetes

NFV Infrastructure for Media Data Center Applications

OpenXT Project in 2016

Virtual Private Networks with Cisco Network Services Orchestrator Enabled by Tail-f - Fast, Simple, and Automated

Flatpak and your distribution. Simon McVittie

Customizing the Yocto-Based Linux Distribution for Production

IOTIVITY AND EMBEDDED LINUX SUPPORT. Kishen Maloor Intel Open Source Technology Center

The Zentri Secure IoT Platform

Best Practices to Transition to the Cloud. Five ways to improve IT agility and speed development by adopting a Cloud DevOps approach

Contributing to Automotive Grade Linux and GENIVI Development Platform

AGILE RELIABILITY WITH RED HAT IN THE CLOUDS YOUR SOFTWARE LIFECYCLE SPEEDUP RECIPE. Lutz Lange - Senior Solution Architect Red Hat

Containerization Dockers / Mesospere. Arno Keller HPE

Transcription:

The meta-virtualization layer of OpenEmbedded Bruce Ashfield Principal Technologist Linux Products Group 2018 WIND RIVER. ALL RIGHTS RESERVED.

Agenda Introduction Brief OpenEmbedded introduction / history How Wind River uses OE meta-virtualization OE + meta-virtualization + security Future / Questions 2 2018 WIND RIVER. ALL RIGHTS RESERVED.

A Brief Introduction 3 2018 WIND RIVER. ALL RIGHTS RESERVED.

Enterprise vs Embedded The world is not limited to enterprise vs embedded It s really more a continuum, from the pre-defined to the fully customized Many users have requirements that are between those of the Enterprise Linux and Embedded Linux Some enterprise like systems are source based Some embedded like systems are based on preconfigured binaries One size does not fit all in the Linux ecosystem 4 2018 WIND RIVER. ALL RIGHTS RESERVED.

OpenEmbedded OpenEmbedded Includes a cross-compile build environment User is required to configure and define their environment before compiling Created a custom binary Linux distribution based on configuration Output includes packages, like an enterprise OS, filesystem images, SDKs All software is downloaded from the original provider as source code Designed to be expanded/extended Commercial and Community support 5 2018 WIND RIVER. ALL RIGHTS RESERVED.

[ yoc-to ] The smallest unit of measure, equal to one septillionth (10-24). The Yocto Project 6 2018 WIND RIVER. ALL RIGHTS RESERVED.

What is the Yocto Project? The Yocto Project is an Open Source project with a strong community It is based on a collection of embedded projects, tooling, and procedures OpenEmbedded Application Development Quality Assurance testing Commercial Ecosystem The Yocto Project is designed to provided an ecosystem to the Operating System developer. It s not an embedded Linux distributon it helps you creates the custom one for you 7 2018 WIND RIVER. ALL RIGHTS RESERVED.

Who is the Yocto Project Founded under the Linux Foundation Members include numerous companies and projects spanning Silicon vendors, Board vendors, OSVs, ISVs, and end users Lead by Advisory Board and Technical Leadership Advisory board is responsible for ecosystem, marketing, etc. Technical Leadership is a meritocracy based group that leads various projects and makes technical contributions 8 2018 WIND RIVER. ALL RIGHTS RESERVED.

Why was the Yocto Project started? The industry needed a common build system and core technology Bitbake and OpenEmbedded build system A place for Commercial Interests to work together to avoid duplicating effort Why should each company have a competing build system? Why is each organization integrating the same components in different ways? Why are we all duplicating effort, duplicating bugs, and duplicating solutions? Less time spent on things which don t add value More time spent on things which do add value 9 2018 WIND RIVER. ALL RIGHTS RESERVED.

Comparisons 10 2018 WIND RIVER. ALL RIGHTS RESERVED.

Embedded Linux Requirements Goal: Build upon the existing Linux ecosystem and goals Build a complete, customized, Linux system for a specific device Include Bootloaders, Linux Kernel, Root Filesystems Build from scratch from source Reproducibility, IP compliance reasons, customization Use cross-compilation to build software Often developer/build machine will be faster or more plentiful then target hardware Need a vibrant community Documentation, support, training 11 2018 WIND RIVER. ALL RIGHTS RESERVED.

Alternatives / Options OE / Yocto project Enterprise Linux IoT variants Buildroot Roll-your-own 12 2018 WIND RIVER. ALL RIGHTS RESERVED.

Enterprise Linux Easy entry level Often used for prototyping Customization or Support not both Maintenance IoT focused systems Project Atomic Ubuntu Core Not cross-compiled Not source code based 13 2018 WIND RIVER. ALL RIGHTS RESERVED.

Buildroot Allows simple entry into Embedded Linux Limited built in extension points No binary packages Most users end up having to create their own forks 14 2018 WIND RIVER. ALL RIGHTS RESERVED.

Roll-your-own Enterprise based Silicon Vendor/Board Vendor SDK Completely custom 15 2018 WIND RIVER. ALL RIGHTS RESERVED.

With the alternatives, why OpenEmbedded? OE may not be right for all situations! PC like usage model? enterprise Linux or variants One-time use board bring up? OE might be too complex Foot-print, long-term maintenance, commercial ecosystem, IP, etc concerns? OE/Yocto Project is probably what you want 16 2018 WIND RIVER. ALL RIGHTS RESERVED.

Layers and the Ecosystem 17 2018 WIND RIVER. ALL RIGHTS RESERVED.

Layers Layers are a way to manage extensions, and customizations to the system Layers can extend, add, replace or modify recipes Layers can add or replace bbclass files Layers can add or modify configuration settings Layers are added via BBLAYERS variable in build/conf/bblayers.conf Best Practice: Layers should be grouped by functionality Distribution configurations BSP/Machine Functional groups Project/Product specific components 2014 LINUX FOUNDATION. ALL RIGHTS RESERVED. 18 2018 WIND RIVER. ALL RIGHTS RESERVED.

Layers LEGO is a trademark of the LEGO Group 19 2018 WIND RIVER. ALL RIGHTS RESERVED.

Layers 2014 LINUX FOUNDATION. ALL RIGHTS RESERVED. 20 2018 WIND RIVER. ALL RIGHTS RESERVED.

Ecosystem The ecosystem is formed by the collection of layers and projects Broad and active Content of layers is a work in progress Various levels of maintenance and quality Yocto project compatibility and layer index Tools to support layers and recipe creation/maintenance If you have layers: test for compatibility and publish! 2014 LINUX FOUNDATION. ALL RIGHTS RESERVED. 21 2018 WIND RIVER. ALL RIGHTS RESERVED.

Build System Workflow 2018 YOCTO PROJECT 22 2018 WIND RIVER. ALL RIGHTS RESERVED.

How (and why) is Wind River using the Yocto Project? 23 2018 WIND RIVER. ALL RIGHTS RESERVED.

What about commercial Linux? Prior to the Yocto Project, there were many commercial Linux products Each was incompatible with the others, even if they shared a common core In many ways each commercial vendor had created their own Roll-yourown system and tried to share the costs among their customers This lead to many limited ecosystems: Limited ISV support Limited semiconductor support Limited BSP support Vendor lock-in was a problem for customers 24 2018 WIND RIVER. ALL RIGHTS RESERVED.

Innovation / Differentiation Linux is now a commodity operating system Nobody is going to buy a new kernel People will pay for service, new development, features, etc. 25 2018 WIND RIVER. ALL RIGHTS RESERVED.

Software Lifecycle Management Open source software lifecycle is short New versions are released constantly, but not on any fixed cycle Days, weeks, months or years Old versions are often abandoned as soon as new versions are released Commercial product lifecycles vary Developed in 6 months, only sold for 6 months Developed for 6 months and sold for years Developed over years and sold for years It is Wind River s job to help the customer manage the commercial lifecycle vs the fast changing open source lifecycles 26 2018 WIND RIVER. ALL RIGHTS RESERVED.

Software Integration Roll-your-own or the Yocto Project? It s easy to do something once It s not to bad to do it twice But supporting something for a long time takes process, planning and expertise Carrying costs, including maintenance, updates, etc add up quickly! Continuous Integration of the Yocto Project 27 2018 WIND RIVER. ALL RIGHTS RESERVED.

What that looks like Core product Closely based on OE core Selected / curated layers github / community editions CI/CD stream WR BSPs Vertical specific products (distros) WR core + additional layers and configuration Networking, industrial Technology horizontals: virtualization /containers, security.. 28 2018 WIND RIVER. ALL RIGHTS RESERVED.

meta-virtualization 29 2018 WIND RIVER. ALL RIGHTS RESERVED.

meta-virtualization overview From openhub: has had 773 commits made by 104 contributors with a very well-commented source code has a well established, mature codebase maintained by a very large development team starting with its first commit in June, 2012 Current maintainer(s): Bruce Ashfield (Wind River) Contributors: OSVs (Wind River, Mentor, Monta Vista, Enea,...), distros, individual users 30 2018 WIND RIVER. ALL RIGHTS RESERVED.

meta-virtualization goals Goals: Single point of integration for virtualization technologies VMs and containers Core technology + support software Many audiences: Bleeding edge and established tech Well tested and stable Baseline for creating OE derived virtualization solutions Recipes migrate over time 31 2018 WIND RIVER. ALL RIGHTS RESERVED.

meta-virtualization components Technology virtualization: guests/hosts, containers, management, utilities / support, configuration(s): images, kernel ~98 recipes (some are variants) recipes-containers: Kubernetes, runc, docker/moby, OCI, LXC, containerd recipes-core: system init, runv recipes-devtools: support recipes for core/containers recipes-extended: libvirt, hyperstart, kvmtool, image definitions, dev86.. recipes-kernel: configuration fragments to support VMs/Container features recipes-networking: CNI, OpenVSwitch, netns 32 2018 WIND RIVER. ALL RIGHTS RESERVED.

meta-virtualization use cases Virtualization: Xen / KVM Small, secure, etc Containers: docker, LXC, runc, moby Lightweight, micro-services, serverless, etc Standards based: OCI VMs and container co-existence Single image, nested, runv Management and control CLI: libvirt Orchestration: kubernetes, CNI, etc 33 2018 WIND RIVER. ALL RIGHTS RESERVED.

How Wind River uses meta-virtualization Core hypervisor support realtime + security variants Containers Core container support: docker, lxc, runc Container OS: OverC 34 2018 WIND RIVER. ALL RIGHTS RESERVED.

Secure boot + meta-virt @ Wind River 35 2018 WIND RIVER. ALL RIGHTS RESERVED.

Secure boot requirements As little as possible is BSP specific leverage hardware when possible Avoid one-offs Multiple layers of security key management Multi-architecture 36 2018 WIND RIVER. ALL RIGHTS RESERVED.

Wind River Linux Security Carrier Grade Yocto Project x.y Security policy SE Linux MLS/MCS Login and remote access Access controls PKI SCAP (OpenSCAP) AES-NI, FIPS OpenSSL QAT Virtualization technology Remote attestation Least privilege/privilege controls File system integrity UEFI, TXT monitoring Secure & measured boot Backup/restore TPM 1.2 and TrouSerS TPM 2.0 and TPM2-TSS Access controls Resource utilization protection Memory protection VTx/VTd Linux IMA 37 2018 WIND RIVER. ALL RIGHTS RESERVED. Virtualizatio Wind River Linux Security technology Memory protection Security PTT

OverC / WRL Security Reference Image Opeo Virtualizatio Carrier Grade Security Wind River Linux PTT 38 2018 WIND RIVER. ALL RIGHTS RESERVED. Wind River Linux secure kernel UEFI, TXT Secure Boot Linux IMA Secure backup/restore SELinux TPM 2.0 and TPM2-TSS IPsec/L2TP/PPTP VPN AES-NI, Storage encryption QAT Secure update OpenSCAP configuration guidance

What s next? 39 2018 WIND RIVER. ALL RIGHTS RESERVED.

What the future may hold New technology in meta-virtualizion Hypervisors (ACRN...) container / sandbox techniques (gvisor? pouch? kata containers) Improved system level use cases / tests, not just buckets of packages security 'toolkit' / core components See Richard Purdie's 2.6 planning email Update mechanisms (OTA or not), reference binary feeds Developer experience More we need help! 40 2018 WIND RIVER. ALL RIGHTS RESERVED.

41 2018 WIND RIVER. ALL RIGHTS RESERVED.