• No results found

PoS(EGICF12-EMITC2)007

N/A
N/A
Protected

Academic year: 2021

Share "PoS(EGICF12-EMITC2)007"

Copied!
7
0
0

Loading.... (view fulltext now)

Full text

(1)

PoS(EGICF12-EMITC2)007

Copyright owned by the author(s) under the terms of the Creative Commons Attribution-NonCommercial-ShareAlike Licence. http://pos.sissa.it

~okeanos IaaS

Evangelos Koukis1

GRNET

56 Mesogeion Ave, Athens, Greece E-mail: [email protected] Panos Louridas

GRNET

56 Mesogeion Ave, Athens, Greece E-mail: [email protected]

Abstract

This paper introduces ~okeanos, an Iaas platform aiming to deliver advanced computing and storage services to the Greek research and academic community. ~okeanos builds on diverse opensource technologies (Linux/KVM, Google Ganeti, RabbitMQ, Python/Django, Ceph/RADOS) and combines them with custom orchestration software to enable quick, easy and secure access to virtualized resources. Users may build and manage their own isolated, virtual infrastructure inside GRNET's datacenters, using ~okeanos-provided components over a simple, elegant Web UI: Virtual Machines, Virtual Networks (public IPv4/IPv6 and isolated private Ethernets), and Virtual Disks (which may be attached/detached and cloned from existing Images). The paper focuses on the rationale behind ~okeanos, presents current and upcoming features, and discusses its key architectural decisions.

EGI Community Forum 2012 / EMI Second Technical Conference

,

Munich, Germany

26-30 March, 2012

(2)

PoS(EGICF12-EMITC2)007

~okeanos IaaS Evangelos Koukis

2

1. Introduction

This paper presents the design of ~okeanos [1], an IaaS cloud offering virtualized compute and storage resources. It is developed by GRNET, the Greek Research and Technology Network, to be offered to the Greek Research and Academic community. The software powering ~okeanos [2] is available via opensource licenses. ~okeanos offers to its users access to Virtual Machines, Virtual Ethernets, Virtual Disks, and Virtual Firewalls, over a simple web-based UI. It was conceived for easy and secure access to GRNET's datacenters, focusing on user friendliness and simplicity, while being able to scale up to the thousands (of Virtual Machines, users, terabytes of storage).

2. Service description

The goal of the ~okeanos project is to deliver production-quality IaaS to GRNET's direct and indirect customers, IT departments of connected institutions and students/researchers respectively. GRNET operates a working alpha version since July 2011; the alpha offering as of August 2012 comprises ~1300 VMs and ~940 users. The operation of the VMs and the software they run is the responsibility of their owners, as with all Infrastructure-as-a-Service clouds. Based on user feedback the VMs are used for a variety of purposes, including network-facing services (Web servers, FTP and file servers, code repositories), long-running computational workloads (HPC workloads, parallel computing with MPI), deployment of experimental distributed applications for research in distributed systems, and virtual lab environments for education.

The ~okeanos service is a jigsaw puzzle of many pieces:

 Compute/Network Service (codename: cyclades)

 File Storage Service (codename: pithos+)

 Identity Management (codename: astakos)

 Image Registry (codename: plankton)

 Billing Service (codename: aquarium)

 Volume Storage Service (codename: archipelago)

which are combined with a number of activities (monitoring, issue handling, helpdesk operations) to deliver the end-user experience. It goes beyond commercial IaaS providers in several ways: Amazon EC2, and comparable commercial offerings, are not an end-user service, while ~okeanos is designed to be used by people with little computer experience. At the same time it aims to meet the needs of advanced users in technical departments by offering persistent, long-term servers with custom networking capabilities.

The software underlying ~okeanos, called Synnefo, is custom cloud management software.

It encompasses a number of distinct components, all sharing a single installation and

(3)

PoS(EGICF12-EMITC2)007

~okea decis releas

3. De

3.1 C backe API a re-inv in pr provi devel low-l physi API allow clean is as guest acces Users and d RAM anos IaaS ions to: a) b se all of the s

esign and I

Cyclades: Co Cyclades is end for VM at the fronten vent the whe roduction en ide VMs to lopment, con Basing our w level VM m ical nodes, an is orthogona wing us to foc n end-user AP follows: With ~okean ts on Debian ssible by the s have full co destroy them M and system uild on exist software und

Implementa

ompute/Netw the Comput cluster mana nd. We opted eel; Ganeti is nvironments, o Network O ntributing pat work on Gan management nd handling al to VM ha cus on creati PI implemen nos, users ha n hosts and end-user ov ontrol over t m. For the con m disk, and o ting software derlying ~oke

ation

work Servic te/Network p agement wit d to reuse G s a scalable a and GRNE Operation C tches upstrea neti, we build operations, of node dow andling at th ing a custom ntation, and a Figure ave access to using Googl ver the Web their VMs: th nfiguration o operating sys 3 e whenever p eanos as ope ce part of ~okea th a Python/D aneti as a VM and proven s ET already h Centers. The am. d on a solid, e.g., handli wntimes; the he backend. m cloud mana an intuitive W 1: Synnefo s o VMs power le Ganeti fo or programm hey can creat of their VMs tem from pr

possible, b) t ensource.

anos. Its desi Django impl M managem software infr had long ex e ~okeanos mature core ing of VM design and im Building on agement laye Web-based U software stac red by KVM r VM cluste matically (Op te new ones, s they can se e-defined Im target commo ign combine lementation o ment solution rastructure fo xperience wi team is inv e which unde creations, m mplementati n Ganeti gav er, accesible UI. Overall, t ck M, running Li er manageme penStack Co , start them, elect number mages includ Evangelos K odity hardwa s a Google G of the user-v in an effort or managing ith it, using volved in G ertakes most migrations a ion of the end ve us a head

over a cons the software

nux and Win ent. The VM ompute API shutdown, re r of CPUs, s ing popular Koukis are, c) Ganeti visible not to g VMs g it to Ganeti of the among d-user d start, istent, e stack ndows Ms are v1.1). eboot, size of Linux

(4)

PoS(EGICF12-EMITC2)007

~okea distro conso intero as ye frame maxim async platfo throu netwo confi API a DRD every deplo for ha 3.2 A block devic Volum anos IaaS os (Fedora, D ole over VNC The REST operate with et unsuppor ework, from The ~okean mum repon chronous cal The networ orm-provided ugh a roll-yo orks, so that gurations. T and the UI.

In the curre DB [3]; VMs yday operati oyment, hand andling stora Archipelago: Every Volu ks. The stora ce for use by mes and the

Debian, Ubu C [4] for trou API for VM 3rd party to rted function scratch. nos UI is wr nsiveness. It ls over the A Figure rking functio d firewalling our-own firew t they constr The networki ent, alpha d survive nod ions tasks dling of VM age Volumes : Volume Sto ume inside a age of the ac y each VM. storage of ac untu) and MS ubleshooting M manageme ools and clie nality. It ha ritten in Java t is just an API. e 2: Synnefo onality inclu g either thro wall inside th ruct arbitrary ing functiona deployment, e downtime, while runni M storage wil s for VMs as orage Servic VM can be ctual blocks Bridging the ctual blocks 4 S-Windows g. ent, being Op ent libraries. as been imp ascript/jQuer nother API platform, fro udes dual IPv ough an arra

he VM. Use y network to ality is expo

VM disk st , e.g. for plan ing in prod ll be underta a hierarchy ce thought of is orthogon e gap betwee is Archipela Server 2008 penStack Co GRNET has plemented in ry and runs client; all om the UI to v4/IPv6 con ay of pre-co ers may crea

pologie, e.g. orted all the

torage is via nned upgrad duction. In aken by Arch of snapshots as a linearly nal to the tas en the VMs ago: a custom R2. There i ompute v. 1. s added cust n Python, u entirely on t UI operatio o the backend nnectivity for onfigured fir ate multiple p ., to deploy way from th a redundant es, or node f the next p hipelago: an s and clones. y addressable sk of exposi performing m storage han Evangelos K is an Out-of 1 compatibl om extensio using the D

the client sid ons happen d r each VM, rewall profil private, virtu VMs in mul he backend storage bas failure, facili phases of se ~okeanos se e set of fixe ing a single random acc ndling layer w Koukis f-Band e, can ns for Django de for with easy, les, or ual L2 lti-tier to the ed on itating ervice ervice d-size block cess to which

(5)

PoS(EGICF12-EMITC2)007

~okeanos IaaS Evangelos Koukis

5

handled volumes as set of distinct blocks in the backend, a process we call volumecomposition.

For the actual storage of blocks we are currently experimenting with RADOS [6], the distributed object store underlying the Ceph parallel filesystem, to solve the problem of reliable, fault-tolerant object storage through replication on multiple storage nodes. Archipelago itself is agnostic to the actual block storage backend.

3.3 Pithos+: File Storage Service

Pithos+ is GRNET's file storage service. It is an implementation of the OpenStack Object Storage API in Python and Django. At the backend, every file is stored as a collection of

content-addressable blocks; Using content-based addressing for blocks brings deduplication

(identical blocks of distinct files are stored only once) and efficient synchronization; a client

may identify the parts of files which have changed either locally or remotely, and upload or download only the modified parts. Pithos+ comes with a full set of Web-based, command-line and native clients, all making calls to the same API.

Pithos+ is an integral part of ~okeanos: Both system Images and custom, user-provided Images are files on Pithos+ and are registered with Plankton to become available for VM creation. Our goal is for Pithos+ to share the same storage backend with Archipelago, as described in greater detail in Section 4.

3.4 Plankton: Image Registry

Plankton is the Image Registry for ~okeanos. It is implemented as a very thin layer on top of Pithos+; every Image on Plankton is a file on a Pithos+ backend with special metadata. At the frontend, Plankton implements the OpenStack Glance API; at the backend it queries an existing Pithos+ backend. Our current production service runs Plankton and Pithos+ on a single, unified backend: users may synchronize their Images with ~okeanos using the Pithos+ clients, then register them with Plankton, with zero data movement.

3.5 Astakos: Identity Management

Astakos is the identity management service for ~okeanos; it provides the single point of authentication and authorization for the two user-visible ~okeanos services, Cyclades and Pithos+, enabling ~okeanos users to register, login, and handle platform-wide authentication tokens.

Astakos has been designed to support several distinct identity providers at the backend. Currently, it supports local user accounts, Twitter-based authentication, and federated authentication via Shibboleth.

3.6 Aquarium: Billing Service

Aquarium is the common accounting and billing substrate for ~okeanos, currently under development. It receives events from Cyclades, Pithos+, and Astakos, keeping track of resource

usage by individual users and billing them in credits. In subsequent deployments of the

(6)

PoS(EGICF12-EMITC2)007

~okea users of dis

4. Sy

Volum dynam a cop its in Volum handl Imag Archi speci Archi proce unifie imple anos IaaS , by assignin stinct resourc

ynergy

There is a d

mes, the virt mic entities, py of an exis nitial state. L me at this po Identifying ling storage e on Plankto ipelago. Spa fic Image. ipelago, repr ess complete The followin ed service fr ement Astako ng every use ces, e.g., VM duality betwe tual disks at instantiated sting Image. ater, the VM oint in time. this duality among all m on, which is awning a VM Freezing a resenting it s, the new Im ng figure sho om a single os, Archipela Figur er a number o Ms on Cyclad een Images, ttached to V from Image The VM fol M may be fro between Im major ~okean a virtual Fi M is cloning VM is ma as a File on mage is avail ows the syne API client (k ago, Pithos+ re 3: Synergy 6 of credits pe des or GBs on the template VMs. Images es. Spawning

llows its own

ozen, meanin mages and V nos compone le on Pithos g a Volume aking a sna n Pithos+, an lable for VM ergy between kamaki [5]) +, Plankton an y among ~ok eriodically an n Pithos+. es of OSs to s are static, g a VMis to n path, leadi ng a new Im olumes has ents: a VM o + with extra from the Sn apshot of it nd registering M creation on n all parts of to the variou nd Cyclades keanos comp nd charging o be deploye read-only fi create a new ng its Volum age is create led to a uni on Cyclades a metadata, a napshot corr ts correspon g it with Pla Cyclades. f ~okeanos w us Synnefo c : ponents Evangelos K them for the

d inside VM files, Volume w Volume for me diverging ed as a copy ified approac is created fro and a Snapsh responding t nding Volum ankton. Whe working toget components w Koukis eir use Ms and es are r it, as g from of its ch for om an hot on to this me on en this ther: a which

(7)

PoS(EGICF12-EMITC2)007

~okeanos IaaS Evangelos Koukis

7

5. Conclusions - Future Work

We have seen that it is possible to develop in-house a stable, scalable, and user-friendly IaaS, based on open standards. We will offer ~okeanos to the whole Greek research and academic community; all of the underlying software components [2] are made available under free software licenses, 2-clause BSD and the GPL.

Moreover, ~okeanos will be used as the underlying mechanism for a series of other, higher-level services. We are in the process of designing and developing novel PaaS and SaaS, exploiting ~okeanos-provided file handling, Image registration, and lightweight VM creation. We are also exploring the use of ~okeanos for established user groups (like EGI User Communities).

References

[1] https://okeanos.grnet.gr

[2] http://code.grnet.gr/projects/{synnefo, pithos, astakos, aquarium} [3] http://www.drbd.org

[4] RealVNC - VNC remote access and control technology. http://www.realvnc.com [5] http://code.grnet.gr/projects/kamaki

[6] Sage A. Weil, Andrew W. Leung, Scott A. Brandt, Carlos Maltzahn. RADOS: A Fast, Scalable, and Reliable Storage Service for Petabyte-scale Storage Clusters. Petascale Data Storage Workshop SC07, November, 2007.

References

Related documents

In addition to market definition, critical loss analysis can also be applied in horizontal merger control to investigate the unilateral price effects of proposed mergers. In such a

The Service Desk will record all support calls on this system detailing such elements as: Date of Call Receipt, Time of Call Receipt, Site, Client Code, Client Contact,

Neustar offers the Webmetrics Monitoring solution for user experience management as a full service offering for round-the-clock, round-the-globe monitoring of Website and

“Migration of the painted lady butterfly, Vanessa cardui, to north-eastern Spain is aided by African wind currents” in Journal of animal ecology, vol... Given the selective

disconcerting early days of the pandemic, the first two lines of Gorman’s poem ring true — the experience of awakening to a world in mourning, heavy clouds crowding the horizon,

Ames & Gough, a trusted risk and insurance advisor to law firms, conducted its fifth annual survey of Lawyers’ Professional Liability claims during the second quarter of 2015.

We, however, maintain a consistent set of saved dynalogs, by delivering a set of dynamic wedge treatments in the clinical mode using the same field size, energy, wedge angle,

Andrew Morgan - Project Officer for the Office of E-Health Standards and Services, Centers for Medicare and Medicaid Services , Department of Health and Human Services.. Jessica