370 likes | 672 Views
OpenStack & 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
E N D
OpenStack &Hyper-V Alessandro PilottiCEO Cloudbase Solutions @cloudbaseit
Cloudbase Solutions • Company started in Italy as .Net / Linux interopdev and consulting • Branch started in Timisoara in 2012 to hire devs and provide colocation services • Started using OpenStack for the internal IDC • Added Hyper-V support • OpenStack business exploded
Agenda • OpenStack + Hyper-V integration • FreeRDP HTML5 dashboard • OpenVSwitch 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 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 • Great for interoperability (e.g. KVM + Hyper-V)
Hyper-V OpenVSwitch! We officially started porting OpenVSwitch to 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
OpenVSwitch 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
OpenVSwitch Windows Kernel drivers
VLAN drivers issues • BEWARE: Some Windows NIC drivers disable VLAN access by default! • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4d36e972-e325-11ce-bfc1-08002be10318} • Look in all the child keys xxxx, e.g. 0001, 0002 etc for a value "VLanFiltering". Make sure that if present it's set to 0. • In case of changes, reboot the server or restart the corresponding adapters.
FreeRDP • FreeRDP 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
FreeRDP-WebConnect • An HTML5 RDP client based on canvas and websockets • Similar to NoVNC • Uses a C++ demon (wsgate) to handle websocket connections and connect to the RDP server • Better performance compared to the Python proxy used by NoVNC • 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 iSCSI Initiator service (optional)
Unattended mode • Can be installed in fully unattended mode, great for: • Chef, Puppet, Group Policies… • msiexec/iHyperVNovaCompute.msi /qn /l*v log.txt ADDLOCAL=HyperVNovaCompute,QuantumHyperVAgent,iSCSISWInitiator,OpenStackCmdPrompt INSTALLDIR=C:\OpenStack\Nova GLANCEHOST=glancehost GLANCEPORT=9292 RABBITHOST=rabbithost RABBITPORT=5672 RABBITPASSWORD=12345678 NOVASQLCONNECTION=mysql://user:password@host/nova INSTANCESPATH=C:\HyperV ADDVSWITCH=0 VSWITCHNAME=external1 LIMITCPUFEATURES=”" USECOWIMAGES=1 LOGDIR=C:\log ENABLELOGGING=1 VERBOSELOGGING=1 QUANTUMURL=http://quantumhost:9696 QUANTUMADMINTENANTNAME=service QUANTUMADMINUSERNAME=quantum QUANTUMADMINPASSWORD=12345678 QUANTUMADMINAUTHURL=http://keystonehost:35357/v2.0
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: • OpenStack HTTP metadata • ConfigDrive V2 • EC2 HTTP metadata (contributed by Mirantis)
Windows Cloud-Init • Plugin based architecture • Supported plugins: • SetHostNamePlugin • CreateUserPlugin • NetworkConfigPlugin • SetUserSSHPublicKeysPlugin • UserDataPlugin • ResizeFSPlugin
Userdata format • Windows Batch • Powershell • Bash • Multi-part (Havana) • Heat support
Password generation • New Grizzly feature • Password is randomly generated • Can be forced to the value injected by Nova • Password in encrypted with the SSH public key • Password is POSTed to the metadata service • Password can be retrieved by the client and decrypted with the SSH private key • nova get-password vm1 .ssh/id_rsa
Unattended mode • Like all our installers, it can be executed in fully unattended mode: • msiexec /iCloudbaseInitSetup.msi /qn /l*v log.txt NETWORKADAPTERNAME="Intel(R) PRO/1000 MT Network Connection"
OpenStack WS2012 • WS 2012 Standard - Evaluation edition • Testing only!! • Available for: • Hyper-V • KVM • XenServer / XCP • www.cloudbase.it
OpenStack WS2012 • Complete with: • Drivers / tools: • VirtIO / XenServer Tools • 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!!
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
Cross Cloud migration • Vendor lock-in anybody? • Just a few clicks to migrate virtual workloads to and from: • Amazon AWS • Azure • OpenStack • Including RackSpace • VMWarevSphere • 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/server-cloud/hyper-v-server/