Deployment of Private, Hybrid & Public Clouds with OpenNebula



Similar documents
Building Clouds with OpenNebula 2.2 and StratusLab

Open Source Cloud Computing Management with OpenNebula

Building Clouds with OpenNebula 3.2

OGF25/EGEE User Forum Catania, Italy 2 March 2009

VM Management for Green Data Centres with the OpenNebula Virtual Infrastructure Engine

The OpenNebula Cloud Platform for Data Center Virtualization

OpenNebula Open Souce Solution for DC Virtualization

OpenNebula Open Souce Solution for DC Virtualization

OpenNebula Open Souce Solution for DC Virtualization. C12G Labs. Online Webinar

Introduction to Cloud Computing

OpenNebula The Open Source Solution for Data Center Virtualization

Building Clouds with OpenNebula 3.4

Getting Started Hacking on OpenNebula

Cloud Computing Architecture with OpenNebula HPC Cloud Use Cases

Virtual Machine Management with OpenNebula in the RESERVOIR project

IaaS Cloud Architectures: Virtualized Data Centers to Federated Cloud Infrastructures

Why is a good idea to use OpenNebula in your VMware Infrastructure?

OpenNebula An Innovative Open Source Toolkit for Building Cloud Solutions

Open Cloud Day.

Elastic Management of Cluster based Services in the Cloud

OpenNebula 4.4 Administration Guide. OpenNebula Project

The OpenNebula Standard-based Open -source Toolkit to Build Cloud Infrastructures

Scheduler in Cloud Computing using Open Source Technologies

Architecture des plates-formes IaaS Etat des lieux et perspectives

Cloud Computing for Control Systems CERN Openlab Summer Student Program 9/9/2011 ARSALAAN AHMED SHAIKH

Cloud Implementation using OpenNebula

Release Notes for Fuel and Fuel Web Version 3.0.1

Cloud Models and Platforms

Building a Private Cloud Cloud Infrastructure Using Opensource

Building Storage Service in a Private Cloud

Deploying Business Virtual Appliances on Open Source Cloud Computing

CernVM Online and Cloud Gateway a uniform interface for CernVM contextualization and deployment

Plug-and-play Virtual Appliance Clusters Running Hadoop. Dr. Renato Figueiredo ACIS Lab - University of Florida

THE EUCALYPTUS OPEN-SOURCE PRIVATE CLOUD

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

Solution for private cloud computing

Virtualization & Cloud Computing (2W-VnCC)

OpenNebula Cloud Platform for Data Center Virtualization

OpenNebula Leading Innovation in Cloud Computing Management

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

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

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

OpenNebula 4.12 Design and Installation Guide

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

ovirt self-hosted engine seamless deployment

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

Lecture on Cloud Computing. Course 10. Academic cloud systems

Mirantis

Operating Systems Virtualization mechanisms

Deploy XenApp 7.5 and 7.6 and XenDesktop 7.5 and 7.6 with Amazon VPC

VX 9000E WiNG Express Manager INSTALLATION GUIDE

THE CC1 PROJECT SYSTEM FOR PRIVATE CLOUD COMPUTING

How To Run A Cloud Server On A Server Farm (Cloud)

Web Application Firewall

VMware Data Recovery. Administrator's Guide EN

Amazon Elastic Beanstalk

ovirt: Open Your Virtual Data Center

Install Guide for JunosV Wireless LAN Controller

Cloud.com CloudStack Community Edition 2.1 Beta Installation Guide

LSKA 2010 Survey Report I Device Drivers & Cloud Computing

Hadoop on OpenStack Cloud. Dmitry Mescheryakov Software

FleSSR Project: Installing Eucalyptus Open Source Cloud Solution at Oxford e- Research Centre

How To Create A Cloud Based System For Aaas (Networking)

Postgres on OpenStack

Cloud Security Overview

Automated Configuration of Open Stack Instances at Boot Time

Marco Mantegazza WebSphere Client Technical Professional Team IBM Software Group. Virtualization and Cloud

Aerohive Networks Inc. Free Bonjour Gateway FAQ

SUSE Manager in the Public Cloud. SUSE Manager Server in the Public Cloud

Building a big IaaS cloud with Apache CloudStack

RED HAT ENTERPRISE VIRTUALIZATION

INTRODUCTION TO CLOUD MANAGEMENT

Aneka Dynamic Provisioning

Private Cloud in Educational Institutions: An Implementation using UEC

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

Sistemi Operativi e Reti. Cloud Computing

Windows Template Creation Guide. How to build your own Windows VM templates for deployment in Cloudturk.

Deployment Guide: Unidesk and Hyper- V

Opsview in the Cloud. Monitoring with Amazon Web Services. Opsview Technical Overview

Testing New Applications In The DMZ Using VMware ESX. Ivan Dell Era Software Engineer IBM

Using Open Source Virtualization Technology In Computer Education. SUNY IT Master's Project By: Ronny L. Bull

Migrating to ESXi: How To

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

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

Hypervisor Competitive Differences: Beyond the Data Sheet. Chris Wolf Senior Analyst, Burton Group

Η υπηρεσία Public IaaS ΕΔΕΤ ανάπτυξη και λειτουργία για χιλιάδες χρήστες

vsphere Private Cloud RAZR s Edge Virtualization and Private Cloud Administration

Red Hat enterprise virtualization 3.0 feature comparison

ONE Cloud Services Secure Cloud Applications for E-Health

Cloud Computing. Adam Barker

Amazon Web Services Primer. William Strickland COP 6938 Fall 2012 University of Central Florida

Transcription:

EL / LAK (FOSS) 2010 May 14th, 2010 Deployment of Private, Hybrid & Public Clouds with OpenNebula University Complutense of Madrid

The Anatomy of an IaaS Cloud Deployment of Private, Hybrid & Public Clouds with OpenNebula VM VM VM VM VM VM Cloud API (web) Service Service Virtual Infrastructure Manager (VIM) Network Image Repositories (Storage) Physical Infrastructure

Why a Virtual Infrastructure Manager Manager? VMs are great!!...but something more is needed Where did/do I put my VM? (scheduling & monitoring) How do I provision a new cluster node? (clone & context) What MAC addresses are available? (networking) Provides a uniform view of the resource pool Life-cycle management and monitoring of VM The VIM integrates Image, Network and Virtualization VM VM VM VM OpenNebula (VIM) hypervisor hypervisor hypervisor hypervisor

Overview of an OpenNebula Cloud Deployment of Private, Hybrid & Public Clouds with OpenNebula Executes the OpenNebula Services Usually acts as a classical cluster front-end Repository of VM images Multiple backends (LVM, iscsi..) Modular components to interact with the cluster services Types: storage, monitoring, virtualization and network Provides physical resources to VMs Must have a hypervisor installed

The Storage Subsystem Deployment of Private, Hybrid & Public Clouds with OpenNebula Multiple storage backends out of the box: NFS, SSH, LVM Easily extended through plugins: parallel-scp, bittorrent, image proxys SAN - iscsi

The Network Subsystem OpenNebula management operations uses a ssh connections OpenNebula uses bridge networking NAT, firewalling and other services are configured with hooks Networks are isolated at layer 2 (IEEE 802.1Q, ebtables) You can put any TCP/IP service as part of the VMs (e.g. DHCP, nagios...)

EL / LAK (FOSS) 2010 May 14th, 2010 PART II: Using your Private Cloud University Complutense of Madrid

Using the Private Cloud: Virtual Networks A Virtual Network in OpenNebula Defines a separated MAC/IP address space to be used by VMs Each virtual network is associated with a physical network through a bridge Virtual Networks can be isolated (at layer 2 level) with ebtables and hooks Virtual Network definition Name, of the network Type Fixed, a set of IP/MAC leases Ranged, defines a network range Bridge, name of the physical bridge in the physical host where the VM should connect its network interface.

Using the Private Cloud: Virtual Networks Using a Virtual Network with your VMs Define NICs attached to a given virtual network. The VM will get a NIC with a free MAC in the network and attached to the corresponding bridge #A VM with two interfaces each one in a different vlan NIC=[NETWORK="Blue LAN"] NIC=[NETWORK="Red LAN"] #Ask for a specific IP/MAC of the Red vlan NIC=[NETWORK="Red LAN", IP=192.168.0.3] Prepare the VM to use the IP. Sample scripts to set the IP based on the MAC are provided for several Linux distributions. IP-MAC address correspondence IP: 10.0.1.2 MAC: 02:01:0A:00:01:02 oned.conf IP Address

Using the Private Cloud: Virtual Machines A Virtual Machine in OpenNebula A capacity in terms memory and CPU A set of NICs attached to one or more virtual networks A set of disk images, to be transfered to/from the execution host. A state file (optional) or recovery file, with the memory image of a running VM plus some hypervisor specific information. Virutal Machines are defined in a VM template Each VM has an unique ID in OpenNebula the VM_ID All the files (logs, images, state files...) are stored in $ONE_LOCATION/var/<VM_ID>

Using the Private Cloud: Virtual Machines Context contains data to be passed to the VM at boot time Boot process of the VM: mount iso Source context.sh In this example it will execute init.sh so you can try anything

Using the Private Cloud: Virtual Machines Tunning the placement of VMs with the Match-making scheduler First those hosts that do not meet the VM requirements are filtered out (REQUIREMENTS) RANK is evaluated for the remaining hosts That with the highest RANK is used for the VM Placement policies are specified per VM #--------------------------------------- # Scheduler #--------------------------------------- # Use Host Monitor attributes REQUIREMENTS = "Bool_expression_for_reqs" RANK = "Arith_expression_to_rank_hosts" Hands on... try a simple VM pinning REQUIREMENTS = "HOSTNAME=\...\ " Hands on... try a simple load-aware policy RANK = FREECPU

Using the Private Cloud: Virtual Machines Preparing a VM to be used with OpenNebula You can use any VM prepared for the target hypervisor Hint I: Place the vmcontext.sh script in the boot process to make better use of vlans Hint II: Do not pack useless information in the VM images: swap. OpenNebula can create swap partitions on-the-fly in the target host Scratch or volatile storage. OpenNebula can create plain FS on-thefly in the target host Hint III: Install once and deploy many; prepare master images Hint IV: Do not put private information (e.g. ssh keys) in the master images, use the CONTEXT Hint V: Pass arbitrary data to a master image using CONTEXT

PART III: Using External Cloud Providers (Hybrid EL / LAK (FOSS) 2010 Cloud) May 14th, 2010 University Complutense of Madrid

Hybrid Cloud Computing: Overview VMs can be local or remote VM connectivity has to be configured, usually VPNs External Clouds are like any other host Placement constraints

Configuring the EC2 Hybrid Cloud Driver Amazon EC2 cloud is manage by OpenNebula as any other cluster node You can use several accounts by adding a driver for each account (use the arguments attribute, -k and -c options). Then create a host that uses the driver You can use multiple EC2 zones, add a driver for each zone (use the arguments attribute, -u option), and a host that uses that driver You can limit the use of EC2 instances by modifying the IM file $ onehost create ec2 im_ec2 vmm_ec2 tm_dummy $ onehost list ID NAME RVM TCPU FCPU ACPU TMEM FMEM STAT 0 84.21.x.y 0 200 200 200 2017004 1667080 on 1 84.21.x.z 1 200 200 200 2017004 1681676 on 2 ec2 0 500 500 500 8912896 8912896 on

Using the EC2 Hybrid Cloud Virtual Machines can be instantiated locally or in EC2 The template must provide a description for both instantiation methods. The EC2 counterpart of your VM (AMI_ID) must be available for the driver account The EC2 VM template attribute: EC2 = [ AMI = "ami_id for this VM", KEYPAIR = "the keypair to use the instance", AUTHORIZED_PORTS = "ports to access the instance", INSTANCETYPE = "m1.small...", ELASTICIP = "the elastic ip for this instance", CLOUD = "host (EC2 cloud) to use this description with" ]

EL / LAK (FOSS) 2010 May 14th, 2010 PART IV: Share your Cloud! (Cloud Interfaces) University Complutense of Madrid

The Public Cloud: Overview Deployment of Private, Hybrid & Public Clouds with OpenNebula You can use multiple interfaces for the Cloud Transparent to your setup: Hypervisor Storage Model Hybrid configuration Client tools uses EC2 libraries Potential integration with EC2 tools (EC2_URL problems for example) Provided in the OpenNebula distribution Includes a simple S3 replacement Supports HTTP and HTTPS protocols EC2 authentication based on OpenNebula credentials Public Cloud users need an OpenNebula account

Configuring the Public Cloud You have to define the correspondence between types (simple) and local instantiation of VMs (hard, you should be fine by now) Capacity allocated by this VM type (CPU, MEMORY) Your cloud requirements, e.g. force to use a given kernel (OS) or place public VMs in a given set of cluster nodes (REQUIREMENTS) The network used by Public VMs (NIC) VM Types are defined in econe.conf. Templates for the VM templates are in $ONE_LOCATION/etc/ec2query_templates Templates for VM Types are erb files <% Ruby code here >, you should not need to modify that.

Using the Public Cloud The econe-tools are a subset of the functionality provided by the onevm utility, and resembles the ec2-* cli Image related commands are: econe-upload, place an image in the Cloud repo and returns ID econe-describe-images, lists the images econe-register, register an image not really needed in 1.4 Instance related commands are: econe-run-instances, starts a VM using an image ID econe-describe-instances, lists the VMs econe-terminate-instances, shutdowns a VM User authentication is based in the OpenNebula credentials AWSAccessKeyId is OpenNebula's username AWSSecretAccessKey is OpenNebula's password

EL / LAK (FOSS) 2010 May 14th, 2010 PART V: Customizing your Cloud University Complutense of Madrid

Customizing and Extending your Cloud You can customize your cloud by: Tunning or adapting the transfer operations to your storage back-end Adding new monitorization probes to improve the VM placement Adjusting VM operations to your hypervisor installation Trigger custom actions on specific VM events (e.g. on VM creation update the accounting DB or on VM shutdown send an email ) You can extend your cloud by: Developing new drivers for other hypervisors Developing new drivers for other storage back-ends Developing Cloud applications using the OpenNebula API or the Cloud APIs OpenNebula is very scripting friendly, drivers can be written in any language. You can modify the current ones or use them as templates for new ones.