Cloud Computing & CloudStack Open Source

  • Published on
    12-Jul-2015

  • View
    236

  • Download
    2

Transcript

Cloud Computing

Cloud Computing,Open Source Cloud Computing & Experimental Evaluation of Apache Cloud StackPresented By: Ahmad Shah SultaniM.Sc. Computer ScienceSouth Asian UniversityNew Delhi, India.01-12-2014

OutlineOverview of Cloud ComputingCloud Computing HistoryCharacteristics of Cloud ComputingCloud Computing Service ModelsTypes of Cloud StorageVirtualizationAdvantages & DisadvantagesOpen Source Cloud ComputingCloud Stack

Open Source Cloud ComputingOpen Source HypervisorsCloudStack Open Source Cloud ComputingDeployment ArchitectureManagement ServerHypervisor HostInstallation & ConfigurationLog in UI AccessDashboard ScreenshotsGoalsConclusionReferences

Cloud computing is a style of computing where massively scalable IT-related capabilities are provided as a service across the Internet to multiple external customers

Cloud computing: A pool of abstracted, highly scalable, and managed infrastructure capable of hosting end-customer applications and billed by consumption Cloud computingisWeb-basedprocessing, whereby shared resources, software, and information are provided tocomputersand other devices (such as smart phones) on demand over theInternet.

What is Cloud Computing?3

Cloud computing is a style of computing where massively scalable IT-related capabilities are provided as a service across the Internet to multiple external customers

Cloud computing: A pool of abstracted, highly scalable, and managed infrastructure capable of hosting end-customer applications and billed by consumption Cloud computingisWeb-basedprocessing, whereby shared resources, software, and information are provided tocomputersand other devices (such as smart phones) on demand over theInternet.

What is Cloud Computing?4

Cloud computing is a style of computing where massively scalable IT-related capabilities are provided as a service across the Internet to multiple external customers

Cloud computing: A pool of abstracted, highly scalable, and managed infrastructure capable of hosting end-customer applications and billed by consumption Cloud computingisWeb-basedprocessing, whereby shared resources, software, and information are provided tocomputersand other devices (such as smart phones) on demand over theInternet.

What is Cloud Computing?5ContinuedCloud Computing is a general term used to describe a new class of network based computing that takes place over the Internet LEADING FACET OF NETWORKING- CLOUD COMPUTING

when John McCarthy wrote that computation may someday be organized as a public utility. Then, grid computing, a concept that originated in the early 1990s as an idea for making computer power as easy to access as an electric power grid also contributed to cloud computing.

The general idea behind the technology dates back to the 1960s, HISTORY7

One of the first movers in cloud computing was Salesforce.com, which in 1999 introduced the concept of delivering enterprise applications via a simple website.

In 2002 Amazon started Amazon Web Services, providing services like storage, computation and even human intelligence.

The year 2006 also saw the introduction of Amazons Elastic Compute cloud (EC2) as a commercial web service that allowed small companies and individuals to rent computers on which to run their own computer applications.

8

Then came Google Docs in 2006,9

But 2009 marked a key turning point in the evolution of cloud computing, with the arrival of browser based cloud enterprise applications, with the best known being Google Apps Working on Google Chrome.

10A Golden Era in Computing..Characteristics of CloudsOn-Demand Self-ServiceBroad Network AccessResource PoolingRapid ElasticityMeasured ServicePer-usage based pricing modelIP-based architecture, etc

From the NIST Cloud Computing

On-demand self-service.

A consumer can unilaterally provision computing capabilities, such as server time and network storage, as needed automatically without requiring human interaction with each services provider.

Broad network access.

Capabilities are available over the network and accessed through standard mechanisms that promote use by heterogeneous thin or thick client platforms (e.g., mobile phones, laptops, and PDAs).

Resource pooling.

The providers computing resources are pooled to serve multiple consumers using a multi-tenant model, with different physical and virtual resources dynamically assigned and reassigned according to consumer demand. There is a sense of location independence in that the customer generally has no control or knowledge over the exact location of the provided resources but may be able to specify location at a higher level of abstraction (e.g., country, state, or datacenter). Examples of resources include storage, processing, memory, network bandwidth, and virtual machines.

This is different than virtual private hosting which is constrained to a single host or hosted Exchange server with fixed storage limits.

Rapid elasticity.

Capabilities can be rapidly and elastically provisioned, in some cases automatically, to quickly scale out, and rapidly released to quickly scale in. To the consumer, the capabilities available for provisioning often appear to be unlimited and can be purchased in any quantity at any time.Measured Service. Cloud systems automatically control and optimize resource use by leveraging a metering capability1 at some level of abstraction appropriate to the type of service (e.g., storage, processing, bandwidth, and active user accounts). Resource usage can be monitored, controlled, and reported, providing transparency for both the provider and consumer of the utilized service.

12Cloud Computing Service ModelsUSER CLOUD a.k.a. SOFTWARE AS A SERVICE

Single application, multi-tenancy, network-based, one-to-many delivery of applications, all users have same access to features.

Examples: Salesforce.com, Google Docs, Red Hat Network/RHEL

DEVELOPMENT CLOUD a.k.a. PLATFORM-AS-A-SERVICE

Application developer model, Application deployed to an elastic service that autoscales, low administrative overhead. No concept of virtual machines or operating system. Code it and deploy it.

Examples: Google AppEngine, Windows Azure, Rackspace Site, Red Hat Makara

SYSTEMS CLOUD a.k.a INFRASTRUCTURE-AS-A-SERVICE

Servers and storage are made available in a scalable way over a network.

Examples: EC2,Rackspace CloudFiles, OpenStack, CloudStack, Eucalyptus, Ubuntu Enterprise Cloud, OpenNebula

SaaSPaaSIaaSCloud Software as a Service (SaaS) The Application Cloud

The capability provided to the consumer is to use the providers applications running on a cloud infrastructure. The applications are accessible from various client devices through a thin client interface such as a web browser (e.g., web-based email). The consumer does not manage or control the underlying cloud infrastructure including network, servers, operating systems, storage, or even individual application capabilities, with the possible exception of limited user-specific application configuration settings.

Cloud Platform as a Service (PaaS) The Development Cloud

The capability provided to the consumer is to deploy onto the cloud infrastructure consumer-created or acquired applications created using programming languages and tools supported by the provider. The consumer does not manage or control the underlying cloud infrastructure including network, servers, operating systems, or storage, but has control over the deployed applications and possibly application hosting environment configurations.

Cloud Infrastructure as a Service (IaaS). Systems Cloud

The capability provided to the consumer is to provision processing, storage, networks, and other fundamental computing resources where the consumer is able to deploy and run arbitrary software, which can include operating systems and applications. The consumer does not manage or control the underlying cloud infrastructure but has control over operating systems, storage, deployed applications, and possibly limited control of select networking components (e.g., host firewalls).13

Software as a Service (SaaS)SaaS is a software delivery methodology that provides licensed multi-tenant access to software and its functions remotely as a Web-based service.

Usually billed based on usageUsually multi tenant environmentHighly scalable architecture

SaaS Examples

16Platform as a Service (PaaS)PaaS provides all of the facilities required to support the complete life cycle of building and delivering web applications and services entirely from the Internet.

Typically applications must be developed with a particular platform in mindMulti tenant environmentsHighly scalable multi tier architecture

17PaaS Examples

18Infrastructure as a Server (IaaS)IaaS is the delivery of technology infrastructure as an on demand scalable service

Usually billed based on usageUsually multi tenant virtualized environmentCan be coupled with Managed Services for OS and application support

IaaS Examples

20

Cloud StorageCloud storage means "the storage of data online in thecloud," wherein a company's data is stored in and accessible from multiple distributed and connected resources that comprise a cloud.Cloud storage can provide the benefits of greater accessibility and reliability; rapid deployment; strong protection fordata backup,archivalanddisaster recoverypurposes; and lower overall storage costs as a result of not having to purchase, manage and maintain expensive hardware. However, cloud storage does have the potential for security and compliance concerns.Types of Cloud StoragePublic CloudPrivate CloudHybrid Cloud

Public CloudA form of cloud storage where the enterprise and storage service provider are separate and the data is stored outside of the enterprise's data center.

Private CloudThe phrase used to describe a cloud computing platform that is implemented within the corporate firewall, under the control of the IT department.A private cloud is designed to offer the same features and benefits of public cloud systems, but removes a number of objections to the cloud computing model including control over enterprise and customer data, worries about security, and issues connected to regulatory compliance.

Hybrid CloudA combination of public cloud storage and private cloud storage where some critical data resides in the enterprise's private cloud while other data is stored and accessible from a public cloud storage provider.

VirtualizationVirtualization is something which is not REAL, but displays the full qualities of the REAL.Virtualization : hardware platform, operating system, storage device,network resources,Software implementation.28

VirtualizationHardwareOperating SystemAppAppAppTraditional StackHardwareOSAppAppAppHypervisorOSOSVirtualized Stack29

VirtualizationTypes of VirtualizationHardware VirtualizationDesktop Virtualization30

VirtualizationIn hardware virtualization, the host machine is the actual machine on which the virtualization takes place, and the guest machine is the virtual machine. The words host and guest are used to distinguish the software that runs on the actual machine from the software that runs on the virtual machine. The software or firmware that creates a virtual machine on the host hardware is called a hypervisor or Virtual Machine Manager.Hardware virtualization31

Desktop virtualization (sometimes called client virtualization) is a concept which separates a personal computer desktop environment from a physical machine using the clientserver model of computing.Desktop virtualization

32

33Trends of Cloud Computing34Core AdvantagesCost saving: You pay for what you useEasy on installation and maintenanceIncreased storageHighly automatedFlexibilityBetter mobilityShared resourcesBack up and restoration35DisadvantagesData security and privacyNetwork connectivity and bandwidthService unavailability due to power outageDependence on outside agenciesLimited flexibilityKnowledge and integrationLong term stability of service providerMicrosoft Engineering ExcellenceMicrosoft Confidential36

Building Compute Cloudswith Open Source SoftwareWhy Open Source?User-Driven Solutions to Real ProblemsLower barrier to participationLarger user base, users helping users Aggressive release cycles stay current with the state-of-the-artOpen data, Open standards, Open APIs

38Open Virtual Machine FormatsOpen Virtualization Format (OVF) is an open standard for packaging and distributing virtual appliances or more generally software to be run in virtual machines.Formats for hypervisors/cloud technologies:

Amazon - AMIKVM QCOW2VMware VMDKXen IMGVHD Virtual Hard Disk - Hyper-VAn OVF package consists of several files, placed in one directory. A one-file alternative is the OVA package, which is a TAR file with the OVF directory inside.

OVF is a packaging format for software appliances. From a technical point of view, an OVF is a transport mechanism for virtual machine templates. One OVF may contain a single VM, or many VMs (it is left to the software appliance developer to decide which arrangement best suits their application). OVFs must be installed before they can be run; a particular virtualization platform may run the VM from the OVF, but this is not required. If this is done, the OVF itself can no longer be viewed as a golden image version of the appliance, since run-time state for the virtual machine(s) will pervade the OVF. Moreover the digital signature that allows the platform to check the integrity of the OVF will be invalid.

VHD Virtual Hard Disk format started by Connectix (now part of Microsoft) made open through the Microsoft Open Specification Promise.

39Open Source HypervisorsOpen SourceXen, Xen Cloud Platform (XCP)KVM Kernel-based VirtualizationVirtualBox* - Oracle supported Virtualization Solutions OpenVZ* - Container-based, Similar to Solaris Containers or BSD ZonesLXC User Space chrooted installs

ProprietaryVMwareCitrix XenserverMicrosoft Hyper-VOracleVM (Based on OS Xen)

Top choices for Cloud Computing are Xen and KVM.

OpenVZ, container virtualization for Linux, is an interesting option as it has a very minimal overhead to scale application space similar to containers like BSD Jails. Advantage is that memory allocation is soft and unutilized memory can be used by other applications.

40Open Source Compute CloudsYear StartedLicenseHypervisors Supported2008GPLXenserver, Xen Cloud Platform, KVM, VMware2006GPL Xen, KVM, VMware2010 (Developed by NASA by Anso Labs previously)

ApacheVMware ESX and ESXi, Microsoft Hyper-V, Xen, KVM and Virtual Box

Other open source compute software include Abiquo, Red Hats CloudForms and OpenNebulaNumerous companies are building cloud software on OpenStack including Nebula, Piston Inc., CloudScalingCloudStack www.cloudstack.org - CloudStack is a spons...

Recommended

View more >