DEEP DIVE: OPENSTACK COMPUTE

Similar documents
Architecture and terminology

OSDC.de 2013 Introduction to OpenStack. Justin Clift Open Source & Standards RH 17 April 2013

An Introduction to Red Hat Enterprise Linux OpenStack Platform. Rhys Oxenham Field Product Manager, Red Hat

Red Hat OpenStack Platform 10 Product Guide

Part2: Let s pick one cloud IaaS middleware: OpenStack. Sergio Maffioletti

BRKDCT-1253: Introduction to OpenStack Daneyon Hansen, Software Engineer

"Charting the Course... H8Q14S HPE Helion OpenStack. Course Summary

OpenStack Architecture and Pattern Deployment with Heat. OpenStack Architecture and Pattern Deployment using Heat Ruediger Schulze

1. What is Cloud Computing (CC)? What are the Pros and Cons of CC? Technologies of CC 27

Minimal OpenStack Starting Your OpenStack Journey

Build Cloud like Rackspace with OpenStack Ansible

VMware Integrated OpenStack User Guide. VMware Integrated OpenStack 4.1

Build your own Cloud on Christof Westhues

High Availability for Enterprise Clouds: Oracle Solaris Cluster and OpenStack

EXIN Foundation Certificate in OpenStack Software. Version Newton. Sample Exam. Edition

vrealize Operations Management Pack for OpenStack 5.0

Introduction To OpenStack. Haim Ateya Group Manager, EMC

Red Hat OpenStack Platform 10 Architecture Guide

HPE HELION CLOUDSYSTEM 9.0. Copyright 2015 Hewlett Packard Enterprise Development LP

NephOS. A Single Turn-key Solution for Public, Private, and Hybrid Clouds

Zoptymalizuj Swoje Centrum Danych z Red Hat Virtualization. Jacek Skórzyński Solution Architect/Red Hat

VMware Integrated OpenStack User Guide

NephOS. A Single Turn-key Solution for Public, Private, and Hybrid Clouds

IBM Cloud Orchestrator Version User's Guide IBM

HP Helion CloudSystem 9.0 Administrator Guide

HPE Digital Learner OpenStack Content Pack

Red Hat OpenStack Platform 12

DEPLOYING NFV: BEST PRACTICES

Cloud Computing. Amazon Web Services (AWS)

CLOUD INFRASTRUCTURE ARCHITECTURE DESIGN

Best Practice Deployment of F5 App Services in Private Clouds. Henry Tam, Senior Product Marketing Manager John Gruber, Sr. PM Solutions Architect

Contrail Cloud Platform Architecture

SUSE OpenStack Cloud Production Deployment Architecture. Guide. Solution Guide Cloud Computing.

EMC STORAGE SOLUTIONS WITH MIRANTIS OPENSTACK

Red Hat OpenStack Platform 9 Architecture Guide

Contrail Cloud Platform Architecture

NET1821BU THE FUTURE OF NETWORKING AND SECURITY WITH NSX-T Bruce Davie CTO, APJ 2

Jumpstart your Production OpenStack Deployment with

BCS EXIN Foundation Certificate in OpenStack Software Syllabus

Introduction to Neutron. Network as a Service

When (and how) to move applications from VMware to Cisco Metacloud

OPENSTACK PRIVATE CLOUD WITH GITHUB

CS-580K/480K Advanced Topics in Cloud Computing. OpenStack

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

VMware Integrated OpenStack with Kubernetes Getting Started Guide. VMware Integrated OpenStack 4.0

SUBSCRIPTION OVERVIEW

What s New in Red Hat OpenShift Container Platform 3.4. Torben Jäger Red Hat Solution Architect

OpenStack End User Guide. SUSE OpenStack Cloud 8

Red Hat Enterprise Linux OpenStack Platform User Group.

Using the vrealize Orchestrator OpenStack Plug-In 2.0. Modified on 19 SEP 2017 vrealize Orchestrator 7.0

Launching StarlingX. The Journey to Drive Compute to the Edge Pilot Project Supported by the OpenStack

Huawei FusionSphere 6.0 Technical White Paper on OpenStack Integrating FusionCompute HUAWEI TECHNOLOGIES CO., LTD. Issue 01.

HPE Helion OpenStack Carrier Grade 1.1 Release Notes HPE Helion


Red Hat Virtualization 4.1 Technical Presentation May Adapted for MSP RHUG Greg Scott

INTRODUCING CONTAINER-NATIVE VIRTUALIZATION

File system, 199 file trove-guestagent.conf, 40 flavor-create command, 108 flavor-related APIs list, 280 show details, 281 Flavors, 107

OpenStack in 10 minutes with DevStack

Red Hat Virtualization

OpenStack and OpenDaylight, the Evolving Relationship in Cloud Networking Charles Eckel, Open Source Developer Evangelist

TECHNICAL REPORT. Design Considerations for Using Nimble Storage with OpenStack

Upcoming Services in OpenStack Rohit Agarwalla, Technical DEVNET-1102

Road to Private Cloud mit OpenStack Projekterfahrungen

ENTERPRISE-GRADE MANAGEMENT FOR OPENSTACK WITH RED HAT CLOUDFORMS

INTEGRATING HPFS IN A CLOUD COMPUTING ENVIRONMENT

Introducing VMware Validated Designs for Software-Defined Data Center

Welcome to Manila: An OpenStack File Share Service. May 14 th, 2014

OPENSTACK: THE OPEN CLOUD

Actual Agility with SDN: Weaving SDN into Data Center Automation May 6, John Burke Principal Research Analyst & CIO

Introducing VMware Validated Designs for Software-Defined Data Center

5 Things You Need for a True VMware Private Cloud

OpenStack Admin User Guide

271 Waverley Oaks Rd. Telephone: Suite 206 Waltham, MA USA

Building a Video Optimized Private Cloud Platform on Cisco Infrastructure Rohit Agarwalla, Technical

NTT Com Press Conference March 1, 2016 #enterprisecloud

RHEV in the weeds - special sauce! Marc Skinner

Introducing VMware Validated Designs for Software-Defined Data Center

VMware Integrated OpenStack Administrator Guide

Red Hat Enterprise Virtualization Hypervisor Roadmap. Bhavna Sarathy Senior Technology Product Manager, Red Hat

GETTING STARTED WITH OPENSTACK. Kenneth Hui, Rackspace Dan Radez, Red Hat April 27, 2016

Helion OpenStack Carrier Grade 4.0 RELEASE NOTES

Reference Architecture: Red Hat Enterprise Linux OpenStack Platform 7

OpenNebula on VMware: Cloud Reference Architecture

Dell Red Hat OpenStack Cloud Solution Reference Architecture Guide - Version 5.0

VMware Integrated OpenStack Quick Start Guide

Cloud Essentials for Architects using OpenStack

Citrix CloudPlatform (powered by Apache CloudStack) Version 4.5 Concepts Guide

Operating and managing an Atomic container-based infrastructure

Dell EMC Red Hat OpenStack Cloud Solution. Architecture Guide Version 6.0

Introduction to OpenStack Trove

Case Study on Enterprise Private Cloud

Disclaimer This presentation may contain product features that are currently under development. This overview of new technology represents no commitme

Reference Architecture: Red Hat OpenStack Platform

Deploying TeraVM in an OpenStack Environment

Copyright 2015 EMC Corporation. All rights reserved. Published in the USA.

VMWARE ENTERPRISE PKS

Provisioning Intel Rack Scale Design Bare Metal Resources in the OpenStack Environment

customer FAQs CLOUD NATIVE INFRASTRUCTURE Service Instances (VMs) information contained in a virtual machine disk image.

OpenStack Mitaka Release Overview

Spawning Virtual HPCs Using OpenStack

Transcription:

DEEP DIVE: OPENSTACK COMPUTE Stephen Gordon <sgordon@redhat.com> Technical Product Manager, Red Hat @xsgordon

AGENDA OpenStack architecture refresher Compute architecture Instance life cycle Scaling compute Segregating compute Upcoming features

OPENSTACK MISSION STATEMENT To produce the ubiquitous Open Source Cloud Computing platform that will meet the needs of public and private clouds regardless of size, by being simple to implement and massively scalable.

OPENSTACK ARCHITECTURE HORIZON DASHBOARD KEYSTONE NOVA GLANCE SWIFT NEUTRON CINDER HEAT CEILOMETER IDENTITY SERVICE COMPUTE IMAGE SERVICE OBJECT STORE NETWORKING VOLUME SERVICE Modular architecture Design to easily scale out Based on (growing) set of core services Orchestration Telemetry OPST0005

OPENSTACK ARCHITECTURE HORIZON DASHBOARD KEYSTONE NOVA GLANCE SWIFT NEUTRON CINDER HEAT CEILOMETER IDENTITY SERVICE COMPUTE IMAGE SERVICE OBJECT STORE NETWORKING VOLUME SERVICE Orchestration OpenStack Dashboard (Horizon) Provides simple self-service user interface for end users Basic cloud administrator functions Telemetry OPST0005

OPENSTACK ARCHITECTURE HORIZON DASHBOARD KEYSTONE NOVA GLANCE SWIFT NEUTRON CINDER HEAT CEILOMETER IDENTITY SERVICE COMPUTE IMAGE SERVICE OBJECT STORE NETWORKING VOLUME SERVICE Orchestration Telemetry OpenStack Identity (Keystone) Common authorization framework - manages users, tenants, roles and endpoints Pluggable backends (SQL, PAM, LDAP, etc) OPST0005

OPENSTACK ARCHITECTURE HORIZON DASHBOARD KEYSTONE NOVA GLANCE SWIFT NEUTRON CINDER HEAT CEILOMETER IDENTITY SERVICE COMPUTE IMAGE SERVICE OBJECT STORE NETWORKING VOLUME SERVICE Orchestration Telemetry Telemetry (Ceilometer) Monitors, collects, and stores usage data for all OpenStack infrastructure Primary targets metering and monitoring with expandable framework OPST0005

OPENSTACK ARCHITECTURE HORIZON DASHBOARD KEYSTONE NOVA GLANCE SWIFT NEUTRON CINDER HEAT CEILOMETER IDENTITY SERVICE COMPUTE IMAGE SERVICE OBJECT STORE NETWORKING VOLUME SERVICE Orchestration Telemetry Orchestration (Heat) Template-based deployment orchestrator for cloud applications Automates deployment of compute, storage, and networking resources Provides AWS CloudFormation implementation for OpenStack OPST0005

OPENSTACK ARCHITECTURE HORIZON DASHBOARD KEYSTONE NOVA GLANCE SWIFT NEUTRON CINDER HEAT CEILOMETER IDENTITY SERVICE COMPUTE IMAGE SERVICE OBJECT STORE NETWORKING VOLUME SERVICE Orchestration Telemetry OpenStack Block Storage (Cinder) OPST0005 Provides block storage for virtual machines (persistent disks) Similar to Amazon EBS service, plugin architecture for vendor extensions

OPENSTACK ARCHITECTURE HORIZON DASHBOARD KEYSTONE NOVA GLANCE SWIFT NEUTRON CINDER HEAT CEILOMETER IDENTITY SERVICE COMPUTE IMAGE SERVICE OBJECT STORE NETWORKING VOLUME SERVICE Orchestration Telemetry OpenStack Networking (Neutron) Provides framework for Software Defined Network (SDN) Plugin architecture allows integration of hardware and software based network solutions OPST0005

OPENSTACK ARCHITECTURE HORIZON DASHBOARD KEYSTONE NOVA GLANCE SWIFT NEUTRON CINDER HEAT CEILOMETER IDENTITY SERVICE COMPUTE IMAGE SERVICE OBJECT STORE NETWORKING VOLUME SERVICE Orchestration Telemetry OpenStack Object Storage (Swift) Modeled after Amazon's S3 service Provides simple service for storing and retrieving arbitrary data OPST0005

OPENSTACK ARCHITECTURE HORIZON DASHBOARD KEYSTONE NOVA GLANCE SWIFT NEUTRON CINDER HEAT CEILOMETER IDENTITY SERVICE COMPUTE IMAGE SERVICE OBJECT STORE NETWORKING VOLUME SERVICE Orchestration Telemetry OpenStack Image Service (Glance) Stores and retrieves disk images (virtual machine templates) Supports Raw, QCOW, VMDK, VHD, ISO, OVF & AMI/AKI Backend storage : Filesystem, Swift, Amazon S3 OPST0005

OPENSTACK ARCHITECTURE HORIZON DASHBOARD KEYSTONE NOVA GLANCE SWIFT NEUTRON CINDER HEAT CEILOMETER IDENTITY SERVICE COMPUTE IMAGE SERVICE OBJECT STORE NETWORKING VOLUME SERVICE Orchestration Telemetry OpenStack Compute (Nova) Schedules, and manages the life cycle of virtual machine instances on supported hypervisors Native OpenStack API and Amazon EC2 compatible API OPST0005

COMPUTE ARCHITECTURE

COMPONENTS

OTHER COMPONENTS Certificate manager for x509 certificates - nova-cert Metadata service - nova-metadata-api Traditional networking model nova-network L2 agent e.g.: neutron-openvswitch-agent neutron-linuxbridge-agent Ceilometer agent openstack-ceilometer-compute

OTHER COMPONENTS Token validator for console access openstack-novaconsoleauth Console proxies: NoVNC proxy openstack-nova-novncproxy SPICE proxy openstack-nova-spicehtml5proxy Java client proxy openstack-nova-xvpvncproxy

ALL IN ONE All compute services co-reside with: Shared services (Identity, Image Service, Block Storage, Networking) Support services (database, message broker) nova-api nova-compute nova-scheduler nova-conductor

CONTROLLER / COMPUTE All compute control services (API, scheduler, conductor) co-reside with: Shared services (Identity, Image Service, Block Storage, Networking) Support services (database, message broker) Compute agent runs on dedicated node as well as: L2 networking agent Ceilometer compute agent (optional) Controller Node nova-api nova-scheduler nova-conductor Compute Node nova-compute

CONTROLLER / COMPUTE Expand by adding more compute nodes Typical deployments start breaking off into dedicated: Controller Node nova-api nova-scheduler nova-conductor Network nodes Storage nodes Compute Node Compute Node nova-compute nova-compute Etc.

ARCHITECTURE OpenStack Compute itself can also be broken off into dedicated: API nodes Conductors Schedulers Compute Nodes Etc. Same approach applies to other projects.

SUPPORTED DRIVERS rd Assurance that 3 party products have been tested with and supported on Red Hat Enterprise Linux OpenStack Platform Documented Best practices, Installation, configuration, known issues Collaborative support agreements between Red Hat and partners to jointly solve customer issues Alignment on SLA, Lifecycle, roadmap and upstream engagement DOC144908 RED HAT ENTERPRISE LINUX OPENSTACK PLATFORM

SUPPORTED DRIVERS

SUPPORTED DRIVERS KVM API Nova Controller Nodes RHEL-OSP KVM Compute Nodes

SUPPORTED DRIVERS VMware vcenter API Nova Controller Nodes RHEL-OSP vcenter Server with VMware NSX ESXi Compute Clusters

INSTANCE LIFE CYCLE

AUTHENTICATION Nova obtains an authentication token on your behalf from Keystone Credentials provided when user logs in to dashboard or via environment variables for command line: $ source keystonerc_admin

AUTHENTICATION

INSTANCE REQUEST Initiating creation of an instance using the command line client: $ nova boot flavor 2 \ image 174e7a3a... \ "My Instance" Flavor 2 correlates to m1.small: 1 vcpu 2 G RAM, 10 G root disk, 20 G ephemeral disk

INSTANCE REQUEST Instance Name Flavor Image

INSTANCE FLAVORS Flavors define instance sizes: Number of vcpus Memory Root disk space Ephemeral disk space Arbitrary extra specifications Five default flavors available, are customizable or more can be added.

API Initial request hits Compute API in XML or JSON format: Endpoint like http://192.168.122.161:8774/v2/%(tenant_id)s Parameters are extracted from API call for basic validation Some nova extensions are called (e.g. os config drive) Retrieves a reference to the selected flavor

API Identifies boot media: Retrieves a reference to the selected image using Glance client; OR Retrieves a reference to the selected volume using Cinder client Performs further parameter validation and applies defaults to optional parameters Saves instance state to database Puts a message on the queue for the scheduler

SCHEDULER Defaults to filter scheduler Applies filters and weights based on nova.conf settings Filters, e.g.: Compute filter is this host on? Core filter does this host have enough vcpus available? Weights, e.g.: RAM weigher give more preference to hosts with more or less RAM free

FILTER SCHEDULER Host 1 Host 2 Host 3 F I L T E R S W E I G H T S Host 3 Host 1

SCHEDULER Updates instance data in database Puts a message on the queue for the compute agent on the selected compute node

COMPUTE NODE Updates instance state in database Retrieve the boot media information Decode any injected files Calls Neutron to get network and security group information and plug virtual interfaces Calls Cinder to attach volume if necessary Sets up configuration drive if necessary

COMPUTE NODE Use hypervisor APIs to create virtual machine!

SCALING COMPUTE

COMPONENTS So compute is simple to implement, but how to make it massively scalable?

SCALING LOAD BALANCER Add a load balancer in front of the API. API Add additional: Conductors Schedulers Compute agents/hypervisors Scale out message brokers and databases using documented mechanisms COMPUTE CONDUCTOR DATABASE MESSAGE QUEUE AMQP HYPERVISOR KVM SCHEDULER OPST0007

CELLS Maintains a single compute endpoint API CELL Relieve pressure on queues database at scale (000's of nodes) MESSAGE QUEUE Few OpenStack projects are cell aware Introduces the cells scheduler COMPUTE CELL COMPUTE CELL... OPST0008

API CELL LOAD BALANCER Adds a load balancer in front of multiple instances of the API service Has its own message queue API nova-api Includes a new service, nova-cells Handles cell scheduling Packaged as openstack-nova-cells MESSAGE QUEUE Required in every cell CELLS nova-cells OPST0009

COMPUTE CELL Each compute cell contains: Its own message queue and database Its own scheduler, conductor, compute nodes CELLS nova-cells COMPUTE nova-compute CONDUCTOR nova-conductor DATABASE MESSAGE QUEUE HYPERVISOR KVM SCHEDULER nova-scheduler OPST0010

SEGREGATING COMPUTE

WHY SEGREGATE COMPUTE? Expose logical groupings of compute resources Geographical region, data center, rack, power source, network, etc. Expose special capabilities of compute resources Faster NICs or storage, special devices, etc. The divisions mean whatever you want them to mean!

REGIONS Complete OpenStack deployments Share a Keystone and Horizon installation Implement their own targetable API endpoints, networks, and compute By default all services in one region $ keystone endpoint create region RegionTwo Target actions at a region's endpoint: $ nova os region name RegionTwo boot

REGIONS Region A Glance Cinder Region B Nova Neutron Swift Keystone Glance Horizon Cinder Nova Neutron Swift

HOST AGGREGATES Logical groupings of hosts based on metadata Typically metadata describes capabilities hosts expose: SSD hard disks for ephemeral data storage PCI devices for passthrough Etc. Hosts can be in multiple host aggregates: Hosts that have SSD storage and 10G interfaces

HOST AGGREGATES Implicitly user targetable: Admin defines host aggregate with metadata, and a flavor that matches it $ nova aggregate create hypervisors with SSD $ nova aggregate set metadata 1 SSDs=true $ nova aggregate add host 1 hypervisor 1 $ nova flavor key 1 set SSDs=true User selects flavor when requesting instance Scheduler places on host aggregate matching host aggregate(s) AggregateInstanceExtraSpecsFilter

AVAILABILITY ZONES Logical groupings of hosts based on arbitrary factors like: Location (country, data center, rack, etc.) Network layout Power source Explicitly user targetable: $ nova boot availability zone rack 1

AVAILABILITY ZONES Availability Zone

AVAILABILITY ZONES Host aggregates are made explicitly user targetable by creating them as an AZ: $ nova aggregate create tier 1 us east tier 1 tier 1 is the aggregate name, us east tier 1 is the AZ name Host aggregate is the availability zone in this case Hosts can not be in multiple availability zones Hosts can be in multiple host aggregates

EXAMPLE Region A Glance Cinder Region B Nova Neutron Swift Keystone Glance Horizon Cinder Nova Neutron Swift

EXAMPLE Region A Glance Cinder Region B Nova Neutron Keystone Glance Horizon Cinder Swift AZ 1 Nova Neutron Swift AZ 2 AZ 3 AZ 4

EXAMPLE Region A Glance Region B Nova Cinder Neutron Keystone Glance Horizon Cinder Swift AZ 1 Nova Neutron Swift AZ 2 Hosts with SSDs AZ 3 AZ 4

EXAMPLE Region A Glance Region B Nova Cinder Neutron Keystone Glance Horizon Cinder Swift AZ 1 Nova Neutron Swift AZ 2 Hosts with SSDs Hosts with 10G NICs AZ 3 AZ 4

EXAMPLE Region A Glance Region b Nova Cinder Neutron Keystone Glance Horizon Cinder Swift AZ 1 Nova Neutron Swift AZ 2 Hosts with SSDs Hosts with 10G NICs Hosts with GPUs AZ 3 AZ 4

EXAMPLE Region A Glance Region b Nova Cinder Neutron Keystone Glance Horizon Cinder Swift AZ 1 Nova Neutron Swift AZ 2 Hosts with SSDs Hosts with 10G NICs Hosts with GPUs AZ 3 AZ 4

NEW FEATURES

ROLLING UPGRADES Improved version interoperability Facilitates rolling upgrades Upgrade control services independently of compute nodes Allows operators to take a more gradual approach to upgrading an OpenStack cloud.

INSTANCE GROUPS API Allows cloud users to create and apply policies to groups of instances (also referred to as server groups) Allows intelligent placement of workloads that interact with each other Apply scheduling policies to instance groups: Affinity Anti-Affinity

NOTIFICATIONS Additional notifications for: Compute host lifecycle operations: Shutdown Reboot Maintenance mode (in/out) Creation and deletion of keypairs. Support enhanced monitoring from Telemetry (Ceilometer)

VIRTIO RNG Para-virtualized random number generator. Default entropy pool is /dev/random on compute node Use of a hardware random number generator (RNG) or entropy gathering daemon (EGD) also supported Allows cloud users to run workloads requiring random data (E..g. cryptographic applications) while avoiding guest entropy starvation

VIRTIO WATCHDOG Triggers instance lifecycle events for Linux guests on crash or panic Enabled using hw_watchdog_action image property. hw_watchdog_action=<disabled poweroff reset pause none> Defaults to disabled Allows users to: Automatically reset or power off crashed instances, resuming quota Automatically pause crashed instances, for debugging

VIRTIO SCSI Para-virtualized SCSI controller. Designed as a future successor to VirtIO Block: Improved scalability instances can connect to more storage devices Standard command set uses standard SCSI command, simplifies expansion Standard device naming disks use same paths as bare-metal Enabled using hw_disk_bus_model image property: hw_disk_bus_model=virtio-scsi

VCENTER DRIVER Now supports boot from ISO Now supports diagnostics API: Returns a variety of details and statistics over and above those from `nova show` $ nova diagnostics <instance>

COMING UP Red Hat Cloud Infrastructure networking deep dive Cloud Deep Dive 11:00 a.m. - 12:00 p.m. Implementing storage with OpenStack Labs II 11:30 a.m. - 1:30 p.m.

QUESTIONS? Come see us! Infrastructure as a Service zone of the Red Hat booth!