You are on page 1of 60

09/22/2016 11:50:08 AM

1
09/22/2016 11:50:08 AM
BY

2
DR. A. O. OGUNDE
DEPARTMENT OF COMPUTER SCIENCE
REDEEMER’S UNIVERSITY
CLOUD COMPUTING – BRIEF HISTORY

09/22/2016 11:50:08 AM
 Term cloud is used as a metaphor for
Internet
 Evolved over a period of time
 Roots traced back to Application Service
Providers in the 1990’s
 Evolved from Utility computing and is a
much more broader concept
 Dynamic provision of services/resource pools
in a co-ordinated fashion
 On demand computing – No waiting period
3
 Location of resource is irrelevant
09/22/2016 11:50:08 AM
•It is a subscription-
based service where
networked storage
space and computer
resources and
services can be
obtained.
• One way to think of
cloud computing is to
consider your
experience with 4
email.
09/22/2016 11:50:09 AM
• According to the U.S. National Institute of
Standards and Technology (NIST): Cloud
computing is a model for enabling 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
5
minimal management effort or service provider
interaction.
09/22/2016 11:50:09 AM
6
CLOUD COMPUTING: SERVICE MODELS

09/22/2016 11:50:09 AM
7
09/22/2016 11:50:09 AM
8
09/22/2016 11:50:09 AM
KEY TECHNOLOGY: VIRTUALIZATION

9
HYPERVISORS

09/22/2016 11:50:09 AM
 A hypervisor is an operating system, which means that it
knows how to act as a traffic cop to make things happen
in an orderly manner. The hypervisor sits at the lowest
levels of the hardware environment. Because in cloud
computing you need to support many different operating
environments, the hypervisor becomes an ideal delivery
mechanism.

 The hypervisor allow users to show the same application


on lots of systems without having to physically copy that
application onto each system. One twist: Because of the
hypervisor architecture, it can load any (or many)
different operating system as though it were just another
application. Therefore, the hypervisor is a very practical
10
way of getting things virtualized quickly and efficiently.
09/22/2016 11:50:09 AM
11
09/22/2016 11:50:09 AM
12
CHALLENGES OF IAAS
WHAT IS OPENNEBULA?

09/22/2016 11:50:09 AM
 OpenNebula provides the most simple but feature-rich
and flexible solution for the comprehensive
management of virtualized data centers to enable private,
public and hybrid IaaS clouds.
 OpenNebula interoperability makes cloud an evolution by
leveraging existing IT assets
 OpenNebula is a turnkey enterprise-ready
solution that includes all the features needed to provide
an on-premises (private) cloud offering, and to offer public
cloud services.
 OpenNebula is a distributed virtualization layer that:

 Extend the benefits of VMMs


 Decouple the service from the physical infrastructure
13
 OpenNebula was written in Ruby language and it is
the primary language for our developers
WHICH FUNCTIONALITY DOES OPENNEBULA

09/22/2016 11:50:09 AM
PROVIDE?
 Data Center Virtualization Management.
 Many users use OpenNebula to manage data center
virtualization, consolidate servers, and integrate existing IT assets
for computing, storage, and networking.
 In this deployment model, OpenNebula directly integrates with
hypervisors (like KVM, Xen or VMware ESX) and has complete
control over virtual and physical resources, providing advanced
features for capacity management, resource optimization, high
availability and business continuity.

 Cloud Management.
 Other users use OpenNebula to provide a multi-tenant, cloud-like
provisioning layer on top of an existing infrastructure management
solution (like VMware vCenter).
 These users are looking for provisioning, elasticity and multi-
tenancy cloud features like virtual data centers provisioning,
datacenter federation or hybrid cloud computing to connect in-house14
infrastructures with public clouds, while the infrastructure is
managed by already familiar tools for infrastructure management
and operation.
09/22/2016 11:50:09 AM
15
SAMPLE USERS
OPENNEBULA ARCHITECTURE

09/22/2016 11:50:09 AM
- OVERVIEW

16
OPENNEBULA - PLATFORM

09/22/2016 11:50:09 AM
INTERFACES

17
OPENNEBULA MANAGEMENT SERVICES

09/22/2016 11:50:09 AM
– MODULES AND CUSTOMIZATION

18
VIRTUALIZATION – CHOOSING

09/22/2016 11:50:09 AM
THE RIGHT HYPERVISOR

19
OPENNEBULA DEPLOYMENT –

09/22/2016 11:50:09 AM
A HIGH-LEVEL OVERVIEW

20
09/22/2016 11:50:09 AM
OPENNEBULA DEPLOYEMENT – A CLOSER
LOOK AT STORAGE INTEGRATION

21
CONFIGURING OPENNEBULA

09/22/2016 11:50:09 AM
INSTALLATION – PREPARATIONS

Seminar)

22
INSTALLATION – PREPARATIONS

09/22/2016 11:50:09 AM
 A single computer as frontend and node (same concepts
apply as in more complex scenarios)
 LINUX: Ubuntu 12.04/14.04 LTS (Recommendation: use
something with LTS or Red Hat derivates)
 OpenNebula VirtualBox appliance
 SSH for connecting to VMs
 VNC for connecting to VMs

 General hints: You will mostly be working as the UNIX


users oneadmin and root since most tasks require
administrative privileges
 To gain root rights:

sudo su – to switch to oneadmin (as root):


su – oneadmin (you won‘t be able to login to the system
as oneadmin directly because no UNIX password is set, 23
therefore login as root and switch to oneadmin)
09/22/2016 11:50:09 AM
24
INSTALLATIONS - CLI
INSTALLATIONS - SUNSTONE

09/22/2016 11:50:09 AM
25
09/22/2016 11:50:09 AM
OPENNEBULA INSTALLATION - VIRTUALBOX
• VirtualBox allows you to run an entire
operating system inside another operating
system.

26
CONFIGURING THE PRIVATE CLOUD

09/22/2016 11:50:09 AM
MANAGING HOSTS AND CLUSTERS
 Hosts are cluster worker-nodes defined
with
 Hostname of the node or IP
 Information Driver to be used to monitor the host
 Storage Driver to clone, delete, move or copy images
into the host
 Virtualization Driver to boot, stop, resume VMs in the
host
 Hosts are managed with the onehost utility
 Create & delete hosts
 List the hosts
27
 Show detailed information from a host
 Enable/Disable a host
CONFIGURING THE PRIVATE CLOUD

09/22/2016 11:50:09 AM
MANAGING USERS
 Users
are defined within
OpenNebula by:
 ID unique identifier for the user
 Name of the user, used for authentication
 Password used for authentication

 Users are managed with the oneuser


utility
 Create & delete users
28
 List the users in the cluster
VIRTUAL NETWORKS

09/22/2016 11:50:09 AM
A Virtual Network (vnet) in OpenNebula
 Defines a separated MAC/IP address space to be used by
VMs
 A vnet is associated with a physical network through a
bridge
 Virtual Networks can be isolated (at layer 2 level)
 Virtual Network definition
 Name
 Type, of the network
 - 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. 29
 Virtual Networks are managed with the onevnet
utility
IMAGES

09/22/2016 11:50:09 AM
 An Image in OpenNebula’s repository
 A virtual machine disk to be used as OS or DATA
device.
 Images can be persistent and/or public
 Images modifications can be saved as another image

 Image Types:
 OS: contains a working operative system
 CDROM: readonly data
 DATABLOCK: A storage for data. Can be created
either from previous or existing data, or as an empty
drive.
30
 Images are stored in the repository
VIRTUAL MACHINES

09/22/2016 11:50:09 AM
A Virtual Machine in OpenNebula
 A capacity in terms of 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.
 Virtual Machines are defined in a VM template
 Each VM has an unique ID in OpenNebula the
VMID
 All the files (logs, images, state files...) are stored31
in: $ONE_LOCATION/var/<VMID>
09/22/2016 11:50:09 AM
VERIFYING THE INSTALLATION
 Use the OpenNebula commands (oneuser, onevm,
onehost, onevnet, oneimage, onetemplate with
the options list and show, where applicable) to
verify your installation works correctly, for
instance:
 A sample output of a working „list all VMs“ will
look like this:
oneadmin& onevm list
ID USER GROUP NAME STAT CPU MEM
HOSTNAME TIME
 Check the OpenNebula logs located in
/var/log/one for warnings and errors and retry if
any fails 32
RESOURCE MANAGEMENT - RESOURCE

09/22/2016 11:50:09 AM
POOLS
 Virtual network pool containing virtual network
configurations •
 Image pool containing VM base image
configuration and locations
 Template pool containing base configuration of
VMs Special Resource pools
 Virtual machine pool containing information
about currently deployed VMs
 Datastores provide structure on top of image pool

 Host pool containing configuration of clusters with


similarly configured hosts 33
VIRTUAL MACHINE MANAGEMENT

09/22/2016 11:50:09 AM
 OpenNebula uses VM templates to describe a baseline
for how to configure VMs
 How much resources to allocate (CPU, RAM, DISK)
 Which network to connect to
 VNC
 Additional Context
 A big part of OpenNebula administration is to create,
update and maintain base VM images and their
templates
 Templates consist of key-value pairs, organized by
blocks •
 Key-value: Name = some name • Block: OS = [...]
34
09/22/2016 11:50:09 AM
35
OPENNEBULA APPLIANCE

09/22/2016 11:50:09 AM
36
OPENNEBULA SUNSTONE WEB-

09/22/2016 11:50:09 AM
INTERFACE - LOGIN

37
09/22/2016 11:50:09 AM
OPENNEBULA SUNSTONE WEB-INTERFACE -
DASHBOARD

38
09/22/2016 11:50:09 AM
OPENNEBULA SUNSTONE WEB-INTERFACE –
MANAGING USERS

39
OPENNEBULA SUNSTONE WEB-

09/22/2016 11:50:09 AM
INTERFACE – ADDING A USER

40
VIRTUAL MACHINE MANAGEMENT – HOW TO

09/22/2016 11:50:09 AM
USE THE APPLIANCE MARKETPLACE
 An important task for any cloud administrator is providing a
reasonable selection of virtual machine templates for the users to
choose from. This means:
 Providing pre-configured disk images
 Providing multiple VM templates associated with the disk image
 A VM image is nothing more than a pre-installed operating system
on a virtual disk (a file)
 An easy way to provide a baseline of VMs is to use publicly available
images (typically called appliance, because they were built for a
specific reason)
 OpenNebula provides appliances for its CMS via the OpenNebula
marketplace (http:// marketplace.c12g.com/appliance)
 It is also possible to use third-party images, which have not been
created specifically for OpenNebula (e.g., VirtualBox images) by
41
converting the image to a compatible format (e.g., raw or qcow2) and
creating a template
VIRTUAL MACHINE MANAGEMENT – STEPS
TO BUILD YOUR OWN IMAGES – STARTING

09/22/2016 11:50:09 AM
FROM SCRATCH
 In some cases, none of the publicly available images will
fulfill your requirements
 This means you have to create images yourself
 Why would you want to do that?
 Security: do you trust a third-party image as the basis for the
web server of you new startup?
 Does a third-party image really fit exactly your use case?
 Often, the answer is no.
 Steps to create a new VM image:
 1. Create an empty disk image

 2. Start a VM with the empty disk image

 3. Install the operating system


42
 4. Configure the OS (user accounts, network, apps,
contextualization)
VIRTUAL MACHINE MANAGEMENT – STEPS

09/22/2016 11:50:10 AM
TO BUILD YOUR OWN IMAGES – DISK
IMAGES BASICS
 The basis for every VM image is the disk image. There
are several competing formats, which highly depend on
the hypervisor
 RAW is the most basic disk image format. It does not
bring any advanced features, but simply represents a
1:1 byte mapping of a typical computer disk
 VDI is the VirtualBox proprietary disk image

 VMDK is the VMWare proprietary disk image

 QCOW(2) is the Copy-on-Write disk image by QEMU

 Others: VHD, HDD


43
VIRTUAL MACHINE MANAGEMENT –

09/22/2016 11:50:10 AM
STEPS TO BUILD YOUR OWN IMAGES
 2 APPROACHES
 CLI
 VIRTUAL BOX UI
 Using QEMU tool qemu-img
sudo apt-get install qemu-utils
 This approach is useful, when the target disk image
format is RAW or QEMU
 It does support several other formats, but these are
usually used when converting images between
formats
 • To create a QCOW2 image with a disk size of 10GB
(not actually allocated):
44
• qemu-img create –f qcow2 some-image.qcow2
10G
VIRTUAL MACHINE MANAGEMENT – STEPS

09/22/2016 11:50:10 AM
TO BUILD YOUR OWN IMAGES – USING
VIRTUALBOX
 Using Ubuntu 12.04 LTS as an example
 Start by creating a new VM in VirtualBox. Consider
the OS architecture, most cases use 64 Bit.

45
VMM– STEPS TO BUILD YOUR OWN IMAGES
– USING VIRTUALBOX

09/22/2016 11:50:10 AM
 Setup resources
for the VirtualBox
VM. These
settings do not
matter too much,
since we are only
interested in the
disk image.
 Choose the
amount of RAM
for the VirtualBox
VM according to
Ubuntu‘s installer
requirements.
 1GB should be
46
plenty
VMM– STEPS TO BUILD YOUR OWN IMAGES

09/22/2016 11:50:10 AM
– USING VIRTUALBOX
 Choose the size of the virtual disk image.

47
VMM– STEPS

09/22/2016 11:50:10 AM
TO BUILD
YOUR OWN
IMAGES –
USING
VIRTUALBOX
 Define and
choose a format
for the virtual
disk image.
 Which one to
choose depends
highly on the
used hypervisor 48
and required
features
VMM–

09/22/2016 11:50:10 AM
STEPS TO
BUILD YOUR
OWN IMAGES
– USING
VIRTUALBOX
 Define whether to
disk image file
shall be allocated
immediately in
full or dynamically
 Dynamic will
allow resizing of
the disk image
using VirtualBox‘s
command line
tools 49
AS DISK SIZE CHOOSE SOMETHING

09/22/2016 11:50:10 AM
REASONABLE SUCH AS 8GB

50
ADD THE ISO IMAGE OF THE UBUNTU 12.04 LTS

09/22/2016 11:50:10 AM
INSTALLATION CD TO THE VM AS A VIRTUAL CD-ROM BY
CHANGING THE SETTINGS DEPICTED IN SCREENSHOTS BELOW:

51
09/22/2016 11:50:10 AM
52
• NOW IT‘S TIME TO START THE VM!

09/22/2016 11:50:10 AM
TYPICAL DEFAULT SETTINGS ARE JUST FINE

53
09/22/2016 11:50:10 AM
54
09/22/2016 11:50:10 AM
Installation
process is
complete,
The VM
restarts
and boots
into
Ubuntu

55
 Finally, verify both services are working:
 Apache: open http://localhost in Firefox

09/22/2016 11:50:10 AM
 SSH server: slogin –l user localhost (accept authenticity of host
with yes)
 To shutdown the VirtualBox VM cleanly
sudo shutdown –h now

56
BENEFITS

09/22/2016 11:50:10 AM
 FOR THE INFRASTRUCTURE MANAGER
 Faster response to infrastructure needs for services with
dynamic resizing of the physical infrastructure by adding new
hosts, and dynamic cluster partitioning to meet capacity
requirements of services
 Centralized management of all the virtual and physical
distributed infrastructure
 Higher utilization of existing resources with the creation of
a infrastructure incorporating the heterogeneous resources in
the data center, and infrastructure sharing between different
departments managing their own production clusters, so
removing application silos
 Operational saving with server consolidation to a reduced
number of physical systems, so reducing space, administration
effort, power and cooling requirements
 Lower infrastructure expenses with the combination of local 57

and remote Cloud resources, so eliminating the over-purchase of


systems to meet peaks demands
BENEFITS …..

09/22/2016 11:50:10 AM
 FOR THE INFRASTRUCTURE USER
 Faster delivery and scalability of services to meet
dynamic demands of service end-users
 Support for heterogeneous execution
environments with multiple, even conflicting, software
requirements on the same shared infrastructure
 Full control of the lifecycle of virtualized services
management
 FOR SYSTEM INTEGRATORS
 Fits into any existing data center thanks to its open,
flexible and extensible interfaces, architecture and
components
 Builds any type of Cloud deployment
 Open source software, Apache license
 Seamless integration with any product and service in the
virtualization/cloud ecosystem and management tool in
the data center, such as cloud providers, VM managers, 58
virtual image managers, service managers, management
tools, schedulers…
09/22/2016 11:50:10 AM
LIST OF WEBSITES
 opennebula.org
 https://cloud.opennebula.org
 http://opennebula.org/about/technology/ retrieved
on March 1st, 2016
 http://www.dummies.com/how-to/content/how-to-
use-a-hypervisor-in-cloud-computing-virtual.html
, retrieved on 28th February, 2016
 http://csrc.nist.gov/publications/drafts/800-
145/Draft-SP-800-145_cloud-definition.pdf.,
retrieved on February 25th, 2016.
 https://www.ogf.org/OGF26/materials/1686/02_Be
nefits_of_Standard_Cloud_Interfaces_for_OpenN 59
ebula.pdf, retrieved on March 1st, 2016
for
Listening. 60

You might also like