001.StratusLab-DCI-Summer-School-Installation-Tutorial-3.pdf

25
1 StratusLab is co-funded by the European Community’s Seventh Framework Programme (Capacities) Grant Agreement INSFO-RI-261552 Deploying a StratusLab cloud DCI Summer School (Budapest, Hungary) 15 July 2011

Transcript of 001.StratusLab-DCI-Summer-School-Installation-Tutorial-3.pdf

Page 1: 001.StratusLab-DCI-Summer-School-Installation-Tutorial-3.pdf

1

StratusLab is co-funded by theEuropean Community’s Seventh

Framework Programme (Capacities)Grant Agreement INSFO-RI-261552

Deploying a StratusLab cloud

DCI Summer School (Budapest, Hungary)

15 July 2011

Page 2: 001.StratusLab-DCI-Summer-School-Installation-Tutorial-3.pdf

2

Presentation Outline

● Project overview and Goals

● StratusLab Cloud Distribution

● Reference Cloud Service

● Prerequisites

● Installation & Configuration

● Administration

● Conclusions

Page 3: 001.StratusLab-DCI-Summer-School-Installation-Tutorial-3.pdf

3

StratusLab Project

Goal● Create comprehensive, open-source,

IaaS cloud distribution● Focus on supporting grid services

Information● 1 June 2010—31 May 2012 (2 years)● 6 partners from 5 countries● Budget : 3.3 M€ (2.3 M€ EC)

Contacts● Site web: http://stratuslab.eu/ ● Twitter: @StratusLab● Support: [email protected]

CNRS (FR) UCM (ES)

GRNET (GR) SIXSQ (CH)

TID (ES) TCD (IE)

Page 4: 001.StratusLab-DCI-Summer-School-Installation-Tutorial-3.pdf

4

Primary Use Cases

Grid sites on top of cloud infrastructures● Bridge cloud and grid technologies● Understand technology gaps and implications from combining these

two approaches in the same environment● Demonstrate production level grid services on top of cloud

technologies

Cloud-like approaches for grid service provision● Dynamic management / Elasticity of computing resources● VO-based authentication and authorization for accessing cloud

resources

Page 5: 001.StratusLab-DCI-Summer-School-Installation-Tutorial-3.pdf

5

Grid and Cloud Integrations

Grid Resource Center

StratusLabDistribution

Private/PublicCloud

Cloud API and Service Manager API

Grid Services

PublicClouds

users

Page 6: 001.StratusLab-DCI-Summer-School-Installation-Tutorial-3.pdf

6

Target User Communities/ Application Domains

System Administrators● Will use the StratusLab distribution to deploy their own cloud

infrastructure● Manual installation

● Installation through the Quattor system

Grid Site administrators● Will use a StratusLab-based cloud infrastructure to deploy their Grid sites● Will re-use existing appliances with grid middleware or build their own images

End Users● Focus on Scientific applications (same as with Grid applications)● Bioinformatics community participates in the project (CNRS/IBCP). Early

adopters of StratusLab technology● Will run their applications either as Grid jobs or by accessing computing

resources directly from the cloud APIs.

Page 7: 001.StratusLab-DCI-Summer-School-Installation-Tutorial-3.pdf

7

So far, so good…

Series of public/preview releases of StratusLab distribution● Latest release: v1.0 (July 2011)● RPMs available from the StratusLab repo: http://yum.stratuslab.eu ● OpenNebula 2.2 core virtual machine manager

Public reference cloud service● Operated by GRNET● Provides access to external users. Requests send to [email protected]● Based on the latest at time StratusLab release

Appliance repository● Operated by TCD● Offers base OS and appliance images (pre-cooked with app-level software).● Is evolving towards a “Marketplace” of VM Appliances (registry of VM

metadata – actual images stored in the cloud)

Page 8: 001.StratusLab-DCI-Summer-School-Installation-Tutorial-3.pdf

8

Architecture of StratusLab v1.0

IaaS Cloud

Virtual Machine Manager (OpenNebula)

XML-RPC & OCCI

Physical Computing Resources

VMware

Service Manager (Claudia)

TCloud

Storage Manager

REST/CDMI

iSCSI (?)KVM Xen …

Physical Storage Resources

Appliance Management

StratusLab Marketplace

HTTP(S) REST Interface

Appliance Storage (Web, Grid, Cloud)

users

Page 9: 001.StratusLab-DCI-Summer-School-Installation-Tutorial-3.pdf

9

Reference deployment

Frontendh ps://cloud-grnet.stratuslab.eu

OpenNebula(XMLRPCon2634)Ganglia

StratusLabwebmonitorNFSServer (images, VMs, oneadmin)

NodeNHypervisor (KVM)Ganglia(gmond)

NFSClient (images, VMs, oneadmin)

Node2Hypervisor (KVM)Ganglia(gmond)

NFSClient (images, VMs, oneadmin)

Node1Hypervisor (KVM)Ganglia(gmond)

NFSClient (images, VMs, oneadmin)

Password-lessSSHaccessforoneadminacct.

User(Grid admin or app user)

PythonCLI toHTTPendpoint

CloudAdmin.

one* commandsasoneadminacct.

AppliancesRepositoryh p://appliances.stratuslab.eu

Apache/Webdav

HTTP imagetransfer (curl)

.

.

.

Page 10: 001.StratusLab-DCI-Summer-School-Installation-Tutorial-3.pdf

10

In action: HG-07-StratusLab

The first (?) fully virtualized production grid site running on a cloud infrastructure

● 1 CE, 8 dual-core WNs, 1 SE (3TB of storage), 1 gLite-APEL monitoring node, 1 UI

● Certified in Greek NGI, officially part of the national grid infrastructure

● Gstat details: http://gstat-prod.cern.ch/gstat/site/HG-07-StratusLab/

Page 11: 001.StratusLab-DCI-Summer-School-Installation-Tutorial-3.pdf

11

Grid admins● Reduced time to production

● Minimize chances of downtimes due to hardware problems

● Easier to quickly scale on high load demands

● Hardware administration delegated to cloud provider

● Cost-efficient access to computing resources

Grid end-users● Experience a more reliable Grid

service

Benefits

Additional work is needed in order to

exploit the full potential of the

cloud

Page 12: 001.StratusLab-DCI-Summer-School-Installation-Tutorial-3.pdf

12

Prerequisites

Hardware● VT-x extentions

Software● Fedora 14

● Passwordless ssh between HW nodes as root

● A running DHCP server

● (Optional) Bridge configuration

Page 13: 001.StratusLab-DCI-Summer-School-Installation-Tutorial-3.pdf

13

Installation Overview

Installation Methods● Manual installation

– Not as manual as you think :-)

– Set up the repository and install StratusLab using manual commands and preferences from the designated frontend node.

● Quattor installation

– Faster, more comprehensive installation procedure

– Everything in one place but

– Greater risk of problems during installation

For this demonstration● Manual Installation will be used, to give sysadmins a better

idea of the prerequisites and procedures

Page 14: 001.StratusLab-DCI-Summer-School-Installation-Tutorial-3.pdf

14

Installation Overview (2)

Packages● The official repo at http://yum.stratuslab.eu/releases/fedora14/

● One package install: yum install stratuslab-cli-sysadmin

● Optional: stratuslab-web-monitor, stratuslab-marketplace

DHCP configuration

HW Node installation and configuration

Frontend and node install

Operational best practices

Page 15: 001.StratusLab-DCI-Summer-School-Installation-Tutorial-3.pdf

15

DHCP configuration

A note on ONE networking● 2 network types Fixed or Ranged

– Fixed: IPs assigned on a per MAC basis from unmanaged DHCP server – predictable IP assignmen

– Ranged: IPs are not assigned in a predictable fashion (i.e. it’s up to an unmanaged DHCP server)

DHCP configuration● Provide each MAC with an IP in a predictable manner

● ONE will be notified during installation from StratusLab tools

Page 16: 001.StratusLab-DCI-Summer-School-Installation-Tutorial-3.pdf

16

Manual HW node configuration

● Network● Make sure that all nodes have the correct bridges to the correct VLANs (if

you are using seperate VLANs)

● Stratus-install can deal with it during installation (caveat: this is a utility that should not be used – a restart will invalidate the configuration)

● Node storage configuration● ONE has two modes of operation

– SSH with local storage

– Shared storage (e.g. nfs)

● Using either of those requires no configuration (stratus-install)

● You can use your favorite shared/distributed FS (e.g. GPFS, glusterfs, ceph) with little effort, provided you can mount it on /var/lib/one/

● Setup passwordless ssh for root

Page 17: 001.StratusLab-DCI-Summer-School-Installation-Tutorial-3.pdf

17

Installation

[StratusLab-Releases]name=StratusLab-Releasesbaseurl=http://yum.stratuslab.eu/releases/fedora14gpgcheck=0Enabled=1

● Repository

● Install packages● yum install stratuslab-cli-sysadmin

● That’s it!

Page 18: 001.StratusLab-DCI-Summer-School-Installation-Tutorial-3.pdf

18

Installation (2)

● Pre-install config● stratus-config –k

● stratus-config <key> <value>

● Huge number of options – few required

● Example

● Frontend and node install● stratus-install

● stratus-install –n <hostname>

● Verbosity is good (-v, -vv)

Page 19: 001.StratusLab-DCI-Summer-School-Installation-Tutorial-3.pdf

19

What happens?

● User creation (oneadmin)

● ONE configuration (FE, hosts, vnets)

● Services config (mainly libvirt/qemu)

● (Optionally) Network configuration

● (Optionally) NFS configuration

Quite a lot actually!

Page 20: 001.StratusLab-DCI-Summer-School-Installation-Tutorial-3.pdf

20

Testing the installation

● Use current tools!

● Cloud layer admin (oneadmin)

● Launching Instances

● Troubleshooting

● Get help from the community!

([email protected])

Page 21: 001.StratusLab-DCI-Summer-School-Installation-Tutorial-3.pdf

21

Installing goodies

● Web Monitor● yum install stratuslab-web-monitor

● /etc/init.d/httpd start

● Claudia● stratus-install –claudia

● Experimental still!

Page 22: 001.StratusLab-DCI-Summer-School-Installation-Tutorial-3.pdf

22

Administration

● Add/manage users● One-proxy (or, the front-end)

● User credentials (passwords or grid certs)

● Simply add/remove lines from a single file

● Quotas● oneauth quota set …

● Backups

● Tailoring (i.e. Hacking :-) )● YOUR user community should drive the requirements.

● Trade-offs (e.g. storage capacity vs disk I/O)

● Extremely configurable deployment – bash scripting knowledge

Page 23: 001.StratusLab-DCI-Summer-School-Installation-Tutorial-3.pdf

23

Conclusions

● StratusLab working on cloud / grid integration/interoperability scenarios

● StratusLab 1.0 release

● Reference cloud service publicly available

● Production grid site running on reference cloud

● Working on elastic grid site functionality

● Exploring grid-like access to cloud resources

Page 24: 001.StratusLab-DCI-Summer-School-Installation-Tutorial-3.pdf

24

For more information…

StratusLab wiki: http://www.stratuslab.eu

Support mailing list: [email protected] (also for requesting access to the reference cloud service)

Appliance Repository: http://appliances.stratuslab.eu

Git (source code): http://code.stratuslab.eu/public/git/

Package repository: http://yum.stratuslab.eu

OpenNebula toolkit: http://opennebula.org/

Quattor toolkit: http://quattor.sourceforge.net/

Page 25: 001.StratusLab-DCI-Summer-School-Installation-Tutorial-3.pdf

25

Copyright © 2011, Members of the StratusLab collaboration: Centre National de la Recherche Scientifique, Universidad Complutense de Madrid, Greek Research and Technology Network S.A., SixSq Sàrl, Telefónica Investigación y Desarrollo SA, and The Provost Fellows and Scholars of the College of the Holy and Undivided Trinity of Queen Elizabeth Near Dublin.

This work is licensed under the Creative CommonsAttribution 3.0 Unported Licensehttp://creativecommons.org/licenses/by/3.0/