Ganeti, "how we did it"



Similar documents
Ganeti. Private Cloud as Google does it. Helga Velroyen Linuxtag Berlin, May 9th, 2014

Ganeti is a software stack that allows easily managing a collection of

Google

Comparing Ganeti to other Private Cloud Platforms. Lance Albertson

Comparing Open Source Private Cloud (IaaS) Platforms

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

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

Unveiling ~okeanos: A public cloud IaaS service coming from the depths of the GRNET's DataCenter facilities

Introduction to OpenStack

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

2) Xen Hypervisor 3) UEC

Develop a process for applying updates to systems, including verifying properties of the update. Create File Systems

Welcome to the IBM Education Assistant module for Tivoli Storage Manager version 6.2 Hyper-V backups. hyper_v_backups.ppt.

How To Build An Iaas Cloud Cloud (Geneo) For Ganet.Org

Virtualization Management the ovirt way

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)

Citrix XenServer Backups with Xen & Now by SEP

CLOUD COMPUTING & SECURITY -A PRACTICAL APPROACH

GRNET-4. Offering Cloud Services to the Greek R&E Community. Yannis Mitsos 1 ymitsos@noc.grnet.gr, Panos Louridas 1 louridas@grnet.gr.

ovirt Introduction James Rankin Product Manager Red Hat Virtualization Management the ovirt way

SUSE Cloud 5 Private Cloud based on OpenStack

Building a real world public cloud from the ground up

VIRTUALIZATION INTROSPECTION SYSTEM ON KVM-BASED CLOUD COMPUTING PLATFORMS. Advisor: Software Security Lab.

Citrix XenServer Backups with SEP sesam

Citrix XenDesktop Backups with Xen & Now by SEP

Mobile Cloud Computing T Open Source IaaS

Regional SEE-GRID-SCI Training for Site Administrators Institute of Physics Belgrade March 5-6, 2009

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

Making a Smooth Transition to a Hybrid Cloud with Microsoft Cloud OS

October Gluster Virtual Storage Appliance User Guide

KVM, OpenStack, and the Open Cloud

Solution for private cloud computing

Lightweight Virtualization: LXC Best Practices

OpenSAF and VMware from the Perspective of High Availability

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

Course 6331A: Deploying and Managing Microsoft System Center Virtual Machine Manager

Veritas InfoScale 7.0 Virtualization Guide - Linux

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

Onboarding VMs to Cisco OpenStack Private Cloud

Introduction to Big data. Why Big data? Case Studies. Introduction to Hadoop. Understanding Features of Hadoop. Hadoop Architecture.

SUSE Manager. A Comprehensive Linux Server Management the Linux Way. Name. Title

OpenNebula Open Souce Solution for DC Virtualization

Linux/Open Source and Cloud computing Wim Coekaerts Senior Vice President, Linux and Virtualization Engineering

Migration and Building of Data Centers in IBM SoftLayer with the RackWare Management Module

Linux Virtualization Nesting and Management

Cloud Computing Architecture with OpenNebula HPC Cloud Use Cases

Introduction to ovirt

Hyper-V R2: What's New?

Citrix XenServer Backups with Xen & Now by SEP

OpenNebula Open Souce Solution for DC Virtualization

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

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

FOR SERVERS 2.2: FEATURE matrix

Integration and Automation with Lenovo XClarity Administrator

High Availability & Disaster Recovery Development Project. Concepts, Design and Implementation

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

A Complete Open Cloud Storage, Virt, IaaS, PaaS. Dave Neary Open Source and Standards, Red Hat

RED HAT ENTERPRISE VIRTUALIZATION FOR SERVERS: COMPETITIVE FEATURES

THE EUCALYPTUS OPEN-SOURCE PRIVATE CLOUD

CA ARCserve Replication and High Availability Deployment Options for Hyper-V

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

High-Availability Using Open Source Software

Red Hat Enterprise linux 5 Continuous Availability

Migration and Building of Data Centers in IBM SoftLayer with the RackWare Management Module

Open Source Cloud Computing Management with OpenNebula

Windows Server 2003 Migration Guide: Nutanix Webscale Converged Infrastructure Eases Migration

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

Red Hat enterprise virtualization 3.0 feature comparison

Getting Started Hacking on OpenNebula

Course Outline: Course 6331: Deploying and Managing Microsoft System Center Virtual Machine Manager Learning Method: Instructor-led Classroom Learning

Implementing and Managing Windows Server 2008 Clustering

Installing and Administering VMware vsphere Update Manager

Cloud Server. Parallels. Key Features and Benefits. White Paper.

Outline. MCSA: Server Virtualization

KVM & OpenVZ virtualization based IaaS Open Source Cloud Virtualization Platforms: OpenNode, Proxmox VE

Date: December 2009 Version: 1.0. How Does Xen Work?

IOS110. Virtualization 5/27/2014 1

About the VM-Series Firewall

Product Spotlight. A Look at the Future of Storage. Featuring SUSE Enterprise Storage. Where IT perceptions are reality

OPEN SOURCE VIRTUALIZATION TRENDS. SYAMSUL ANUAR ABD NASIR Warix Technologies / Fedora Community Malaysia

VMware vsphere-6.0 Administration Training

Citrix XenServer Design: Designing XenServer Network Configurations

How To Compare Cloud Computing To Cloud Platforms And Cloud Computing

Introduction. Setup of Exchange in a VM. VMware Infrastructure

KVM, OpenStack, and the Open Cloud

Deploying and Managing Microsoft System Center Virtual Machine Manager

Transcription:

A cluster virtualization manager. Guido Trotter <ultrotter@google.com> Google, Ganeti, Debian Ganeti, "how we did it" 2010-2011 Google Use under GPLv2+ or CC-by-SA Some images borrowed/modified (with permission) from Lance Albertson Ganeti at FOSDEM 2012 Saturday, 14:00 Janson, Internals (here and now) Sunday, 10:00 Chavanne, Getting Started (tomorrow morning) Outline Introduction to Ganeti Ganeti internals Customizing Ganeti What can it do? Manage clusters of physical machines Deploy Xen/KVM/lxc virtual machines on them Live migration Resiliency to failure (data redundancy over DRBD) Cluster balancing Ease of repairs and hardware swaps Ideas Making the virtualization entry level as low as possible Easy to install/manage

No specialized hardware needed (eg. SANs) Lightweight (no "expensive" dependencies) Scale to enterprise ecosystems Manage symultaneously from 1 to ~200 host machines Access to advanced features (drbd, live migration) Be a good open source citizen Design and code discussions are open External contributions are welcome Cooperate with other "big scale" Ganeti users Terminology Node: a virtualization host Nodegroup: an omogeneous set of nodes Instance: a virtualization guest Cluster: a set of nodes, managed as a collective Job: a ganeti operation Technologies Linux and standard utils (iproute2, bridge-utils, ssh) KVM/Xen/LXC DRBD, LVM, or SAN Python (plus a few modules) socat Haskell (optional)

Node roles (management level) Master Node runs ganeti-masterd, rapi, noded and confd Master candidates have a full copy of the config, can become master run ganeti-confd and noded Regular nodes cannot become master get only part of the config Offline nodes, are in repair Node roles (instance hosting level) VM capable nodes can run virtual machines Drained nodes are being evacuated Offlined nodes, are in repair Ganeti Components Main Ganeti components, and how they communicate:

Ganeti Core Structure Core source structure: Jobs List of opcodes, executed in sequence Submitted by the cli, or via rapi, or by other jobs Opcodes Cluster business logic Implemented in cmdlib

RPCs Per-node business logic Implemented in backend (using bdev, hypervisor, runcmd) Config Tree of "objects" with all the cluster entities Replicated to all master candidates

ssconf Flat-file export of parts of the config Available on all nodes Customizing Ganeti Most common customizations: Altering hypervisor behavior Adding an hypervisor parameter Altering cluster business logic Adding an option to the cluster business logic Adding a backend storage Adding a new hypervisor Altering hypervisor behavior (simple) Edit the logic in your hypervisor's file For example add a command line flag to kvm, or a config value for xen Adding an hypervisor parameter (simple) Add the parameter in constants.py (eg: HV_KVM_SPICE_USE_VDAGENT) Edit the logic in your hypervisor's file eg: migration bandwith and downtime control: commit e43d4f9f Altering cluster business logic (medium) Change the logic in cmdlib.py Be careful w.r.t. locking (do you need more? less?) Add any rpc to backend.py, rpc_defs.py, server/noded.py If the hypervisor interface changes, update all hypervisors

Adding opcode level options (medium) Add the option field to opcodes.py, use the right type (see ht.py) Use the option in cmdlib (see "altering cluster business logic") Add the command line flag to cli.py and the right utility in client/* Adding a backend storage (hard) Implement the BlockDev interface in bdev.py Add the logic in cmdlib (eg. migration, verify) Add the new storage type name to constants Add any parameter the new storage needs to constants Modify objects.disk to suppport your storage type eg: adding support for RBD: commit 7181fba Adding a new hypervisor (medium) "just" implement the hypervisor API (easy) Add the hypervisor name and parameters to contants.py Alter cmdlib as needed for supporting it Alter the hypervisor API as needed for supporting it From Development to Deployment Please come tomorrow, at 10:00 in Chavanne Latest Features Practical usage examples How to bring it to enterprise level People running Ganeti Google (Corporate Computing Infrastructure) grnet.gr (Greek Research & Technology Network) osuosl.org (Oregon State University Open Source Lab) fsffrance.org (according to docs on their website and trac)... Conclusion Check us out at http://code.google.com/p/ganeti. Or just search for "Ganeti". Try it. Love it. Improve it. Contribute back (CLA required). Questions? Feedback? Ideas? Flames?

2010-2011 Google Use under GPLv2+ or CC-by-SA Some images borrowed/modified (with permission) from Lance Albertson