24
+ FREE AND OPEN SOURCE SOFTWARE FOR CLOUD COMPUTING SERENA SPINOSO ([email protected]) FULVIO VALENZA ([email protected])

FREE AND OPEN SOURCE SOFTWARE FOR CLOUD COMPUTING · FREE AND OPEN SOURCE SOFTWARE FOR CLOUD COMPUTING ... central management system for multi-node cloud deployments. The Compute

  • Upload
    lenhu

  • View
    220

  • Download
    1

Embed Size (px)

Citation preview

+

FREE AND OPEN SOURCE SOFTWARE

FOR CLOUD COMPUTINGSERENA SPINOSO ([email protected])FULVIO VALENZA ([email protected])

+OUTLINE

INTRODUCTION OF CLOUD DEFINITION OF CLOUD BASIC CLOUD COMPONENTS USE MODELS DEPLOYMENT MODELS

EXAMPLES OF CLOUD ARCHITECTURES OPENSTACK OPENNEBULA OPENCONTRAIL EUCALYPTUS XEN CLOUD PLATFORM

BIBLIOGRAPHY

+WHAT IS A CLOUD?

A Cloud is a group of machines configured in such a way that an end-user can request any number of resources (Virtual Machines or Virtual Storage) of a desired configuration.

The end-user neither knows nor cares where exactly these resources are physically located or the configuration of the underlying hardware, so long as they can access their bank of properly configured Virtual Machines.

+BASIC COMPONENTS

The Control Node (Cloud Controller) provides the central management system for multi-node cloud deployments.

The Compute Node is the physical server that hosts Virtual Machines (VMs) instances (each of them is associated to a specific user). It holds the hypervisor and virtualizes physical resources like memory, CPU, network interfaces and disks.

The Storage Node is a physical server in charge of storing user and system data in the cloud. It is organized in Virtual Storage (VS) instances (each of them is associated to a specific user).

The physical network composed by different Network Nodes (e.g., routers and switches), which interconnects all the nodes in the cloud, both physical (e.g., Compute and Storage Node) and virtual (e.g., Virtual Machine and Virtual Storage).

+

COMPUTE NODE

VIRTUAL MACHINE

VIRTUAL STORAGE

CLOUD OVERVIEW: LEGENDA

CONTROL NODE

STORAGE NODE

NETWORK NODEVM

VS

+

VM VM VMVM VS

VS

VS

VS

VS

VS

USER 1 USER 2 USER 3

CLOUD OVERVIEW

+CLOUD COMPUTING TAXONOMY DEPLOYMENT MODELS:

Public Cloud Available to the general public over the Internet (e.g.,

Amazon EC2, Google Compute Engine etc…)

Private Cloud Used by a single organization, like public providers, data

center owners and organizations with high security requirements (e.g., Facebook, Google etc…)

Hybrid Cloud Composed by two clouds (private and public)

Community Cloud A multi-tenant infrastructure shared among several

organizations from a specific group with common computing concerns, related to regulatory compliance or performance requirements.

+CLOUD COMPUTING TAXONOMY

USE MODELS: Infrastructure as a Service (IaaS): through virtualization,

it is possible to assign and dynamically resize cloud resources to build ad-hoc system as demanded by users.

VMs, Server, Load Balancer, Storage, Network…

Platform as a Service (PaaS): instead of supplying virtualized infrastructures, cloud system are able to provide the software platform where systems run on.

Database, Web Server, Development tools….

Software as a Service (SaaS): different kinds of applications used by cloud users that do not run locally but in the Cloud.

Email (Gmail), online games, file sharing (Dropbox), social network (Facebook)…

+CLOUD COMPUTING TAXONOMY

INTERNET

Public Cloud

SaaS PaaS IaaS

Private Cloud

PublicCloud

Hybrid Cloud

Community

Cloud

Private Cloud

+SOME FREE ARCHITECTURES

OpenStack https://www.openstack.org

OpenNebula http://opennebula.org/start

OpenContrail http://opencontrail.org/

Eucaliptus https://www.eucalyptus.com/eucalyptus-cloud/iaas

Xen Cloud Platform http://www-archive.xenproject.org/products/cloudxen.html

CloudStack http://cloudstack.apache.org/

+OPENSTACK (1)

OpenStack is a cloud operating system that controls large pools of compute, storage, and networking resources throughout a data center.

OpenStack is also a global software community of developers, founded (2010) by Rackspace Hosting and NASA.

Some components: Heat orchestrates multiple composite cloud applications. Nova manages the lifecycle of compute instances. Neutron enables network connectivity as a service for other

OpenStack services. Glance stores and retrieves virtual machine disk images. Keystone provides an authentication and authorization service for

other OpenStack services. Horizon provides a Graphical User Interface (GUI). …

+OPENSTACK (2)

+OPENNEBULA (1)

OpenNebula.org is an open-source project developing the industry standard solution for building and managing virtualized enterprise data centers and enterprise private clouds

Is written mainly in C++ and Ruby. The main components are:

Front-end: who run the OpenNebula services. Hosts: hypervisor-enabled hosts that provide the resources

needed by the VMs. Datastores: where the VMs images are stored. Service Network: a physical network used to support basic

services, like interconnection of the storage.

+OPENNEBULA (2)

+OPENCONTRAIL (1)

OpenContrail acts as a fundamental network platform for cloud infrastructure. It is an Apache 2.0-licensed project that is built using standards-based protocols and provides all the necessary components for network virtualization.

The key aspects of the OpenContrail system are: Network Virtualization: virtual networks are logical constructs

implemented on top of the physical networks. Each user or an application can have one or more virtual networks, each of them is isolated from all the unless explicitly allowed by security policy.

Network Programmability and Automation: OpenContrail uses a well-defined data model to describe the desired state of the network. It then translates that information into configuration needed by each control node and virtual router. By defining the configuration of the network versus a specific device, OpenContrail simplifies and automates network orchestration.

Big Data for Infrastructure: The analytics engine is designed for very large scale ingestion and querying of structured and unstructured data.

+OPENCONTRAIL (2)

OpenContrail architecture is made up of: OpenContrail Controller

Configuration nodes keep a persistent copy of the intended configuration state and translate the high-level data model into the lower level model suitable for interacting with network elements.

Control nodes implement a logically centralized control plane that is responsible for maintaining ephemeral network state. Control nodes interact with each other and with network elements to ensure that network state is eventually consistent.

Analytics nodes collect, store, correlate, and analyze information from network elements, virtual or physical. This information includes statistics, logs, events, and errors.

Virtual Router (vRouter) a forwarding plane (of a distributed router) that runs in the

hypervisor of a virtualized server. It extends the network from the physical routers and switches in a data center into a virtual overlay network hosted in the virtualized servers.

+OPENCONTRAIL (3)

OPENCONTRAIL CONTROLLER

vROUTER

+EUCALYPTUS (1)

Eucalyptus is an Open Source Private Cloud Software. Eucalyptus is made up of six distinct components that

can be distributed in various cloud computing architectures. The six components are grouped into three separate levels: Cloud level

Cloud Controller Storage Controller Scalable Object Storage

Cluster level (or Availability Zone) Cluster Controller VMware Broker (optional)

Node level Node Controller

+EUCALYPTUS (2)

Eucalyptus is composed of: Node Controller manages the execution, inspection,

and terminating of VM instances on the host where it runs.

Cluster Controller schedules VM execution on specific node controllers collecting data about it, as well as manages virtual instance network.

Storage Controller (Walrus) is a put/get storage service that implements Amazon’s S3 interface, providing a mechanism for storing and accessing virtual machine images and user data.

Cloud Controller is the entry-point into the cloud for users and administrators. It queries node managers for information about resources, makes high-level scheduling decisions, and implements them by making requests to cluster controllers.

+EUCALIPTUS (4)

Eucalyptus deploys two types of virtual network interfaces to guarantee VMs isolation: The public interface is used for communication

between an owner and its VMs or between VMs instances belonging to the same subnet.

The private interface is used for VMs communication running in different subnets. These VMs can communicate through the Virtual Distributed Ethernet(VDE), a process level implementation of the Ethernet protocol.

+EUCALYPTUS (5)

NODE CTRL

VM A VM B

PRIVATE BRIDGE

PRIVATE BRIDGE

PUBLIC INTERFACE

PUBLIC INTERFACE

PRIVATE INTERFACE

PRIVATE INTERFACE

PUBLIC BRIDGE

PHYDICAL INTERFACE

VIRTUAL DISTRIBUTED

ETHERNET

+XEN CLOUD PLATFORM (1)

The XEN Cloud Platform (XCP) is an open source server virtualization and cloud computing platform, delivering the Xen Hypervisor.

Xen does not provide the overall architecture for cloud services but is a tool that is used for automatic configuration and maintenance of cloud platform.

The XCP Resource Pool is composed of: XCP Hosts, where the VMs run and can communicate

through a Virtual Ethernet Switch (VES) Shared Storage A master XCP Host, which is a XCP Host that offers

administrator interface and forwards control messages to the other XCP Hosts

+XEN CLOUD PLATFORM (2)

VMVM VMVM

VIFVIF VIFVIF

VES

+BIBLIOGRAPHY Cordeiro, T., Damalio, D., Pereira, N., Endo, P., Palhares, A., Gonçalves, G., ... & Mångs, J. E.

(2010, November). Open source cloud computing platforms. In Grid and Cooperative Computing (GCC), 2010 9th International Conference on (pp. 366-371). IEEE.

Nurmi, D., Wolski, R., Grzegorczyk, C., Obertelli, G., Soman, S., Youseff, L., & Zagorodnov, D. (2009, May). The eucalyptus open-source cloud-computing system. In Cluster Computing and the Grid, 2009. CCGRID'09. 9th IEEE/ACM International Symposium on (pp. 124-131). IEEE.

Sempolinski, P., & Thain, D. (2010, November). A comparison and critique of eucalyptus, opennebula and nimbus. In Cloud Computing Technology and Science (CloudCom), 2010 IEEE Second International Conference on (pp. 417-426). IEEE.

Bist, M., Wariya, M., & Agarwal, A. (2013, February). Comparing delta, open stack and Xen Cloud Platforms: A survey on open source IaaS. In Advance Computing Conference (IACC), 2013 IEEE 3rd International (pp. 96-100). IEEE.

A. Singla and B. Rijsman, “Opencontrail architecture documentation,” 2014. J. A. L. d. Castillo, K. Mallichan, and Y. Al-Hazmi, “Openstack federation in experimentation

multi-cloud testbeds,” in Proceedings of the 2013 IEEE International Conference on Cloud Computing Technology and Science - Volume 02, CLOUDCOM ’13, (Washington, DC, USA), pp. 51–56, IEEE Computer Society, 2013.

Sefraoui, O., Aissaoui, M., & Eleuldj, M. (2012). OpenStack: toward an open-source solution for cloud computing. International Journal of Computer Applications, 55(3), 38-42.