330 likes | 550 Views
Nephelae’s Cloud. Papadopoulos Andreas. Presentation Outline. Definition of Cloud Computing Cloud Computing Stack Open Source Cloud Computing Software Platforms Nephelae’s Configuration Eucalyptus How to use Nephelae’s infrastructure Demostration. Definition of Cloud Computing.
E N D
Nephelae’sCloud Papadopoulos Andreas
Presentation Outline • Definition of Cloud Computing • Cloud Computing Stack • Open Source Cloud Computing Software Platforms • Nephelae’s Configuration • Eucalyptus • How to use Nephelae’s infrastructure • Demostration
Definition of Cloud Computing • “Cloud computing is Internet-based computing, whereby shared resources, software and information are provided to computers and other devices on-demand, like electricity” (Wikipedia) • “Cloud computing is a model for enabling ubiquitous, convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction.” (NIST)
Software As A Service - SAAS • A complete application is offered to the customer, as a service on demand • A single instance of the service runs on the cloud and multiple end users are serviced • Customers' side: no need for upfront investment in servers or software licenses • Providers' side: the costs are lowered, since only a single application needs to be hosted and maintained • SaaS offered by Google, Salesforce, Microsoft, Zoho, etc.
Platform As A Service - PAAS • A layer of software, or development environment is encapsulated and offered as a service • The customer has the freedom to build his own applications, which run on the provider's infrastructure • PaaS providers offer a predefined combination of OS and application servers, such as LAMP platform, restricted J2EE, Ruby etc. • PaaS example: Google's App Engine, Force.com etc.
Infrastructure As A Service - IAAS • IaaS provides basic storage and computing capabilities as standardized services over the network • Servers, storage systems, networking equipment, datacenter space etc. are pooled and made available to handle workloads • The customer would typically deploy his own software on the infrastructure. • IaaS examples: Amazon, GoGrid, 3 Tera etc.
Open Source Cloud Computing Software Platforms • Eucalyptus (also commercial version available) • OpenNebula • Nimbus • CloudStack • OpenStack • OpenQRM • …
Nephelae’s Configuration • Nephelae runs Ubuntu Enterprise Cloud • Ubuntu Server 11.10 • Open source eucalyptus 2.0.2 • KVM
Started as a research project in the Computer Science Department at the University of California, Santa Barbara • Based on open-source software components that are used without modification • Compatible with Amazon's EC2, S3, and EBS interfaces • Hypervisors supported: KVM, Xen and VMware (only enterprise edition)
Eucalyptus Architecture • Cloud Controller (CLC) • ClC is a collection of three web services • Resource Services • Manipulation and monitoring of the system component and virtual machines and network • Data Services • Managing of the persistent user and system data • Interface Services • Authentication protocol translation • User-visible interfaces • Cluster Controller (CC) • Schedule incoming instance run requests to specific NCs, FCFS depending on VM-type • Control the instance virtual network overlay • Report information about NCs • Node Controller (NC) • NC is executed on every node that is designed for hosting VM • It discovers the characteristics of the physical resource • It replies to describeResource, describeInstances, runInstance, terminateInstance requests
Walrus • Storage controller • Eucalyptus users can stream data into/out of the cloud • Storage service for VM • compress • encrypt • split • cache • Implements REST (via HTTP) SOAP style of software architecture for distributed hypermedia systems such as the World Wide Web.
Block Storage (BS) • Compatible with Elastic Block Store, BS allows volumes • Creation (from snapshot) • Monitoring • Attaching • Detaching • Deletion
Eucalyptus Virtual Network Overlay • Eucalyptus provides four network configurations • SYSTEM: VMs request IP address trough DHCP requests • STATIC: MAC ↔ IP address tuple • MANAGED: VM attached to a specific network (private or public) • Isolation • MANAGED NO-VLAN: Same as MANAGED without vlan support • Nephelae is configured in SYSTEM mode
How to use Nephelae’sInfrastructure - Outline • Create an account • Download and install credentials • Install euca2ools • Start-up instances • Attach volumes • Use Walrus storage • Shutting-down instances
Create an account • Use the Eucalyptus Web Interfaces at https://Nephelae.in.cs.ucy.ac.cy:8443 / • On the Login page click on Apply for account. • On the next page that pops up fill out ALL the Mandatory AND optional fields of the form. • Once complete click on signup and the Eucalyptus administrator will be notified of the account request. • You will get an email once the account has been approved. • Click on the link provided in the email to confirm and complete the account creation process.
Downloadcredentials • Download your credentials as a zip file from the web interface for use with euca2ools
Use credentials • Save this credential file euca2-{username}-x509 and extract it for local use • Source the eucarc file using the command source eucarc mkdir ~/.eucacd ~/.eucaunzip euca2-{username}-x509.zipchmod 0700 ~/.eucachmod 0600 ~/.euca/* source ./eucarc
Install euca2ools • Euca2ools are the command line clients used to interact with Eucalyptus. • Download euca2ools from http://open.eucalyptus.com/downloads • Instructions for various Linux platforms are available on the download page.
Create your Keypair • Create a keypair and add the public key to eucalyptus. • $ euca-add-keypairmykey | tee mykey.private • $ chomd 0600 mykey.private • List your existing keypairs • $ euca-describe-keypairs
Start-up instances • Testing your setup • Use euca-describe-availability-zones to test the setup. • List existing images $ euca-describe-availability-zones AVAILABILITYZONE NephelaeCC1 NephelaeCC $ euca-describe-images IMAGE emi-E240106D debian/debian.5-0.x86-64.img.manifest.xml admin available public x86_64 machine eki-4A8E123C eri-83C01326IMAGE emi-C9A8102E centos/centos.5-3.x86.img.manifest.xml admin available public i386 machine eki-36321225 eri-6DF012FE instance-storeIMAGE emi-485F121D ubuntu-9.04/ubuntu.9-04.x86-64.img.manifest.xml admin available public x86_64 machine eki-8F121374 eri-CB0D1458 instance-storeIMAGE emi-C9CD1067 ubuntu11/ubuntu_11__.img.manifest.xml admin available public x86_64 machine eki-559B1299 eri-8EE4137F instance-store ………
Start-up instances • Select image and run • $ euca-run-instances -k mykey -n 1 emi-C9CD1067 -t c1.medium • View status of your instances • $ euca-describe-instances • Availability Zones
Connect to your instances • View the ip address of your instance using • $ euca-describe-instances • Connect as root with ssh • $ ssh –imykey.private root@10.16.3.xx • Install your programs • Changes will be lost on shutdown (halt) or terminate
Use BS - Attach volumes • Persistent Storage • Create volume using: • $ euca-create-volume –-size 5G –-zone NephelaeCC1 • Attach Volume to instance • $ euca-attach-volume –iinstanceId –d vdavolumeID • Use fdisk to create primary partition • vm$ fdisk /dev/vda • Create filesystem with mkfs • vm$ mkfs.ext3 /dev/vda • Mount locally with mount • vm$ mkdir /ebs ; mount /dev/vda1 /ebs • Unmount and detach when done • vm$ umount /ebs • $ euca-detach-volume volumeID
Use Walrus storage • Download s3cmd 0.9.8.3 • Get patch from eucalyptus site • Create your config file to include your SECRET and ACCESS key (from eucarc) and Nephelae host • Use s3cmd to create/delete/upload/download to/from walrus • $ s3cmd -c s3cfg.walrus mb s3://BUCKET • $ s3cmd -c s3cfg.walrus put FILE [FILE...] s3://BUCKET[/PREFIX] • S3cmd can also be installed on a vm
Shutting-down instances • Unmount and detach any volumes • Log out from the vm • $ euca-terminate-instance instanceId
User Limits • 1 bucket maximum size 30Gb • 1 block storage maximum size 30Gb • No instances limit
Nephelae’sCloud Thank you Papadopoulos Andreas http://grid.ucy.ac.cy/Nephelae/