Open Stack HyperV Alessandro Pilotti CEO Cloudbase Solutions
Open. Stack & Hyper-V Alessandro Pilotti CEO Cloudbase Solutions @cloudbaseit
Cloudbase Solutions • Company started in Italy as. Net / Linux interop dev and consulting • Branch started in Timisoara in 2012 to hire devs and provide colocation services • Started using Open. Stack for the internal IDC • Added Hyper-V support • Open. Stack business exploded
Agenda • • Open. Stack + Hyper-V integration Free. RDP HTML 5 dashboard Open. VSwitch on Windows Cloudbase-Init Windows Server 2012 Eval Image Crowbar integration Cross Cloud Migration Havana plans
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
Hyper-V / Windows Openstack components • • • Nova Compute driver Quantum plugin Cinder Volume driver Windows Cloud-Init Ceilometer Agent (Havana)
Hyper-V Nova Compute • Supported features (anything missing? ) – – – Launch / reboot / terminate Resize Pause / unpause Suspend / resume Attach / detach volume Live migration Snapshot Guest / host info Glance integration Config Drive Rescue (Havana) RDP console (instead of VNC) • Deprecated Nova network is not supported beyond “flat” networking – All Hyper-V networking features are part of Quantum
Quantum • Hyper-V plugin is part of Quantum since Jan 2013 • Supported network types: – – VLAN Flat Local NVGRE (Havana) • Plugin / agent model – Plugin runs in quantum-server (controller) – Agent runs on each Hyper-V compute node
Quantum OVS interop • Quantum plugin / agent AMQP RPC protocol is compatible with Open. VSwitch!! • You can use the OVS plugin with Hyper-V agents (or vice versa) – Limited to compatible L 2 protocols: Flat / VLAN • You can use the L 3 and DHCP agents with the Hyper-V plugin – Using the OVS L 2 agent on the networking nodes • Great for interoperability (e. g. KVM + Hyper-V)
Hyper-V Open. VSwitch! We officially started porting Open. VSwitch to Windows!!
Why Open. VSwitch? • De facto standard for SDN • Great interoperability – Hyper-V / KVM / etc • Open. Flow • Tunnelling – VXLAN – GRE • Quantum OVS plugin – No need for a different one
Open. VSwitch porting • • Porting Posix calls to Windows API Same CLI as on Linux Open Source Windows kernel drivers – NDIS Hyper-V extensions • VXLAN, GRE – Best performance • Support for Hyper-V 2012 and above
Open. VSwitch Windows Kernel drivers
Typical Quantum setup
VLAN drivers issues • BEWARE: Some Windows NIC drivers disable VLAN access by default! • HKEY_LOCAL_MACHINESYSTEMCurrent. Cont rol. SetControlClass{4 d 36 e 972 -e 325 -11 ce-bfc 108002 be 10318} • Look in all the child keys xxxx, e. g. 0001, 0002 etc for a value "VLan. Filtering". Make sure that if present it's set to 0. • In case of changes, reboot the server or restart the corresponding adapters.
Free. RDP • Free. RDP is an amazing RDP open source client. – Apache 2 license – Multiplatform • Linux • Mac OS X • Windows • It provides support for the PCB parameter required by Hyper-V • We are using it as a standalone client on the free Hyper-V server and on Linux, Mac OS X
Free. RDP-Web. Connect • An HTML 5 RDP client based on canvas and websockets – Similar to No. VNC • Uses a C++ demon (wsgate) to handle websocket connections and connect to the RDP server – Better performance compared to the Python proxy used by No. VNC • We provided support for Hyper-V
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
Nova Compute Installer • Creates a new Hyper-V external switch if required • Registers nova-compute as a service and starts it • Registers quantum-hyperv-agent as a service and starts it (optional) • Enables the Microsoft i. SCSI Initiator service (optional)
Unattended mode • Can be installed in fully unattended mode, great for: – Chef, Puppet, Group Policies… • msiexec /i Hyper. VNova. Compute. msi /qn /l*v log. txt ADDLOCAL=Hyper. VNova. Compute, Quantum. Hyper. VAgent, i. SCSI SWInitiator, Open. Stack. Cmd. Prompt INSTALLDIR=C: Open. StackNova GLANCEHOST=glancehost GLANCEPORT=9292 RABBITHOST=rabbithost RABBITPORT=5672 RABBITPASSWORD=12345678 NOVASQLCONNECTION=mysql: //user: password@host/nova INSTANCESPATH=C: Hyper. V ADDVSWITCH=0 VSWITCHNAME=external 1 LIMITCPUFEATURES=”" USECOWIMAGES=1 LOGDIR=C: log ENABLELOGGING=1 VERBOSELOGGING=1 QUANTUMURL=http: //quantumhost: 9696 QUANTUMADMINTENANTNAME=service QUANTUMADMINUSERNAME=quantum QUANTUMADMINPASSWORD=12345678 QUANTUMADMINAUTHURL=http: //keystonehost: 35357/v 2. 0
Nova Compute Installer
From our web site
Windows Cloud-Init • Cloudbase-init (aka Windows Cloud-Init) – Similar to the Linux cloud-init – License: Apache 2 • Porting Cloud-Init to Linux was not possible – It requires some major refactoring • Supported data sources: – Open. Stack HTTP metadata – Config. Drive V 2 – EC 2 HTTP metadata (contributed by Mirantis)
Windows Cloud-Init • Plugin based architecture • Supported plugins: – – – Set. Host. Name. Plugin Create. User. Plugin Network. Config. Plugin Set. User. SSHPublic. Keys. Plugin User. Data. Plugin Resize. FSPlugin
Userdata format • • Windows Batch Powershell Bash Multi-part (Havana) – Heat support
Password generation • New Grizzly feature 1. Password is randomly generated – Can be forced to the value injected by Nova 2. Password in encrypted with the SSH public key 3. Password is POSTed to the metadata service 4. Password can be retrieved by the client and decrypted with the SSH private key – nova get-password vm 1. ssh/id_rsa
Windows Installer
Unattended mode • Like all our installers, it can be executed in fully unattended mode: • msiexec /i Cloudbase. Init. Setup. msi /qn /l*v log. txt NETWORKADAPTERNAME="Intel(R) PRO/1000 MT Network Connection"
Open. Stack Windows Server 2012!!
Open. Stack WS 2012 • WS 2012 Standard - Evaluation edition – Testing only!! • Available for: – Hyper-V – KVM – Xen. Server / XCP • www. cloudbase. it
Open. Stack WS 2012 • Complete with: – Drivers / tools: • Virt. IO / Xen. Server Tools – Cloudbase-Init – Sysprepped • Eval edition can be upgraded with a simple uder_data script: – DISM /online /Set-Edition: Server. Standard /Product. Key: XXXXX-XXXXX-XXXXX /Accept. Eula – Make sure to respect the eval license!!
Cinder Windows installer • Cinder includes a driver for Windows Storage Server 2012 • We created an installer that deploys a complete Python environment with all the required dependencies • Registers and starts cinder-volumes • Key community contributor: – Pedro Navarro Perez (Tx! )
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
Crowbar + Hyper. V
Cross Cloud migration • Vendor lock-in anybody? • Just a few clicks to migrate virtual workloads to and from: – Amazon AWS – Azure – Open. Stack • Including Rack. Space – VMWare v. Sphere – MS System Center • Currently in beta
Havana!! • Planning for Havana now! – – – More Quantum: NVGRE, security groups, etc Ceilometer Hyper-V agent Heat Windows Cloud-Init support VHDX support Ephemeral storage Support for more image formats (e. g. AMI/ARI/AKI) Nova rescue Active Directory Keystone scalability VDI support Fibre channel VM dynamic memory support Cinder improvements…
Resources • Cloudbase Solutions – http: //www. cloudbase. it – @cloudbaseit • Hyper-V – http: //www. microsoft. com/en-us/servercloud/hyper-v-server/
Q & A
- Slides: 37