selecting the correct hypervisor for your cloud · virtual router ... option xenserver vsphere kvm...

39
CloudStack Day Seattle 2015 Covering Apache CloudStack 4.5 Selecting the correct hypervisor for your cloud

Upload: vonhu

Post on 03-Apr-2018

218 views

Category:

Documents


1 download

TRANSCRIPT

CloudStack Day Seattle 2015

Covering Apache CloudStack 4.5

Selecting the correct hypervisor for your cloud

#whoami

Name: Tim Mackey

Current roles: XenServer Community Manager and Evangelist; occasional coder

Cool things I’ve done • Designed laser communication systems

• Early designer of retail self-checkout machines

• Embedded special relativity algorithms into industrial control system

Find me • Twitter: @XenServerArmy

• SlideShare: slideshare.net/TimMackey

• LinkedIn: www.linkedin.com/in/mackeytim

What are we trying to accomplish?

Building a successful cloud

Service Offerings

Clearly define what you want to offer • What types of applications

• Who has access, and who owns them

• What type of access

Define how templates need to be managed • Operating system support

• Patching requirements

Define expectations around compliance and availability • Who owns backup and monitoring

Define Tenancy Requirements

Department data local to department • Where is the application data stored

Data and service isolation • VM migration and host HA

• Network services

Encryption of PII/PCI • Where do keys live when data location unknown

• Need encryption designed for the cloud

Showback to stakeholders • More than just usage, compliance and audits

Virtualization Infrastructure

Hypervisor defined by service offerings • Don’t select hypervisor based on “standards”

• Multiple hypervisors are “OK”

• Bare metal can be a hypervisor

To “Pool” resources or not • Is there a real requirement for pooled resources

• Can the cloud management solution do better?

• Real cost of shared storage

Primary storage defined by hypervisor

Template storage defined by solution • Typically low cost options like NFS

Leading hypervisor options

XenServer 6.5

Feature

Source code model Open Source (GPLv2)

Maximum VM Density 1000

CloudStack VM Density 500

CloudStack integration Direct XAPI calls

Maximum native cluster size 16

Maximum pRAM 1 TB

Largest supported VM 32 vCPU/256GB

Windows Operating System All Windows supported by Microsoft

Linux Operating Systems RHEL, CentOS, Debian, Ubuntu, SLES, OEL

Advanced features supported ovs, Storage XenMotion, DMC, Pool HA

vSphere 5.5 (no vSphere 6 yet)

Feature

Source code model Proprietary

Maximum VM Density 512

CloudStack VM Density 128

CloudStack integration vCenter

Maximum native cluster size 32

Maximum pRAM 4 TB

Largest VM 64 vCPU/1TB

Windows Operating Systems DOS, All Windows Server/Client

Linux Operating Systems Most

Advanced features supported HA, DRS, vDS, Storage vMotion

KVM

Feature

Source code model Open Source (GPLv2)

Maximum VM Density 10 times the number of pCores

CloudStack VM Density 50

CloudStack integration CloudStack Agent (libvirt)

Maximum native cluster size No native cluster support

Maximum pRAM 2 TB

Largest VM 160 vCPU/2TB

Windows Operating Systems Windows XP and higher

Linux Operating Systems Varies

Advanced features supported None

Microsoft Hyper-V

Feature

Source code model Proprietary

Maximum VM Density 1024

CloudStack VM Density 1024

CloudStack integration CloudStack Agent (C# calling WMI)

Maximum native cluster Size 64

Maximum pRAM 4 TB

Largest VM 64 vCPU/1TB

Windows Operating Systems All Windows supported by Microsoft

Linux Operating Systems RHEL, CentOS, Debian, Ubuntu, SLES, OEL

Advanced features supported VHDX, Storage Motion (shared only)

Defining the network

Flat Network – Basic Layer 3 Network

Option XenServer vSphere KVM Hyper-V

Security Groups Yes- bridge No Yes Yes

IPv6 Yes No Yes No

Multiple IPs per NIC Yes Yes Yes Yes

Nicira NVP Yes No Yes No

BigSwitch VNS Yes No Yes No

65.11.1.2

65.11.1.3

65.11.1.4

65.11.1.5

Public Network

65.11.0.0/16

Guest VM 1

Guest VM 2

Guest VM 3

Guest VM 4

DHCP,

DNS

CloudStack

Virtual Router

Security Group 1

Security Group 2

VLANs for Private Cloud

Option XenServer vSphere KVM Hyper-V

Max VLANs 800 254 1024 4094

IPv6 Yes No Yes No

Multiple IPs per

NIC

Yes Yes Yes Yes

Nicira NVP Yes No Yes No

BigSwitch VNS Yes No Yes No

MidoKura No No Yes No

VPC Yes Yes Yes Yes

NetScaler Yes Yes Yes Yes

F5 BigIP Yes Yes Yes Yes

Juniper SRX No Yes Yes Yes

Juniper EX/QFX No Yes Yes No

Cisco VNMC No Yes No No

GloboDNS Yes No No No

Brocade VDX Yes Yes Yes No

10.1.1.1

10.1.1.3

10.1.1.4

10.1.1.5

Public

Network/Internet

Guest Virtual Network 10.0.0.0/8

VLAN 100

DHCP, DNS

NAT

Load

Balancing

VPN

Public IP

65.37.14.1

Gateway

10.1.1.1

Guest VM

1

Guest VM

2

Guest VM

3

Guest VM

4

CloudStack

Virtual

Router

Beyond the VLAN – Software Defined Networking

Option XenServer vSphere KVM Hyper-V

OVS GRE tunnels Yes - ovs No No No

Nicira STT tunnel Yes Yes Yes No

MidoNet No No Yes No

VXLAN No Yes Yes No

NVGRE No No No No

Nexus 1000v No Yes No No

Juniper Contrail Yes No No No

Palo Alto Yes Yes Yes No

Nuage VSP Yes Yes No No

Virtual Private Cloud and nTier Applications

Feature XenServer vSphere KVM Hyper-V

PVLAN Yes - ovs Yes ovs Yes –

Hyper-V

VR

required

IPv6 Yes No Yes No

Distributed routing Yes - ovs No ovs No

Web

App

DB

Router

DC1

DC2 DC3

DC4

DC5

DC6

VLAN 1

VLAN 2

VLAN 3

S2S VPN

Private

GW

CloudStack view of Templates

Template Management

My first template • Existing VM or appliance in VHD format – compression optional

• Need to have HTTP server

• Set secstorage.allowed.internal.sites if private cloud

Creation options • Register template in UI

• Templates Register Template

• Upload using registerTemplate API

• http://cloudstack.apache.org/docs/api/apidocs-4.5/user/registerTemplate.html

• Clone from CloudStack instance

• Stop instance View Volumes Create Template

Key Template Attributes

Obvious • Hypervisor

• Operating system type

• Zone

Not so obvious • IsDynamicallyScalable Hypervisor tools

• PasswordEnabled CloudStack sets root pwd

• SSHKeyEnabled Can post configure

• RequiresHVM Defines virtualization mode

VM Password and SSH Key Management Challenges

Obtain information from Virtual Router • IP is obtained from leases

• Scripts use wget

• Assumes sysinit not systemd

What to fix – varies by OS? • CentOS 7 defaults to curl not wget

• CentOS 7 is systemd need unit files

• CentOS 7 may use NetworkManager

10 minutes to move a live service to the cloud (network willing) …

Demo time – a break from PowerPoint….

The Service to Migrate – Piwigo http://piwigo.org

The Original Topology

The Cloud Topology with Original Data Store Intact

Template creation takes time ….

Back to the hypervisors

Storage, storage and more storage

Instances need a home ….

Primary Storage Options

Feature XenServer vSphere KVM Hyper-V

Local storage Yes Yes Yes Yes

NFS Yes Yes Yes No

SMB No No No SMB3

Single path iSCSI Yes Yes Yes No

Multipath iSCSI PreSetup No No No

Direct array No VAAI No No

Shared Mount No No Yes No

SolidFire Plugin Yes Yes Yes No

NetApp Plugin Yes Yes Yes No

CloudBytes Elastistor Yes No No No

Zone wide No Yes Yes No

Ceph RBD No No Yes No

Clustered LVM No No Yes No

Cluster

Host

Host Primary Storage

Secondary Storage Options

Option XenServer vSphere KVM Hyper-V

NFS Yes Yes Yes No

Swift(1) Yes Yes Yes No

S3 compatible (2) Yes Yes Yes No

SMB No No No Yes

Template format VHD OVA QCOW2,

VHD,

VMDK,

RAW,

IMG

VHD,

VHDX

Primary storage

golden cache

Yes No No No

(1) Requires NFS staging area

(2) Can be region wide, but must not have NFS secondary storage in zone

Zone Secondary Storage

Pod

Cluster

Host

Host

Primary Storage

The limits and features which matter

Core virtualization capabilities

CloudStack Features

Feature XenServer vSphere KVM Hyper-V

Disk IO Statistics Yes No Yes Yes

Memory Overcommit Yes (4x) Yes No No

Dedicated resources Yes Not with HA/DRS Yes Yes

Disk IO throttling No No Yes No

Disk snapshot (running) Yes Yes No No

Disk snapshot (pluggable) Partial Partial No No

Disk snapshot (Stopped) Yes Yes Yes Yes

Memory snapshot Yes Yes Yes No

Zone wide primary storage No Yes Yes SMB 3.0 only

Resize disk Offline Online Grow Online No

High availability Host + CloudStack Native CloudStack CloudStack

CPU sockets 6.2 and higher Yes Yes Yes

Affinity groups Yes Yes Yes Yes

GPU passthrough/vGPU 6.2 SP1 and higher No No No

AutoScaling VM Instances Native, NetScaler NetScaler NetScaler NetScaler

Multiple Hypervisor Support

Networking

• Ensure network labels match

• Topology is intersect of chosen hypervisors

• Hyper-V requires Hyper-V system VMs

Storage

• Force system VMs to specific hypervisor type

• Zone wide primary storage limited

Operations

• vSphere Datacenter can not span zones

• Hyper-V may not be mixed with other hypervisors in a zone

• HA won’t migrate between hypervisors

• Capacity planning at the cluster/pod level more difficult

Picking the “best one”

When to use which hypervisor…

KVM

Primary value proposition:

• Low cost with available vendor support and familiar administration model

• Broad feature set with active development

Cloud use cases:

• Linux centric workloads

• Dev/test clouds

• Web hosting

• Tenant density which dictates SDN options

Weaknesses:

• Requires use of an installed libvirt agent

• Limited native storage options

• No use of advanced native features

vSphere

Primary value proposition:

• Broad application and operating system support with large eco-system of vendor partners

• Readily available pool of vSphere administration talent

• Many features are native implementations

• Direct feature integration via vCenter

Cloud use cases:

• Private enterprise clouds

• Dev/test clouds

Weaknesses:

• vSphere up-front license and ongoing support costs, many features require Enterprise Plus

• vCenter integration requires redundant designs

• Single data center per zone model

XenServer

Primary value proposition:

• Low cost with available vendor support

• Broad feature set with active development

• Large install base

• Direct integration via XAPI toolstack

Cloud use cases:

• Linux centric workloads

• Dev/test clouds and web hosting providers

• Desktop as a Service clouds

• Large VM density and secure tenant isolation

Weaknesses:

• Minimal use of advanced native features

Tying it all Together

1. Define success criteria

2. Select a topology which works

3. Decide on storage options

4. Define supported configurations

5. Select preferred hypervisor(s)

6. Validate matrix

7. Build your Cloud

Let’s check on the demo …

Questions?