Download Lecture 4

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Wake-on-LAN wikipedia , lookup

CAN bus wikipedia , lookup

Network tap wikipedia , lookup

Piggybacking (Internet access) wikipedia , lookup

Cracking of wireless networks wikipedia , lookup

Recursive InterNetwork Architecture (RINA) wikipedia , lookup

Distributed firewall wikipedia , lookup

Airborne Networking wikipedia , lookup

Storage virtualization wikipedia , lookup

Transcript
INFRASTRUCTURE AS A SERVICE
CLOUD ARCHITECTURES
CS 595
LECTURE 4
IAAS CLOUD ARCHITECTURES
• IaaS Ecosystems
• Introduction to IaaS
• Hardware virtualization
•
•
•
•
•
CPU
Memory
I/O
Network
•
• Software virtualization
•
Hypervisors
•
•
•
•
•
•
•
•
•
•
•
Eucalyptus
Openstack
Cloudstack
OpenNebula
Public Clouds
• Amazon AWS
• Google App/Compute Engines
• Microsoft Azure
• Other Cloud Issues
KVM
•
•
•
•
•
•
Xen
VirtualBox
Full Virtualization
Para Virtualization
Host OS Virtualization
Container-based Virtualization
Open Source
2
Live Migration
Scalability
Availability
Management
Performance
Security
2
EUCALYPTUS
Elastic Utility Computing Architecture Linking Your Programs To Useful Systems
• Eucalyptus is a simple open architecture for implementing cloud
functionality at the IaaS level.
• It is specifically designed to be easy to install and maintain in a
research setting, and that it is easy to modify, instrument, and extend.
• Eucalyptus can be deployed and executed without modification to the
underlying infrastructure.
3
EUCALYPTUS - COMPUTE COMPATIBILITY
Operating System & Hypervisors
• CentOS+XEN/KVM
• Ubuntu+XEN/KVM
• RHEL+XEN/KVM
• VMWare ESX/ESXi
• VMware vCenter
4
EUCALYPTUS - GUEST OS
Operating Systems
• Microsoft Windows
• 7, 8, 10, Server
• All Modern Linux Distributions
• RedHat, CentOS, Ubuntu, Fedora, Debian, OpenSUSE, SLES, etc.
5
EUCALYPTUS - ARCHITECTURE
6
EUCALYPTUS COMPONENTS
• Cloud controller (CLC)
• Warlus
• Storage controller
• Cluster controller
• Node controller
7
CLOUD CONTROLLER (CLC)
The Cloud Controller (CLC) is the entry-point into the cloud for
administrators, developers, project managers, and end users.
Functions:
•Monitor the availability of resources on various components of the cloud
infrastructure
• Resource arbitration
•
• Deciding which clusters will be used for provisioning the instances
Monitoring the running instances
8
EUCALYPTUS - CLUSTER CONTROLLER(CC)
The Cluster Controller (CC) executes on a cluster frontend
machine, or any machine that has network connectivity to both
the nodes running NCs and to the machine running the CLC.
Functions:
 To receive requests from CLC to deploy instances
 To decide which NCs to use for deploying the instances on
 To control the virtual network available to the instances
 To collect information about the NCs registered with it and report it
to the CLC
9
EUCALYPTUS - NODE CONTROLLER (NC)
The Node Controller (NC) is executed on every node that is
designated for hosting VM instances.
Functions:
• Collection of data related to the resource availability and utilization
• on the node and reporting the data to CC
• Instance life cycle management
10
EUCALYPTUS - STORAGE CONTROLLER
• The Storage Controller (SC) provides functionality similar to the
Amazon Elastic Block Store (Amazon EBS).
• The SC is capable of interfacing with various storage systems (NFS, iSCSI, SAN
devices, etc.).
11
EUCALYPTUS - WALRUS
• Walrus allows users to store persistent data, organized as buckets
and objects.
• You can use Walrus to create, delete, and list buckets, or to put, get, and delete
objects, or to set access control policies.
• Walrus is interface compatible with Amazon’s Simple Storage Service
(S3), providing a mechanism for storing and accessing virtual
machine images and user data
12
EUCALYPTUS - INTERFACE
13
EUCALYPTUS - INTERFACE
14
EUCALYPTUS - HARDWARE REQUIREMENTS
The following minimum specifications are suggested for machines
that will be used for running the CC, CLC, Walrus, or SC.
Hardware
• CPU
• Memory
• Disk
• Disk space
• Networking
Minimum
Suggested
2GHz
2 x 2GHz
2GB
4 GB
5400rpm IDE
7200rpm SATA
100 GB
300 GB
100 Mbps
1000 Mbps
15
EUCALYPTUS - HARDWARE REQUIREMENTS FOR NC
Hardware
Minimum
Suggested
• CPU
• Memory
• Disk
• Disk space
• Networking
VT extensions
64-bit, multi-core
2 GB
4 GB
5400rpm IDE
SSD
100 GB
300 GB
100 Mbps
1000 Mbps
16
OPENSTACK
• IaaS cloud computing software developed by Rackspace and NASA
in 2010.
• Compute (Nova)
• Network (Neutron)
• Image storage (Glance)
• Block storage (Cinder) *
• Object storage (Swift)*
• Identity (Keystone)
• Metering (Ceilometer)*
• Orchestration (Heat)*
• Dashboard (Horizon)
17
* Not Covered
OPENSTACK ARCHITECTURE
18
OPENSTACK – NOVA COMPUTE
• Execution of compute workloads
• Technology agnostic
• Virtual machine or container
• Virtualization agnostic
• Libvirt (KVM, QEMU, Xen, LXC), XenAPI, Hyper-V, VMware ESX, PowerVM,
Docker, Bare-metal
19
OPENSTACK – GLANCE STORAGE
Module that provides discovery, registration, and delivery services
for disk and server images.
• Write-once, read-many storage of images
• Image copied on use by Nova
• Format agnostic
• eg raw, qcow2, etc
20
OPENSTACK – NEUTRON NETWORKING
• Network infrastructure management
• Concepts
• Networks
• Routers
• Subnets
• Ports
• Multiple technologies
• OpenVSwitch, Linux Bridge, Vendor plugins
21
OPENSTACK – KEYSTONE IDENTITY
• Openstack module that provides client authentication, service
discovery, and distributed multitenant authorization.
• Concepts
• User authentication
• Login services
22
OPENSTACK – HORIZON DASHBOARD
• Module that provides administrators and users with a graphical interface to
access, provision, and automation of cloud-based resources
23
CLOUDSTACK
Developed originally by Cloud.com in 2010.
• Open source Infrastructure as a Service (IaaS) solution.
• “Programmable” Data Center orchestrator
• Hypervisor agnostic
• Supports scalable storage
• Supports complex enterprise networking (Firewall, load balancer, VPN, etc.)
• Multi-tenant
CLOUDSTACK - HISTORY
• Original company VMOPs (2008)
• Founded by Sheng Liang former lead dev on JVM
• Open source (GPLv3) as CloudStack
• Acquired by Citrix (July 2011)
• Relicensed under ASL v2 April 3, 2012
• Accepted as Apache Incubating Project April 16, 2012
• First Apache (ACS 4.0) released november 2012
• Top Level Project Since March 2013.
CLOUDSTACK - FLEXIBLE PLATFORM
Compute
Hypervisor
XenServer
Storage
VMware
Oracle VM
KVM
Bare metal
iSCSI
Fiber
Channel
NFS
Swift
Block & Object
Local Disk
Primary Storage
Network
Secondary Storage
Network & Network Services
Network
Type
Isolation
Firewall
Load
balancer
VPN
CLOUDSTACK - DASHBOARD
CLOUDSTACK - VIRTUAL MACHINE MANAGEMENT
Users
VM Operations
Start
Console Access
VM Status
Change
Service Offering
•
CPU Utilized
2 CPUs
4 CPUs
Stop
•
Network Read
1 GB
RAM
4 GB
RAM
Restart
•
Network Writes
20 GB
200 GB
20 Mbps
100
Mbps
Destroy
CLOUDSTACK - VOLUME & SNAPSHOT MANAGEMENT
Add / Delete
Volumes
Create Templates
from Volumes
Schedule
Snapshots
View Snapshot
History
VM 1
Volume
Volume
Template
Hourly
Weekly
Daily
Monthly
Now
….
CLOUDSTACK - NETWORK & NETWORK SERVICES
• Create Networks and attach
VMs
• Acquire public IP address for
NAT & load balancing
• Control traffic to VM using
ingress and egress firewall
rules
• Set up rules to load balance
traffic between VMs
OPEN NEBULA
• OpenNebula.org was an open-source project in 2005 by Ignacio M. Llorente
and Ruben S. Montero.
• first public release in 2008
• Starting from 2010 OpenNebula.org is managed by C12G labs.
• The current release is 5.0.1 in June 2016.
• OpenNebula is an open source platform for managing heterogeneous
distributed data center resources using an IaaS cloud interface.
31
OPEN NEBULA - MANAGEMENT
• Virtualization subsystems
• Networking subsystems
• Storage subsystems
• Host subsystems
• Authorization subsystems
32
OPEN NEBULA
• Interfaces & APIs
• Interfaces to manage physical and virtual resources
• User and Groups
• Supports accounts, groups, authentication, and authorized mechanisms.
• Hosts and Virtualization
• Supports Xen, KVM, VMware.
• Networking
• Supports for VLANs
• Storage and Images
• Supports both non-shared and shared file systems.
33
OPEN NEBULA - ARCHITECTURE
34
OPEN NEBULA - INTERFACE
35