Professional Documents
Culture Documents
Cloud Computing With Openebula - CMP 473 Seminar - 2020-2021 Session
Cloud Computing With Openebula - CMP 473 Seminar - 2020-2021 Session
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.
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:
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
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
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
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
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
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
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
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