Mirantis www.mirantis.com/training



Similar documents
OpenStack Introduction. November 4, 2015

Introduction to Openstack, an Open Cloud Computing Platform. Libre Software Meeting

Cloud on TEIN Part I: OpenStack Cloud Deployment. Vasinee Siripoonya Electronic Government Agency of Thailand Kasidit Chanchio Thammasat University

CERN Cloud Infrastructure. Cloud Networking

การใช งานและต ดต งระบบ OpenStack ซอฟต แวร สาหร บบร หารจ ดการ Cloud Computing เบ องต น

An Introduction to OpenStack and its use of KVM. Daniel P. Berrangé

Snakes on a cloud. A presentation of the OpenStack project. Thierry Carrez Release Manager, OpenStack

Onboarding VMs to Cisco OpenStack Private Cloud

Corso di Reti di Calcolatori M

OpenStack Ecosystem and Xen Cloud Platform

Ubuntu OpenStack on VMware vsphere: A reference architecture for deploying OpenStack while limiting changes to existing infrastructure

Multi Provider Cloud. Srinivasa Acharya, Engineering Manager, Hewlett-Packard

Building Storage as a Service with OpenStack. Greg Elkinbard Senior Technical Director

Cloud on TIEN Part I: OpenStack Cloud Deployment. Vasinee Siripoonya Electronic Government Agency of Thailand Kasidit Chanchio Thammasat

SUSE Cloud 2.0. Pete Chadwick. Douglas Jarvis. Senior Product Manager Product Marketing Manager

Déployer son propre cloud avec OpenStack. GULL François Deppierraz

What is OpenStack? Mike Buzzetti IBM

Today. 1. Private Clouds. Private Cloud toolkits. Private Clouds and OpenStack Introduction

OpenStack IaaS. Rhys Oxenham OSEC.pl BarCamp, Warsaw, Poland November 2013

KVM, OpenStack, and the Open Cloud

Research of Enterprise Private Cloud Computing Platform Based on OpenStack. Abstract

SUSE Cloud. End User Guide. August 06, 2014

OpenStack Installation Guide for Red Hat Enterprise Linux, CentOS, and Fedora

Using SUSE Cloud to Orchestrate Multiple Hypervisors and Storage at ADP

Guide to the LBaaS plugin ver for Fuel

OpenStack in 程 辉. freedomhui@gmail.com

Moving SNE to the Cloud

Research trends in abstraction of networks and orchestration of network services

Introduction to OpenStack

SUSE Cloud Installation: Best Practices Using a SMT, Xen and Ceph Storage Environment

vrealize Operations Management Pack for OpenStack

KVM, OpenStack, and the Open Cloud

STeP-IN SUMMIT June 18 21, 2013 at Bangalore, INDIA. Performance Testing of an IAAS Cloud Software (A CloudStack Use Case)

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

Building a Cloud Computing Platform based on Open Source Software Donghoon Kim ( donghoon.kim@kt.com ) Yoonbum Huh ( huhbum@kt.

OpenStack Manila Shared File Services for the Cloud

RED HAT ENTERPRISE LINUX OPENSTACK PLATFORM

CS312 Solutions #6. March 13, 2015

Release Notes for Fuel and Fuel Web Version 3.0.1

Postgres on OpenStack

Cloud Management Software/Platforms: OpenStack

SUSE Cloud Installation: Best Practices Using an Existing SMT and KVM Environment

CloudStack Release Notes

Installation Guide Avi Networks Cloud Application Delivery Platform Integration with Cisco Application Policy Infrastructure

SUSE Cloud Deployment Guide Questionnaire

Module I-7410 Advanced Linux FS-11 Part1: Virtualization with KVM

OpenStack. Orgad Kimchi. Principal Software Engineer. Oracle ISV Engineering. 1 Copyright 2013, Oracle and/or its affiliates. All rights reserved.

Getting Started with OpenStack and VMware vsphere TECHNICAL MARKETING DOCUMENTATION V 0.1/DECEMBER 2013

DataCentred Cloud Compute - Powered By OpenStack

Options in Open Source Virtualization and Cloud Computing. Andrew Hadinyoto Republic Polytechnic

SYNNEFO: A COMPLETE CLOUD PLATFORM OVER GOOGLE GANETI WITH OPENSTACK APIs VANGELIS KOUKIS, TECH LEAD, SYNNEFO

Establishing Scientific Computing Clouds on Limited Resources using OpenStack

Architecture des plates-formes IaaS Etat des lieux et perspectives

Openstack. Cloud computing with Openstack. Saverio Proto

OpenStack Towards a fully open cloud. Thierry Carrez Release Manager, OpenStack

SUSE Cloud. OpenStack End User Guide. February 20, 2015

DevOps in OpenStack Public Cloud 副 标 题 副 标 题 副 标 题 Presented at OpenStack Summit, Fall 2012, San Diego

rackspace.com/cloud/private

SUSE Cloud 5 Private Cloud based on OpenStack

A Comparison of Clouds: Amazon Web Services, Windows Azure, Google Cloud Platform, VMWare and Others (Fall 2012)

Mirantis OpenStack 6. with VMware vcenter and NSX. Mirantis Reference Architecture. US HEADQUARTERS Mountain View, CA

Virtualization. Nelson L. S. da Fonseca IEEE ComSoc Summer Scool Trento, July 9 th, 2015

KVM, OpenStack and the Open Cloud SUSECon November 2015

OpenStack & Hyper-V. Alessandro Pilo- CEO Cloudbase

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

Boas Betzler. Planet. Globally Distributed IaaS Platform Examples AWS and SoftLayer. November 9, IBM Corporation

Building a big IaaS cloud with Apache CloudStack

RED HAT INFRASTRUCTURE AS A SERVICE OVERVIEW AND ROADMAP. Andrew Cathrow Red Hat, Inc. Wednesday, June 12, 2013

Iron Chef: Bare Metal OpenStack

Eucalyptus 3.2: Design, Build, Manage

Desktop virtualization using SaaS Architecture

version 7.0 Planning Guide

Open Source Networking for Cloud Data Centers

OpenStack Cloud Administrator Guide

An Intro to OpenStack. Ian Lawson Senior Solution Architect, Red Hat

Cloud Optimize Your IT

Cloud Models and Platforms

Hadoop on OpenStack Cloud. Dmitry Mescheryakov Software

Integrating Scality RING into OpenStack Unified Storage for Cloud Infrastructure

Deployment of Private, Hybrid & Public Clouds with OpenNebula

FIA Athens 2014 ~OKEANOS: A LARGE EUROPEAN PUBLIC CLOUD BASED ON SYNNEFO. VANGELIS KOUKIS, TECHNICAL LEAD, ~OKEANOS

Comparison and Evaluation of Open-source Cloud Management Software

OpenStack Awareness Session

CloudPlatform (powered by Apache CloudStack) Version 4.2 Administrator's Guide

How To Install Eucalyptus (Cont'D) On A Cloud) On An Ubuntu Or Linux (Contd) Or A Windows 7 (Cont') (Cont'T) (Bsd) (Dll) (Amd)

How To Install Openstack On Ubuntu (Amd64)

Apache CloudStack 4.x (incubating) Network Setup: excerpt from Installation Guide. Revised February 28, :32 pm Pacific

Preparation Guide. How to prepare your environment for an OnApp Cloud v3.0 (beta) deployment.

The QEMU/KVM Hypervisor

ProphetStor Federator Runbook for Mirantis FUEL 4.1 Revision

Transcription:

TM Mirantis www.mirantis.com/training

Goals Understand OpenStack purpose and use cases Understand OpenStack ecosystem o history o projects Understand OpenStack architecture o logical architecture o components o request flow Get enough theory for hands-on lab

What is OpenStack? "Open source software for building private and public clouds"

OpenStack capabilities VMs on demand o o provisioning snapshotting Volumes Multi-tenancy o o quotas for different users user can be associated with multiple tenants Object storage for VM images and arbitrary files

OpenStack History July 2010 - Initial announcement October 2010 - Austin Release April 2011 - Cactus Release October 2011 - Diablo Release April 2012 - Essex Release October 2012 - Folsom Release

OpenStack Projects Nova (Compute) Glance (Image Service) Swift (Object Store) Keystone (auth) Horizon (Dashboard)

OpenStack Projects: Relationship

OpenStack: Deployment Topology

OpenStack Projects: Detailed View

Horizon "The OpenStack Dashboard (Horizon) provides a baseline user interface for managing OpenStack services."

Horizon notes "Stateless" Error handling is delegated to back-end Doesn't support all API functions Can use memcached or database to store sessions Gets updated via nova-api polling

Horizon internals 2 subprojects o horizon - generic Django libraries and components to work with REST-based back-end o openstack-dashboard - web app itself, with styles, locale, etc. Dashboard for each entity (like instances or images) - nested Django app

Keystone "Keystone is an OpenStack project that provides Identity, Token, Catalog and Policy services for use specifically by projects in the OpenStack family."

Keystone Architecture

Keystone data model User: has account credentials, is associated with one or more tenants Tenant: unit of ownership in openstack, contains one or more users Role: a first-class piece of metadata associated with many user-tenant pairs. Token: identifying credential associated with a user or user and tenant Extras: bucket of key-value metadata associated with a user-tenant pair. Rule: describes a set of requirements for performing an action.

Keystone: auth flow

Keystone: populating auth data Add tenants Add users Add roles Grant roles to users Add endpoint templates Map endpoint templates to zones

nova-api "nova-api is a RESTful API web service which is used to interact with nova"

nova-api characteristics Exposes REST API Provides system for managing multiple APIs on different sub-domains o EC2-compatible - will be deprecated o OpenStack Compute API - all innovation happens here The only "allowed" way to interact with nova Stateless - HA-ready

nova-api clients

nova database "nova database stores current state of all objects in compute cluster."

nova database Can be any relational database nova-api talks to DB via SQLAlchemy (python ORM) Most of the deployments are done with MySQL or PostreSQL DB HA should be done via external tools (like MMM for MySQL)

Message queue "Message queue is a unified way for collaboration between nova components."

OpenStack messaging 2 modes: rpc.cast - don't wait for result rpc.call - wait for result (when there is something to return)

Messagings notes OpenStack uses multiple queues within single RabbitMQ instance OpenStack messages traffic is not intensive OpenStack doesn't send broadcast messages HA for MQ should be configured separately

nova-scheduler "nova-scheduler is a daemon, which determines, on which compute host the request should run."

nova-scheduler: users' demand provision VM to particular host provision VMs of the particular tenant to isolated hosts provision all VMs on different hosts provision VMs to "higher density" hosts

nova-scheduler: available schedulers Scheduler Description Chance Simple Filter Multi Picks a host that is up at random Picks a host that is up and has the fewest running instances Picks the best-suited host which satisfies selected filter A scheduler that holds multiple subschedulers

nova-scheduler: filtering

nova-scheduler: filters Filter affinity availability zone core ram json Description Same host or different host Least cost inside selected availability zone Least CPU core utilization Only return hosts with sufficient RAM Allows simple JSON based grammar. Can be used to build custom schedulers.

nova-scheduler: filters Filters are statically configured in nova.conf Multiple filters can be specified It is possible to create custom filter o o Inherit from BaseHostFilter class override host_passes(self, host_state, filter_properties)

nova-scheduler: weights and costs

nova-scheduler: weights and costs Cost - integer value Every compute host can have several cost functions associated with it If no cost functions associated - use default from nova.conf weight = sum(cost i + weigth_fn i )

nova-scheduler: summary Allow to tweak provisioning by adjusting filters, cost and weights Still doesn't cover all customer demands - exposes framework for building custom schedulers instead

Questions How does OpenStack understand that specific request can be executed by the user? How to get a status for a requested server? Where it will come from? What is the difference between rpc.call vs rpc.cast? How to create a filter, which will determine servers with 8GB to 16GB RAM available?

nova-compute "nova-compute is a worker daemon, which primarily creates and terminates VMs via hypervisor API."

nova-compute

nova-compute: drivers Functionality is not 100% similar Exact "run_instance" flow depends on driver implementation Most of the features are tested on KVM

Glance "The Glance project provides services for discovering, registering, and retrieving virtual machine images."

Glance summary Image-as-a-service Can use multiple back-ends for image storage Supports multiple image formats

Glance architecture

Glance capabilities CRUD images Search images via filters o o o o o name container format disk format size_min, size_max status Caches images o o o o o uses SQLite or FS that supports xattrs for caching queues images for prefetching prefetches images prunes images cleans invalid cache entries

Glance image formats Disk Format raw vhd vmdk vdi iso qcow2 aki ari ami Description This is an unstructured disk image format This is the VHD disk format, a common disk format used by virtual machine monitors from VMWare, Xen, Microsoft, VirtualBox, and others Another common disk format supported by many common virtual machine monitors A disk format supported by VirtualBox virtual machine monitor and the QEMU emulator An archive format for the data contents of an optical disc (e.g. CDROM). A disk format supported by the QEMU emulator that can expand dynamically and supports Copy on Write This indicates what is stored in Glance is an Amazon kernel image This indicates what is stored in Glance is an Amazon ramdisk image This indicates what is stored in Glance is an Amazon machine image

Fetching image from glance 1. GET http://<glance-url>/images/<id> 2. If image can be found, API returns image-uri 3. nova-compute passes image-uri to hypervisor driver 4. hypervisor driver fetches image directly from glance back-end store using image-uri

Custom image creation 1. Get installation ISO 2. Create VM (qemu-img create) 3. Start VM and connect to it via VNC console a. Install image without LVM b. Create default iptables rules c. Install and configure cloud-init d. With cloud-init configure image 4. Prepare image for OpenStack a. Extract root partition, kernel and ramdisk b. cleanup c. package

Network configuration flow 1. Allocate MAC addresses 2. Allocate IPs (for each network) 3. Associate IPs with VMs (DB) 4. Setup network on host a. Update DHCP config b. Initialize gateway c. VPN configuration (optional) 5. Update networking info in DB

nova-network "nova-network is a worker daemon which performs tasks to manipulate network via external commands."

nova-network responsibilities Allocate and configure network via network manager o o o FlatManager FlatDHCPManager VlanManager Manage Floating IPs Manage Security groups

FlatManager

FlatManager Supports only single network Doesn't do any bridge/vlan creation The bridge needs to be manually created on all hosts Compute host attempts to inject network settings into /etc/network/interfaces

FlatDHCPManager

FlatDHCPManager Improvement of FlatManager Stars up 1 DHCP server to give out addresses Never injects network settings into guest Manages bridges

VlanManager

VlanManager features Creates host-managed VLAN for each project Requires switch that supports VLAN tagging (IEEE802.1Q) Each project gets own subnet (VPN is required to access VMs via private IPs) DHCP server is running for each subnet All instances belonging to one project are bridged into the same VLAN for that project

CloudPipe

Floating IPs Shared pool of public IP addresses Each user gets a quota of how many IPs to use Managed by admin

Floating IPs traffic

Assigning Floating IPs OpenStack Admin Dedicate floating IPs to cluster OpenStack User 1. Allocate public IP for tenant within given quota 2. Associate public IP with VM a. Find host b. Add IP address to public network interface of the host c. NATting all network traffic via associated floating IP

Security Groups

Security Groups Security group is a named collection of network access rules User can select multiple security groups during VM creation If no security groups specified - default is selected Security groups are applied on the host node

nova-volume "nova-volume manages the creation, attaching and deattaching of persistent volumes to compute instances"

nova-volume summary Optional iscsi solution which uses LVM Volume can be attached only to 1 instance at a time Persistent volumes keep their state independent of instances Within single OpenStack deployment different storage providers cannot be used

nova-volume drivers iscsi Xen Storage Manager Nexenta NetApp SAN

END PREVIEW Bootcamp for OpenStack www.mirantis.com/training