Selecting the correct hypervisor for CloudStack 4.5

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

Transcript of Selecting the correct hypervisor for CloudStack 4.5

Page 1: Selecting the correct hypervisor for CloudStack 4.5

CloudStack Day Seattle 2015

Covering Apache CloudStack 4.5Selecting the correct hypervisor for your cloud

Page 2: Selecting the correct hypervisor for CloudStack 4.5

#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

Page 3: Selecting the correct hypervisor for CloudStack 4.5

What are we trying to accomplish?Building a successful cloud

Page 4: Selecting the correct hypervisor for CloudStack 4.5

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

Page 5: Selecting the correct hypervisor for CloudStack 4.5

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

Page 6: Selecting the correct hypervisor for CloudStack 4.5

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

Page 7: Selecting the correct hypervisor for CloudStack 4.5

Leading hypervisor options

Page 8: Selecting the correct hypervisor for CloudStack 4.5

XenServer 6.5

FeatureSource code model Open Source (GPLv2)Maximum VM Density 1000 CloudStack VM Density 500CloudStack integration Direct XAPI callsMaximum native cluster size 16Maximum pRAM 1 TBLargest supported VM 32 vCPU/256GBWindows Operating System All Windows supported by MicrosoftLinux Operating Systems RHEL, CentOS, Debian, Ubuntu, SLES, OELAdvanced features supported ovs, Storage XenMotion, DMC, Pool HA

Page 9: Selecting the correct hypervisor for CloudStack 4.5

vSphere 5.5 (no vSphere 6 yet)

FeatureSource code model ProprietaryMaximum VM Density 512CloudStack VM Density 128CloudStack integration vCenterMaximum native cluster size 32Maximum pRAM 4 TBLargest VM 64 vCPU/1TBWindows Operating Systems DOS, All Windows Server/ClientLinux Operating Systems MostAdvanced features supported HA, DRS, vDS, Storage vMotion

Page 10: Selecting the correct hypervisor for CloudStack 4.5

KVM

FeatureSource code model Open Source (GPLv2)Maximum VM Density 10 times the number of pCoresCloudStack VM Density 50CloudStack integration CloudStack Agent (libvirt)Maximum native cluster size No native cluster supportMaximum pRAM 2 TBLargest VM 160 vCPU/2TBWindows Operating Systems Windows XP and higherLinux Operating Systems VariesAdvanced features supported None

Page 11: Selecting the correct hypervisor for CloudStack 4.5

Microsoft Hyper-V

FeatureSource code model ProprietaryMaximum VM Density 1024CloudStack VM Density 1024CloudStack integration CloudStack Agent (C# calling WMI)Maximum native cluster Size 64Maximum pRAM 4 TBLargest VM 64 vCPU/1TBWindows Operating Systems All Windows supported by MicrosoftLinux Operating Systems RHEL, CentOS, Debian, Ubuntu, SLES, OELAdvanced features supported VHDX, Storage Motion (shared only)

Page 12: Selecting the correct hypervisor for CloudStack 4.5

Defining the network

Page 13: Selecting the correct hypervisor for CloudStack 4.5

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 Network65.11.0.0/16

Guest VM 1

Guest VM 2

Guest VM 3

Guest VM 4

DHCP, DNS

CloudStackVirtual Router

Security Group 1

Security Group 2

Page 14: Selecting the correct hypervisor for CloudStack 4.5

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/8VLAN 100

DHCP, DNSNATLoad BalancingVPN

Public IP 65.37.14.1

Gateway10.1.1.1

Guest VM 1

Guest VM 2

Guest VM 3

Guest VM 4

CloudStackVirtual Router

Page 15: Selecting the correct hypervisor for CloudStack 4.5

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

Page 16: Selecting the correct hypervisor for CloudStack 4.5

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

DC2DC3

DC4

DC5

DC6

VLAN 1

VLAN 2

VLAN 3

S2S VPN

PrivateGW

Page 17: Selecting the correct hypervisor for CloudStack 4.5

CloudStack view of Templates

Page 18: Selecting the correct hypervisor for CloudStack 4.5

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

Page 19: Selecting the correct hypervisor for CloudStack 4.5

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

Page 20: Selecting the correct hypervisor for CloudStack 4.5

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

Page 21: Selecting the correct hypervisor for CloudStack 4.5

10 minutes to move a live service to the cloud (network willing) …Demo time – a break from PowerPoint….

Page 22: Selecting the correct hypervisor for CloudStack 4.5

The Service to Migrate – Piwigohttp://piwigo.org

Page 23: Selecting the correct hypervisor for CloudStack 4.5

The Original Topology

Page 24: Selecting the correct hypervisor for CloudStack 4.5

The Cloud Topology with Original Data Store Intact

Page 25: Selecting the correct hypervisor for CloudStack 4.5

Template creation takes time ….Back to the hypervisors

Page 26: Selecting the correct hypervisor for CloudStack 4.5

Storage, storage and more storageInstances need a home ….

Page 27: Selecting the correct hypervisor for CloudStack 4.5

Primary Storage Options

Feature XenServer vSphere KVM Hyper-VLocal storage Yes Yes Yes YesNFS Yes Yes Yes NoSMB No No No SMB3Single path iSCSI Yes Yes Yes NoMultipath iSCSI PreSetup No No NoDirect array No VAAI No NoShared Mount No No Yes NoSolidFire Plugin Yes Yes Yes NoNetApp Plugin Yes Yes Yes NoCloudBytes Elastistor Yes No No NoZone wide No Yes Yes NoCeph RBD No No Yes NoClustered LVM No No Yes No

Cluster

Host

HostPrimary Storage

Page 28: Selecting the correct hypervisor for CloudStack 4.5

Secondary Storage Options

Option XenServer vSphere KVM Hyper-VNFS 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

ZoneSecondary Storage

Pod

Cluster

Host

HostPrimary Storage

Page 29: Selecting the correct hypervisor for CloudStack 4.5

The limits and features which matterCore virtualization capabilities

Page 30: Selecting the correct hypervisor for CloudStack 4.5

CloudStack Features

Feature XenServer vSphere KVM Hyper-VDisk 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

Page 31: Selecting the correct hypervisor for CloudStack 4.5

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

Page 32: Selecting the correct hypervisor for CloudStack 4.5

Picking the “best one”When to use which hypervisor…

Page 33: Selecting the correct hypervisor for CloudStack 4.5

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

Page 34: Selecting the correct hypervisor for CloudStack 4.5

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

Page 35: Selecting the correct hypervisor for CloudStack 4.5

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

Page 36: Selecting the correct hypervisor for CloudStack 4.5

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

Page 37: Selecting the correct hypervisor for CloudStack 4.5

Let’s check on the demo …

Page 38: Selecting the correct hypervisor for CloudStack 4.5

Questions?

Page 39: Selecting the correct hypervisor for CloudStack 4.5