OpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and Windows

34
OpenStack and Windows Alessandro Pilo5 CEO @cloudbaseit

description

Paris, 5th December 2013 : OpenStack in Action 4! organized by eNovance, brings together members of the OpenStack community.

Transcript of OpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and Windows

Page 1: OpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and Windows

OpenStack  and  Windows  

Alessandro  Pilo5  CEO  

@cloudbaseit  

Page 2: OpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and Windows

Agenda

•  Windows as a guest •  Windows licensing on OpenStack •  Heat templates •  Windows hypervisor (Hyper-V) •  Crowbar and SUSE Cloud 2

Page 3: OpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and Windows

Windows as a guest

•  Can be executed on any hypervisor used in Nova

•  No differences compared to Linux for image handling (glance etc)

•  Images are tipically sysprepped –  Why? –  It can be avoided to speed up boot times

Page 4: OpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and Windows

Synthetic drivers

•  Modern Hypervisors provide drivers to replace emulated devices with synthetic ones –  Network adapters, etc

•  Hyper-V –  Integration components / LIS

•  KVM –  VirtIO

•  VMWare –  VMWare Tools

•  XenServer / XCP –  XenServer Tools

Page 5: OpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and Windows

Cloudbase-Init

•  100% Python code •  Wrapped in a Windows service •  Plugin based architecture: –  Each plugin can be executed once or more

times at boot –  Status for each plugin is mantained in the

registry

Page 6: OpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and Windows

Cloudbase-Init installer

Page 7: OpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and Windows

Cloudbase-Init installer

Page 8: OpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and Windows

Most important plugins

•  CreateUser •  SetUserPassword •  SetHostName –  Requires a reboot

•  SSHPublicKeys •  ExtendVolumes –  Useful for different flavors / resizes

•  User data –  Including multipart: Heat!!

Page 9: OpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and Windows

Sysprep

•  Prepares a Windows image to be distributed –  Typically on large scales

•  Run before distributing any Windows image

•  OOBE –  Out of the box experience –  Normally used to let the user customize the

system

Page 10: OpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and Windows

SSH Equivalent?

•  It exists: WSMan / WinRM •  Execute remote command via HTTP / HTTPS

•  Can be used for remote PowerShell or from Linux

•  Configuration example: –  https://github.com/cloudbase/unattended-setup-

scripts/blob/master/SetupWinRMAccess.ps1

Page 11: OpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and Windows

OpenStack WS2012 R2

Page 12: OpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and Windows

OpenStack WS2012 R2

•  Complete with: –  Drivers / tools:

•  VirtIO, etc –  Cloudbase-Init –  Sysprepped

•  Eval edition can be upgraded with a simple uder_data script:

–  DISM /online /Set-Edition:ServerStandard /ProductKey:XXXXX-XXXXX-XXXXX-XXXXX-XXXXX /AcceptEula

–  Make sure to respect the eval license!!

Page 13: OpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and Windows

How to build an image?

•  Windows has the equivalent of a kickstart / preseed –  https://github.com/cloudbase/windows-

openstack-imaging-tools

•  We get lots of questions about how to build those images

•  This project automates the entire process

Page 14: OpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and Windows

Lincensing

•  Windows is surprising in OpenStack –  Datacenter license => unlimited instances –  1 license per socket –  Works with Hyper-V, VMWare, KVM, etc –  The cost is 3 EUR / Month per VM with a

density of 50 VM / host

•  Volume licensing •  Multitenant? SPLA

Page 15: OpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and Windows

SVVP support

•  Windows guests are supported on: –  Hyper-V

•  SVVP –  Windows Server Virtualization Validation

Program –  http://www.windowsservercatalog.com/

svvp.aspx

•  Red Hat, VMWare, SUSE •  Your solution is not there? –  Microsoft won’t give you support

Page 16: OpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and Windows

Heat

•  Heat and Windows are a great mix •  Templates for: –  Active directory –  Exchange (multi server) –  Sharepoint (multi server) –  SQL Server –  IIS

•  No need to know the provisioning details

Page 17: OpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and Windows

Hyper-V

•  Setup is very easy •  Our Nova driver is at it’s 3rd release! –  Folsom, Grizzly, Havana

•  Support for Hyper-V 2012 R2 •  VHDX support •  Ceilometer support •  more…

Page 18: OpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and Windows

Hyper-V 2012 availability

•  FREE edition –  Full Hypervisor –  Minimum OS support

•  Minimum impact on security updates, etc

•  Windows Server 2012 –  Just enable the related role

•  Windows 8 –  For workstation / testing / development usage

Page 19: OpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and Windows

Hyper-V / Windows

Openstack components

•  Nova Compute driver •  Quantum plugin •  Cinder Volume driver •  Windows Cloud-Init •  Ceilometer Agent (Havana)

Page 20: OpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and Windows

Hyper-V Nova Compute

•  Python Application installed as an application/service on the Hyper-V node.

•  OpenStack compute utilizes key features baked into the Hyper-V Virtualization Platform

•  Does not require windows clustering services

•  Does not require shared storage

Page 21: OpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and Windows

Neutron

•  Hyper-V plugin is part of Quantum since Jan 2013 –  Project renamed in Neutron since Havana

•  Supported network types: –  VLAN –  Flat –  Local –  NVGRE (Icehouse)

•  Plugin / agent model –  Plugin runs in quantum-server (controller) –  Agent runs on each Hyper-V compute node

Page 22: OpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and Windows

Typical Neutron setup

L2 Agent

Nova Compute

Network Node

Data Network

VLAN

Compute Node

Quantum Server

Keystone

Nova Services

...

L3 Agent

L2 Agent

DHCP Agent

Controller NodeManagement

Network

TenantCNet210.0.1.0/24VLAN ID:3

TenantANet110.0.0.0/24VLAN ID:1

External Network

30.0.0.0/24

eth0

TenantANet110.0.0.0/24VLAN ID:2

Page 23: OpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and Windows

Neutron OVS interop

•  Quantum plugin / agent AMQP RPC protocol is compatible with OpenVSwitch!

•  You can use the OVS plugin with Hyper-V agents (or vice versa) –  Limited to compatible L2 protocols: Flat / VLAN

•  You can use the L3 and DHCP agents with the Hyper-V plugin –  Using the OVS L2 agent on the networking nodes

•  Supports ML2 plugin!

Page 24: OpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and Windows

Hyper-V OpenVSwitch!

We are officially porting OpenVSwitch to Windows!

Page 25: OpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and Windows

Why OpenVSwitch?

•  De facto standard for SDN •  Great interoperability –  Hyper-V / KVM / etc

•  OpenFlow •  Tunnelling –  VXLAN –  GRE

•  Quantum OVS plugin –  No need for a different one

Page 26: OpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and Windows

Dashboard integration

•  Hyper-V uses RDP for accessing the console instead of VNC

•  By default it accepts connections on port 2179 –  Not the RDP connection on 3389! –  Access to any guest: Windows, Linux, FreeRDP, etc

•  The VM id is provided as part of an RDP protocol additional buffer called PCB (Pre Connection Buffer)

•  Authentication is performed against the host, not the guest!

Page 27: OpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and Windows

Nova Compute Installer •  Independent Python environment to avoid

conflicts with existing applications

•  Installs and registers all the required dependencies

•  Generates dynamically a nova.conf file based on the parameters provided by the user

Page 28: OpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and Windows

Nova Compute Installer

Page 29: OpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and Windows

From our web site J

Page 30: OpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and Windows

Puppet and Chef

•  Hyper-V compute nodes can be installed via Puppet or Chef as well

•  Puppet –  https://github.com/openstack-hyper-v/puppet-

openstack_hyper_v

•  Chef –  https://github.com/cloudbase/barclamp-

hyperv-compute

Page 31: OpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and Windows

Crowbar

•  Big part of Dell’s cloud strategy •  Bare-metal deployment •  vendor independent •  PXE booting –  Sledgehammer image boots and gets

configuration •  Provisioning via Crowbar web site •  Barclams –  Configuration –  Chef recipes

Page 32: OpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and Windows

Crowbar + HyperV

Page 33: OpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and Windows

SUSE Cloud 2.0

•  Supports Hyper-V and many other hypervisor options

•  Based on Crowbar –  Grizzly –  Havana

Page 34: OpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and Windows

Q&A