SlideShare ist ein Scribd-Unternehmen logo
1 von 49
Downloaden Sie, um offline zu lesen
 QEMU development and testing automation
using MS HCK
Anton Nayshtut, anton@daynix.com
Yan Vugenfirer, yan@daynix.com
Daynix Computing LTD
Agenda
What is WHQL/HCK?
Introducing VirtHCK
Using VirtHCK
Call to action

Daynix Computing LTD

2
What is HCK/WHQL?
The Windows certification program (previously known
as the Windows Logo Program) for devices and system
A comprehensive devicesystem test toolkit by
Microsoft
Devices which pass HCK are certified and their binaries
are digitally signed

Daynix Computing LTD

3
HCK test kit
Introduced with Windows 8 (previous kit know as WLK)
Predefined test suites for each device type
Ability to add your own tests for additional testing
outside of the certification process
Reproducible scenarios

Daynix Computing LTD

4
Benefits for QEMU and
Linux community
QEMU device testing (not only virtio)
Host subsystems testing, for example networking
Extensive coverage for defined device categories
Regression testing
Stress testing

Daynix Computing LTD

5
HCK PCI compliance test
Device under test compliance to PCI spec
Applicable for:
New QEMU chipsets
PCIe devices
Next generation of virtio devices
Existing PCI devices

Daynix Computing LTD

6
HCK NDIS (network) tester (1)
Comprehensive networking test suite
Send/receive,
Stress tests (MPE)
Offload, VLAN, priority, packet filtering
etc
Not once used to test the robustness of the host networking
stack
Daynix Computing LTD

7
HCK NDIS (network) tester (2)
Applicable for
QEMU network devices
New devices
New features
Host network components
Bridge
Open vSwitch
TAP
Kernel
Daynix Computing LTD

8
HCK Windows OS tests
Device path exerciser
Identifies drivers that do not correctly handle the
different IO calls
Driver verifier
Captures deadlocks, memory leaks, memory
corruption
Verified correctness of kernel API usage
Daynix Computing LTD

9
HCK power management tests
The test cycling through different sleep states
There are variations of IO and PNP (disable/enable)
during, before and after power transitions
Applicable for:
QEMU Devices power management support
SeaBIOS

Daynix Computing LTD

10
Our past experience
Transfer hangs with vhost.
Offload/VLAN related corner cases with network
devices (virtio-net, vmxnet3, vmxnet).
vmxnet3 and pvscsi in QEMU
Open vSwitch out of order issues
RSC (Windows GRO)
PCI compliance
Daynix Computing LTD

11
HCK - great, but frightening
Cumbersome setup requirements
Complex network configuration
Hard to replicate setups
Setup conflicts
No power management tests automation support

Daynix Computing LTD

12
VirtHCK
Daynix Computing LTD

13
Introducing VirtHCK
Framework for automating HCK test execution
Based on easily configurable host and guest scripts
Creates isolated virtual network environments
Allows running different HCK scenarios in automated
manner
OSS, distributed under BSD license

Daynix Computing LTD

14
Repository and WiKi
Get VirtHCK from https://github.com/daynix/
bricklets.git
VirtHCK wiki with steps for deployment and usage:
https://github.com/daynix/bricklets/wiki/VirtHCKbricklet-documentation

Daynix Computing LTD

15
HCK issues solved by VirtHCK
Setup replication
Multiple setups sharing the same host
Setup isolation solves the following issues:
HCK controller controls all HCK clients in the network
Inability to use VM templates without manual VM
reconfiguration
Automatic network topology setup during network
device tests
Daynix Computing LTD

16
Setup types supported
Network (virtio-net, vmxnet3, vmxnet)
Storage (virtio-block, virtio-scsi, pvscsi)
Simple PCI (virtio-serial, virtio-balloon)
Easily extendable by small changes in configuration
files

Daynix Computing LTD

17
Typical HCK deployment
Test Client
Control NIC

Test Client
Control NIC

Test Client
Control NIC

WHQL control network

Control NIC - e1000

HCK
Controller

Daynix Computing LTD

18
VirtHCK setup
Disconnected from outside world network during test
run
Isolated NICs under test network
Isolated WHQL control network
A different number of test clients can run according to
test type

Daynix Computing LTD

19
VirtHCK setup for storage and
other devices
Test VM 1
Control NIC - e1000

WHQL control bridge

Control NIC - e1000

Studio VM

“World” bridge

Physical NIC

Outside world NIC
Daynix Computing LTD

20
VirtHCK setup for storage and
other devices - running
Test VM 1
Control NIC - e1000

WHQL control bridge

Control NIC - e1000

“World” bridge

Studio VM
Outside world NIC

Physical NIC

X

Daynix Computing LTD

21
VirtHCK setup for NICs
NIC under test

Test bridge

NIC under test

Test VM 2

Test VM 1

Control NIC - e1000

Control NIC - e1000

WHQL control bridge

Control NIC - e1000

Studio VM

“World” bridge

Physical NIC

Outside world NIC
Daynix Computing LTD

22
VirtHCK setup for NICs - running
NIC under test

NIC under test

Test bridge

Test VM 2

Test VM 1

Control NIC - e1000

Control NIC - e1000

WHQL control bridge

Control NIC - e1000

“World” bridge

Studio VM
Outside world NIC

Physical NIC

X

Daynix Computing LTD

23
VirtHCK - quick start
Clone VirtHCK from github
Create VM images in /images directory (studio and test
client)
Update STUDIO_IMAGE/CLIENT1_IMAGE/
CLIENT2_IMAGE variables in hck_setup.cfg
Run VirtHCK - “sudo ./VirtHCK/hck.sh”
Install Microsoft HCK Studio and Clients software
according to Microsoft documentation Windows HCK
Getting Started and following Checklist for a new client
VM guidelines.
Daynix Computing LTD

24
Directory tree
VirtHCK/ - Directory of all VirtHCK scripts, supposed
to run in Linux environment
VirtHCK/guest_tools/ - Directory for scripts required
for Windows guests
Images directory where VM's images should be located

Daynix Computing LTD

25
VirtHCK walkthrough - host

Configuration: network, VMs etc
Host scripts
Images

Daynix Computing LTD

26
hck_setup.cfg
VirtHCK setup configuration file
Environment configuration
VM start up parameters
Configured accordingly to required HCK setup type
Allows multiple setups on one host

Daynix Computing LTD

27
Running multiple setups
Use UNIQ_ID to configure multiple setups
UNIQ_ID will be used as a base for creation of:
VNC or Spice ports
Bridges names
Network interface names, MAC addresses and etc.

Daynix Computing LTD

28
Test device types
Network
Storage (also boot)
Balloon
Serial
More can be added

Daynix Computing LTD

29
Remote access
VNC or Spice
Spice is needed for power management tests

Daynix Computing LTD

30
Network infrastructure
Linux bridge or Open vSwitch can be used

Daynix Computing LTD

31
Images
Configure
Studio VM image
Test VMs images

Daynix Computing LTD

32
VM resources

Number of vCPUs
Memory
NICs for control channels

Daynix Computing LTD

33
Extra parameters
QEMU binary
VHOST, snapshots, cache mode for fast install
ISOs for guest installation
BIOS

Daynix Computing LTD

34
Configuration summary

Daynix Computing LTD

35
Host scripts - hck.sh
Main script to run HCK enviroment
Dumps configuration
Creates network configuration for HCK setup
Runs VMs in loop (crucial during PM tests)
Cleans up all the configurations on exit

Daynix Computing LTD

36
VM execution scripts
Executed by hck.sh
run_hck_studio.sh - starts up Studio VM
run_hck_client.sh -starts up Client VM
Configuration according hck_setup.cfg

Daynix Computing LTD

37
Network scripts
Passed as parameter to QEMU to add network
interface to appropriate bridge
hck_ctrl_bridge_ifup.sh
hck_test_bridge_ifup.sh
hck_world_bridge_ifup.sh

Daynix Computing LTD

38
Guests configuration

Daynix Computing LTD

39
Studio VM
Setup HCK according to Microsoft’s documentation
Follow the checklist - https://github.com/daynix/bricklets/wiki/VirtHCKbricklet-documentation#wiki-Checklist_for_a_new_studio_VM:
Do not run HCK studio directly
Use run_hck_studio.bat or run_hck_studio_8.1.bat located in
guest_tools
The above scripts will disconnect the HCK Studio VM from outside
network

Daynix Computing LTD

40
Test client VMs
Follow the checklist for test client - https://github.com/
daynix/bricklets/wiki/VirtHCK-brickletdocumentation#wiki-Checklist_for_a_new_client_VM:
Install HCK client according to Microsoft’s
documentation from hck-studioHCKInstallClient
setup.exe

Daynix Computing LTD

41
Daynix Computing LTD

42
What’s next
HCK automation on the guest
SVVP configuration
Xen support (other hypervisors?)
Adding more device types
Using external configuration
Using libvirt
More guest scripts to automate configuration of test
clients
Daynix Computing LTD

43
HCK automation on the
guest
Goal:
Run full test cycle for specific device type without
user interaction.

Daynix Computing LTD

44
Adding more device types

Goal
Test all the devices in QEMU and not only virtio (PCI
bridges, USB controllers and etc)

Daynix Computing LTD

45
More plans
Using external configuration
Multiple setups on one host without replicating
VirtHCK and images
Use libvirt
Arbitrary number of test clients on one setup
Xen support

Daynix Computing LTD

46
Call to action

Test QEMU devices with VirtHCK (not only virtio
devices)
Contribute

Daynix Computing LTD

47
Q&A

48
Links
WiKi - https://github.com/daynix/bricklets/wiki/
VirtHCK-bricklet-documentation
Repository - https://github.com/daynix/bricklets.git
HCK kit download - http://msdn.microsoft.com/en-us/
windows/hardware/hh833788.aspx
Windows HCK Getting Started - http://
msdn.microsoft.com/en-us/library/windows/hardware/
jj123537.aspx
Daynix - www.daynix.com
Daynix Computing LTD

49

Weitere ähnliche Inhalte

Was ist angesagt?

Kdump-FUDcon-2015-Session
Kdump-FUDcon-2015-SessionKdump-FUDcon-2015-Session
Kdump-FUDcon-2015-SessionBuland Singh
 
Wp intelli cache_reduction_iops_xd5.6_fp1_xs6.1
Wp intelli cache_reduction_iops_xd5.6_fp1_xs6.1Wp intelli cache_reduction_iops_xd5.6_fp1_xs6.1
Wp intelli cache_reduction_iops_xd5.6_fp1_xs6.1Nuno Alves
 
Exadata db node update
Exadata db node updateExadata db node update
Exadata db node updatepat2001
 
Exadata cell update
Exadata cell updateExadata cell update
Exadata cell updatepat2001
 
kexec / kdump implementation in Linux Kernel and Xen hypervisor
kexec / kdump implementation in Linux Kernel and Xen hypervisorkexec / kdump implementation in Linux Kernel and Xen hypervisor
kexec / kdump implementation in Linux Kernel and Xen hypervisorThe Linux Foundation
 
Diretrizes para Implementação do Citrix XenServer 6.2.0 em Servidores HP Prol...
Diretrizes para Implementação do Citrix XenServer 6.2.0 em Servidores HP Prol...Diretrizes para Implementação do Citrix XenServer 6.2.0 em Servidores HP Prol...
Diretrizes para Implementação do Citrix XenServer 6.2.0 em Servidores HP Prol...Lorscheider Santiago
 
VMworld 2013: ESXi Native Networking Driver Model - Delivering on Simplicity ...
VMworld 2013: ESXi Native Networking Driver Model - Delivering on Simplicity ...VMworld 2013: ESXi Native Networking Driver Model - Delivering on Simplicity ...
VMworld 2013: ESXi Native Networking Driver Model - Delivering on Simplicity ...VMworld
 
Windows Server 2008 for Developers - Part 2
Windows Server 2008 for Developers - Part 2Windows Server 2008 for Developers - Part 2
Windows Server 2008 for Developers - Part 2ukdpe
 
Kernel Recipes 2015: Kernel packet capture technologies
Kernel Recipes 2015: Kernel packet capture technologiesKernel Recipes 2015: Kernel packet capture technologies
Kernel Recipes 2015: Kernel packet capture technologiesAnne Nicolas
 
Evolution of ota_update_in_the_io_t_world
Evolution of ota_update_in_the_io_t_worldEvolution of ota_update_in_the_io_t_world
Evolution of ota_update_in_the_io_t_worldStefano Babic
 
TECHNICAL WHITE PAPER▶ Applying Data Center Security with VMware NSX
TECHNICAL WHITE PAPER▶ Applying Data Center Security with VMware NSXTECHNICAL WHITE PAPER▶ Applying Data Center Security with VMware NSX
TECHNICAL WHITE PAPER▶ Applying Data Center Security with VMware NSXSymantec
 
Fast boot
Fast bootFast boot
Fast bootSZ Lin
 
Lavigne bsdmag july
Lavigne bsdmag julyLavigne bsdmag july
Lavigne bsdmag julyDru Lavigne
 
VMworld 2016: Getting Started with PowerShell and PowerCLI for Your VMware En...
VMworld 2016: Getting Started with PowerShell and PowerCLI for Your VMware En...VMworld 2016: Getting Started with PowerShell and PowerCLI for Your VMware En...
VMworld 2016: Getting Started with PowerShell and PowerCLI for Your VMware En...VMworld
 

Was ist angesagt? (20)

Kdump-FUDcon-2015-Session
Kdump-FUDcon-2015-SessionKdump-FUDcon-2015-Session
Kdump-FUDcon-2015-Session
 
Wp intelli cache_reduction_iops_xd5.6_fp1_xs6.1
Wp intelli cache_reduction_iops_xd5.6_fp1_xs6.1Wp intelli cache_reduction_iops_xd5.6_fp1_xs6.1
Wp intelli cache_reduction_iops_xd5.6_fp1_xs6.1
 
Exadata db node update
Exadata db node updateExadata db node update
Exadata db node update
 
Exadata cell update
Exadata cell updateExadata cell update
Exadata cell update
 
kexec / kdump implementation in Linux Kernel and Xen hypervisor
kexec / kdump implementation in Linux Kernel and Xen hypervisorkexec / kdump implementation in Linux Kernel and Xen hypervisor
kexec / kdump implementation in Linux Kernel and Xen hypervisor
 
Android Custom Kernel/ROM design
Android Custom Kernel/ROM designAndroid Custom Kernel/ROM design
Android Custom Kernel/ROM design
 
Tuned
TunedTuned
Tuned
 
Diretrizes para Implementação do Citrix XenServer 6.2.0 em Servidores HP Prol...
Diretrizes para Implementação do Citrix XenServer 6.2.0 em Servidores HP Prol...Diretrizes para Implementação do Citrix XenServer 6.2.0 em Servidores HP Prol...
Diretrizes para Implementação do Citrix XenServer 6.2.0 em Servidores HP Prol...
 
Build Your 2008R2 2-Node Cluster
Build Your 2008R2 2-Node ClusterBuild Your 2008R2 2-Node Cluster
Build Your 2008R2 2-Node Cluster
 
VMworld 2013: ESXi Native Networking Driver Model - Delivering on Simplicity ...
VMworld 2013: ESXi Native Networking Driver Model - Delivering on Simplicity ...VMworld 2013: ESXi Native Networking Driver Model - Delivering on Simplicity ...
VMworld 2013: ESXi Native Networking Driver Model - Delivering on Simplicity ...
 
Windows Server 2008 for Developers - Part 2
Windows Server 2008 for Developers - Part 2Windows Server 2008 for Developers - Part 2
Windows Server 2008 for Developers - Part 2
 
Kernel Recipes 2015: Kernel packet capture technologies
Kernel Recipes 2015: Kernel packet capture technologiesKernel Recipes 2015: Kernel packet capture technologies
Kernel Recipes 2015: Kernel packet capture technologies
 
Evolution of ota_update_in_the_io_t_world
Evolution of ota_update_in_the_io_t_worldEvolution of ota_update_in_the_io_t_world
Evolution of ota_update_in_the_io_t_world
 
TECHNICAL WHITE PAPER▶ Applying Data Center Security with VMware NSX
TECHNICAL WHITE PAPER▶ Applying Data Center Security with VMware NSXTECHNICAL WHITE PAPER▶ Applying Data Center Security with VMware NSX
TECHNICAL WHITE PAPER▶ Applying Data Center Security with VMware NSX
 
Fast boot
Fast bootFast boot
Fast boot
 
Lavigne bsdmag july
Lavigne bsdmag julyLavigne bsdmag july
Lavigne bsdmag july
 
Sw update elce2017
Sw update elce2017Sw update elce2017
Sw update elce2017
 
VMworld 2016: Getting Started with PowerShell and PowerCLI for Your VMware En...
VMworld 2016: Getting Started with PowerShell and PowerCLI for Your VMware En...VMworld 2016: Getting Started with PowerShell and PowerCLI for Your VMware En...
VMworld 2016: Getting Started with PowerShell and PowerCLI for Your VMware En...
 
Setup guide nos-v3_5
Setup guide nos-v3_5Setup guide nos-v3_5
Setup guide nos-v3_5
 
Vsp 41 config_max
Vsp 41 config_maxVsp 41 config_max
Vsp 41 config_max
 

Ähnlich wie QEMU Development and Testing Automation Using MS HCK - Anton Nayshtut and Yan Vugenfirer, Daynix

IBM MQ in containers MQTC 2017
IBM MQ in containers MQTC 2017IBM MQ in containers MQTC 2017
IBM MQ in containers MQTC 2017Robert Parker
 
ContainerDays Boston 2016: "Docker For the Developer" (Borja Burgos)
ContainerDays Boston 2016: "Docker For the Developer" (Borja Burgos)ContainerDays Boston 2016: "Docker For the Developer" (Borja Burgos)
ContainerDays Boston 2016: "Docker For the Developer" (Borja Burgos)DynamicInfraDays
 
VMworld 2014: How to Build a Hybrid Cloud
VMworld 2014: How to Build a Hybrid CloudVMworld 2014: How to Build a Hybrid Cloud
VMworld 2014: How to Build a Hybrid CloudVMworld
 
VMworld 2014: How I Learned to Stop Worrying and Love the Public Cloud
VMworld 2014: How I Learned to Stop Worrying and Love the Public CloudVMworld 2014: How I Learned to Stop Worrying and Love the Public Cloud
VMworld 2014: How I Learned to Stop Worrying and Love the Public CloudVMworld
 
VMWare: Nova and NVP Support - Gary Kotton and Dimitri Desmidt
VMWare: Nova and NVP Support - Gary Kotton and Dimitri DesmidtVMWare: Nova and NVP Support - Gary Kotton and Dimitri Desmidt
VMWare: Nova and NVP Support - Gary Kotton and Dimitri DesmidtCloud Native Day Tel Aviv
 
WMworld Europe 2014: Hybrid Sandboxing – Create the Ultimate On and Off Premi...
WMworld Europe 2014: Hybrid Sandboxing – Create the Ultimate On and Off Premi...WMworld Europe 2014: Hybrid Sandboxing – Create the Ultimate On and Off Premi...
WMworld Europe 2014: Hybrid Sandboxing – Create the Ultimate On and Off Premi...VMworld
 
Devconf2017 - Can VMs networking benefit from DPDK
Devconf2017 - Can VMs networking benefit from DPDKDevconf2017 - Can VMs networking benefit from DPDK
Devconf2017 - Can VMs networking benefit from DPDKMaxime Coquelin
 
Deploying WSO2 Middleware on Containers
Deploying WSO2 Middleware on ContainersDeploying WSO2 Middleware on Containers
Deploying WSO2 Middleware on ContainersImesh Gunaratne
 
WSO2ConEU 2016 Tutorial - Deploying WSO2 Middleware on Containers
WSO2ConEU 2016 Tutorial - Deploying WSO2 Middleware on ContainersWSO2ConEU 2016 Tutorial - Deploying WSO2 Middleware on Containers
WSO2ConEU 2016 Tutorial - Deploying WSO2 Middleware on ContainersLakmal Warusawithana
 
"One network to rule them all" - OpenStack Summit Austin 2016
"One network to rule them all" - OpenStack Summit Austin 2016"One network to rule them all" - OpenStack Summit Austin 2016
"One network to rule them all" - OpenStack Summit Austin 2016Phil Estes
 
SDLC Using Docker for Fun and Profit
SDLC Using Docker for Fun and ProfitSDLC Using Docker for Fun and Profit
SDLC Using Docker for Fun and Profitdantheelder
 
OSDC 2019 | KubeVirt: Converge IT infrastructure into one single Kubernetes p...
OSDC 2019 | KubeVirt: Converge IT infrastructure into one single Kubernetes p...OSDC 2019 | KubeVirt: Converge IT infrastructure into one single Kubernetes p...
OSDC 2019 | KubeVirt: Converge IT infrastructure into one single Kubernetes p...NETWAYS
 
Windows 7 Deployment with ZCM11
Windows 7 Deployment with ZCM11Windows 7 Deployment with ZCM11
Windows 7 Deployment with ZCM11Roel van Bueren
 
Architecting .NET solutions in a Docker ecosystem - .NET Fest Kyiv 2019
Architecting .NET solutions in a Docker ecosystem - .NET Fest Kyiv 2019Architecting .NET solutions in a Docker ecosystem - .NET Fest Kyiv 2019
Architecting .NET solutions in a Docker ecosystem - .NET Fest Kyiv 2019Alex Thissen
 
Build, Publish, Deploy and Test Docker images and containers with Jenkins Wor...
Build, Publish, Deploy and Test Docker images and containers with Jenkins Wor...Build, Publish, Deploy and Test Docker images and containers with Jenkins Wor...
Build, Publish, Deploy and Test Docker images and containers with Jenkins Wor...Docker, Inc.
 
Hyper-V support for OpenStack Grizzly
Hyper-V support for OpenStack GrizzlyHyper-V support for OpenStack Grizzly
Hyper-V support for OpenStack GrizzlyKamesh Pemmaraju
 
DC Metro And Federal VMUG March 2009
DC Metro And Federal VMUG March 2009DC Metro And Federal VMUG March 2009
DC Metro And Federal VMUG March 2009langonej
 
How to protect an Enterprise Email and Collaboration environment using Veeam ...
How to protect an Enterprise Email and Collaboration environment using Veeam ...How to protect an Enterprise Email and Collaboration environment using Veeam ...
How to protect an Enterprise Email and Collaboration environment using Veeam ...Jorge de la Cruz
 
VMworld 2013: Deploying VMware NSX Network Virtualization
VMworld 2013: Deploying VMware NSX Network Virtualization VMworld 2013: Deploying VMware NSX Network Virtualization
VMworld 2013: Deploying VMware NSX Network Virtualization VMworld
 
.NET Fest 2019. Alex Thissen. Architecting .NET solutions in a Docker ecosystem
.NET Fest 2019. Alex Thissen. Architecting .NET solutions in a Docker ecosystem.NET Fest 2019. Alex Thissen. Architecting .NET solutions in a Docker ecosystem
.NET Fest 2019. Alex Thissen. Architecting .NET solutions in a Docker ecosystemNETFest
 

Ähnlich wie QEMU Development and Testing Automation Using MS HCK - Anton Nayshtut and Yan Vugenfirer, Daynix (20)

IBM MQ in containers MQTC 2017
IBM MQ in containers MQTC 2017IBM MQ in containers MQTC 2017
IBM MQ in containers MQTC 2017
 
ContainerDays Boston 2016: "Docker For the Developer" (Borja Burgos)
ContainerDays Boston 2016: "Docker For the Developer" (Borja Burgos)ContainerDays Boston 2016: "Docker For the Developer" (Borja Burgos)
ContainerDays Boston 2016: "Docker For the Developer" (Borja Burgos)
 
VMworld 2014: How to Build a Hybrid Cloud
VMworld 2014: How to Build a Hybrid CloudVMworld 2014: How to Build a Hybrid Cloud
VMworld 2014: How to Build a Hybrid Cloud
 
VMworld 2014: How I Learned to Stop Worrying and Love the Public Cloud
VMworld 2014: How I Learned to Stop Worrying and Love the Public CloudVMworld 2014: How I Learned to Stop Worrying and Love the Public Cloud
VMworld 2014: How I Learned to Stop Worrying and Love the Public Cloud
 
VMWare: Nova and NVP Support - Gary Kotton and Dimitri Desmidt
VMWare: Nova and NVP Support - Gary Kotton and Dimitri DesmidtVMWare: Nova and NVP Support - Gary Kotton and Dimitri Desmidt
VMWare: Nova and NVP Support - Gary Kotton and Dimitri Desmidt
 
WMworld Europe 2014: Hybrid Sandboxing – Create the Ultimate On and Off Premi...
WMworld Europe 2014: Hybrid Sandboxing – Create the Ultimate On and Off Premi...WMworld Europe 2014: Hybrid Sandboxing – Create the Ultimate On and Off Premi...
WMworld Europe 2014: Hybrid Sandboxing – Create the Ultimate On and Off Premi...
 
Devconf2017 - Can VMs networking benefit from DPDK
Devconf2017 - Can VMs networking benefit from DPDKDevconf2017 - Can VMs networking benefit from DPDK
Devconf2017 - Can VMs networking benefit from DPDK
 
Deploying WSO2 Middleware on Containers
Deploying WSO2 Middleware on ContainersDeploying WSO2 Middleware on Containers
Deploying WSO2 Middleware on Containers
 
WSO2ConEU 2016 Tutorial - Deploying WSO2 Middleware on Containers
WSO2ConEU 2016 Tutorial - Deploying WSO2 Middleware on ContainersWSO2ConEU 2016 Tutorial - Deploying WSO2 Middleware on Containers
WSO2ConEU 2016 Tutorial - Deploying WSO2 Middleware on Containers
 
"One network to rule them all" - OpenStack Summit Austin 2016
"One network to rule them all" - OpenStack Summit Austin 2016"One network to rule them all" - OpenStack Summit Austin 2016
"One network to rule them all" - OpenStack Summit Austin 2016
 
SDLC Using Docker for Fun and Profit
SDLC Using Docker for Fun and ProfitSDLC Using Docker for Fun and Profit
SDLC Using Docker for Fun and Profit
 
OSDC 2019 | KubeVirt: Converge IT infrastructure into one single Kubernetes p...
OSDC 2019 | KubeVirt: Converge IT infrastructure into one single Kubernetes p...OSDC 2019 | KubeVirt: Converge IT infrastructure into one single Kubernetes p...
OSDC 2019 | KubeVirt: Converge IT infrastructure into one single Kubernetes p...
 
Windows 7 Deployment with ZCM11
Windows 7 Deployment with ZCM11Windows 7 Deployment with ZCM11
Windows 7 Deployment with ZCM11
 
Architecting .NET solutions in a Docker ecosystem - .NET Fest Kyiv 2019
Architecting .NET solutions in a Docker ecosystem - .NET Fest Kyiv 2019Architecting .NET solutions in a Docker ecosystem - .NET Fest Kyiv 2019
Architecting .NET solutions in a Docker ecosystem - .NET Fest Kyiv 2019
 
Build, Publish, Deploy and Test Docker images and containers with Jenkins Wor...
Build, Publish, Deploy and Test Docker images and containers with Jenkins Wor...Build, Publish, Deploy and Test Docker images and containers with Jenkins Wor...
Build, Publish, Deploy and Test Docker images and containers with Jenkins Wor...
 
Hyper-V support for OpenStack Grizzly
Hyper-V support for OpenStack GrizzlyHyper-V support for OpenStack Grizzly
Hyper-V support for OpenStack Grizzly
 
DC Metro And Federal VMUG March 2009
DC Metro And Federal VMUG March 2009DC Metro And Federal VMUG March 2009
DC Metro And Federal VMUG March 2009
 
How to protect an Enterprise Email and Collaboration environment using Veeam ...
How to protect an Enterprise Email and Collaboration environment using Veeam ...How to protect an Enterprise Email and Collaboration environment using Veeam ...
How to protect an Enterprise Email and Collaboration environment using Veeam ...
 
VMworld 2013: Deploying VMware NSX Network Virtualization
VMworld 2013: Deploying VMware NSX Network Virtualization VMworld 2013: Deploying VMware NSX Network Virtualization
VMworld 2013: Deploying VMware NSX Network Virtualization
 
.NET Fest 2019. Alex Thissen. Architecting .NET solutions in a Docker ecosystem
.NET Fest 2019. Alex Thissen. Architecting .NET solutions in a Docker ecosystem.NET Fest 2019. Alex Thissen. Architecting .NET solutions in a Docker ecosystem
.NET Fest 2019. Alex Thissen. Architecting .NET solutions in a Docker ecosystem
 

Mehr von Yan Vugenfirer

Receive side scaling (RSS) with eBPF in QEMU and virtio-net
Receive side scaling (RSS) with eBPF in QEMU and virtio-netReceive side scaling (RSS) with eBPF in QEMU and virtio-net
Receive side scaling (RSS) with eBPF in QEMU and virtio-netYan Vugenfirer
 
Qemu device prototyping
Qemu device prototypingQemu device prototyping
Qemu device prototypingYan Vugenfirer
 
Windows network teaming
Windows network teamingWindows network teaming
Windows network teamingYan Vugenfirer
 
Rebuild presentation - IoT Israel MeetUp
Rebuild presentation - IoT Israel MeetUpRebuild presentation - IoT Israel MeetUp
Rebuild presentation - IoT Israel MeetUpYan Vugenfirer
 
Rebuild presentation during Docker's Birthday party
Rebuild presentation during Docker's Birthday partyRebuild presentation during Docker's Birthday party
Rebuild presentation during Docker's Birthday partyYan Vugenfirer
 
Contributing to open source using Git
Contributing to open source using GitContributing to open source using Git
Contributing to open source using GitYan Vugenfirer
 

Mehr von Yan Vugenfirer (8)

Receive side scaling (RSS) with eBPF in QEMU and virtio-net
Receive side scaling (RSS) with eBPF in QEMU and virtio-netReceive side scaling (RSS) with eBPF in QEMU and virtio-net
Receive side scaling (RSS) with eBPF in QEMU and virtio-net
 
Qemu device prototyping
Qemu device prototypingQemu device prototyping
Qemu device prototyping
 
Windows network teaming
Windows network teamingWindows network teaming
Windows network teaming
 
Rebuild presentation - IoT Israel MeetUp
Rebuild presentation - IoT Israel MeetUpRebuild presentation - IoT Israel MeetUp
Rebuild presentation - IoT Israel MeetUp
 
Rebuild presentation during Docker's Birthday party
Rebuild presentation during Docker's Birthday partyRebuild presentation during Docker's Birthday party
Rebuild presentation during Docker's Birthday party
 
Contributing to open source using Git
Contributing to open source using GitContributing to open source using Git
Contributing to open source using Git
 
Introduction to Git
Introduction to GitIntroduction to Git
Introduction to Git
 
UsbDk at a Glance 
UsbDk at a Glance UsbDk at a Glance 
UsbDk at a Glance 
 

Kürzlich hochgeladen

Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesZilliz
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 

Kürzlich hochgeladen (20)

Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector Databases
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 

QEMU Development and Testing Automation Using MS HCK - Anton Nayshtut and Yan Vugenfirer, Daynix

  • 1.  QEMU development and testing automation using MS HCK Anton Nayshtut, anton@daynix.com Yan Vugenfirer, yan@daynix.com Daynix Computing LTD
  • 2. Agenda What is WHQL/HCK? Introducing VirtHCK Using VirtHCK Call to action Daynix Computing LTD 2
  • 3. What is HCK/WHQL? The Windows certification program (previously known as the Windows Logo Program) for devices and system A comprehensive devicesystem test toolkit by Microsoft Devices which pass HCK are certified and their binaries are digitally signed Daynix Computing LTD 3
  • 4. HCK test kit Introduced with Windows 8 (previous kit know as WLK) Predefined test suites for each device type Ability to add your own tests for additional testing outside of the certification process Reproducible scenarios Daynix Computing LTD 4
  • 5. Benefits for QEMU and Linux community QEMU device testing (not only virtio) Host subsystems testing, for example networking Extensive coverage for defined device categories Regression testing Stress testing Daynix Computing LTD 5
  • 6. HCK PCI compliance test Device under test compliance to PCI spec Applicable for: New QEMU chipsets PCIe devices Next generation of virtio devices Existing PCI devices Daynix Computing LTD 6
  • 7. HCK NDIS (network) tester (1) Comprehensive networking test suite Send/receive, Stress tests (MPE) Offload, VLAN, priority, packet filtering etc Not once used to test the robustness of the host networking stack Daynix Computing LTD 7
  • 8. HCK NDIS (network) tester (2) Applicable for QEMU network devices New devices New features Host network components Bridge Open vSwitch TAP Kernel Daynix Computing LTD 8
  • 9. HCK Windows OS tests Device path exerciser Identifies drivers that do not correctly handle the different IO calls Driver verifier Captures deadlocks, memory leaks, memory corruption Verified correctness of kernel API usage Daynix Computing LTD 9
  • 10. HCK power management tests The test cycling through different sleep states There are variations of IO and PNP (disable/enable) during, before and after power transitions Applicable for: QEMU Devices power management support SeaBIOS Daynix Computing LTD 10
  • 11. Our past experience Transfer hangs with vhost. Offload/VLAN related corner cases with network devices (virtio-net, vmxnet3, vmxnet). vmxnet3 and pvscsi in QEMU Open vSwitch out of order issues RSC (Windows GRO) PCI compliance Daynix Computing LTD 11
  • 12. HCK - great, but frightening Cumbersome setup requirements Complex network configuration Hard to replicate setups Setup conflicts No power management tests automation support Daynix Computing LTD 12
  • 14. Introducing VirtHCK Framework for automating HCK test execution Based on easily configurable host and guest scripts Creates isolated virtual network environments Allows running different HCK scenarios in automated manner OSS, distributed under BSD license Daynix Computing LTD 14
  • 15. Repository and WiKi Get VirtHCK from https://github.com/daynix/ bricklets.git VirtHCK wiki with steps for deployment and usage: https://github.com/daynix/bricklets/wiki/VirtHCKbricklet-documentation Daynix Computing LTD 15
  • 16. HCK issues solved by VirtHCK Setup replication Multiple setups sharing the same host Setup isolation solves the following issues: HCK controller controls all HCK clients in the network Inability to use VM templates without manual VM reconfiguration Automatic network topology setup during network device tests Daynix Computing LTD 16
  • 17. Setup types supported Network (virtio-net, vmxnet3, vmxnet) Storage (virtio-block, virtio-scsi, pvscsi) Simple PCI (virtio-serial, virtio-balloon) Easily extendable by small changes in configuration files Daynix Computing LTD 17
  • 18. Typical HCK deployment Test Client Control NIC Test Client Control NIC Test Client Control NIC WHQL control network Control NIC - e1000 HCK Controller Daynix Computing LTD 18
  • 19. VirtHCK setup Disconnected from outside world network during test run Isolated NICs under test network Isolated WHQL control network A different number of test clients can run according to test type Daynix Computing LTD 19
  • 20. VirtHCK setup for storage and other devices Test VM 1 Control NIC - e1000 WHQL control bridge Control NIC - e1000 Studio VM “World” bridge Physical NIC Outside world NIC Daynix Computing LTD 20
  • 21. VirtHCK setup for storage and other devices - running Test VM 1 Control NIC - e1000 WHQL control bridge Control NIC - e1000 “World” bridge Studio VM Outside world NIC Physical NIC X Daynix Computing LTD 21
  • 22. VirtHCK setup for NICs NIC under test Test bridge NIC under test Test VM 2 Test VM 1 Control NIC - e1000 Control NIC - e1000 WHQL control bridge Control NIC - e1000 Studio VM “World” bridge Physical NIC Outside world NIC Daynix Computing LTD 22
  • 23. VirtHCK setup for NICs - running NIC under test NIC under test Test bridge Test VM 2 Test VM 1 Control NIC - e1000 Control NIC - e1000 WHQL control bridge Control NIC - e1000 “World” bridge Studio VM Outside world NIC Physical NIC X Daynix Computing LTD 23
  • 24. VirtHCK - quick start Clone VirtHCK from github Create VM images in /images directory (studio and test client) Update STUDIO_IMAGE/CLIENT1_IMAGE/ CLIENT2_IMAGE variables in hck_setup.cfg Run VirtHCK - “sudo ./VirtHCK/hck.sh” Install Microsoft HCK Studio and Clients software according to Microsoft documentation Windows HCK Getting Started and following Checklist for a new client VM guidelines. Daynix Computing LTD 24
  • 25. Directory tree VirtHCK/ - Directory of all VirtHCK scripts, supposed to run in Linux environment VirtHCK/guest_tools/ - Directory for scripts required for Windows guests Images directory where VM's images should be located Daynix Computing LTD 25
  • 26. VirtHCK walkthrough - host Configuration: network, VMs etc Host scripts Images Daynix Computing LTD 26
  • 27. hck_setup.cfg VirtHCK setup configuration file Environment configuration VM start up parameters Configured accordingly to required HCK setup type Allows multiple setups on one host Daynix Computing LTD 27
  • 28. Running multiple setups Use UNIQ_ID to configure multiple setups UNIQ_ID will be used as a base for creation of: VNC or Spice ports Bridges names Network interface names, MAC addresses and etc. Daynix Computing LTD 28
  • 29. Test device types Network Storage (also boot) Balloon Serial More can be added Daynix Computing LTD 29
  • 30. Remote access VNC or Spice Spice is needed for power management tests Daynix Computing LTD 30
  • 31. Network infrastructure Linux bridge or Open vSwitch can be used Daynix Computing LTD 31
  • 32. Images Configure Studio VM image Test VMs images Daynix Computing LTD 32
  • 33. VM resources Number of vCPUs Memory NICs for control channels Daynix Computing LTD 33
  • 34. Extra parameters QEMU binary VHOST, snapshots, cache mode for fast install ISOs for guest installation BIOS Daynix Computing LTD 34
  • 36. Host scripts - hck.sh Main script to run HCK enviroment Dumps configuration Creates network configuration for HCK setup Runs VMs in loop (crucial during PM tests) Cleans up all the configurations on exit Daynix Computing LTD 36
  • 37. VM execution scripts Executed by hck.sh run_hck_studio.sh - starts up Studio VM run_hck_client.sh -starts up Client VM Configuration according hck_setup.cfg Daynix Computing LTD 37
  • 38. Network scripts Passed as parameter to QEMU to add network interface to appropriate bridge hck_ctrl_bridge_ifup.sh hck_test_bridge_ifup.sh hck_world_bridge_ifup.sh Daynix Computing LTD 38
  • 40. Studio VM Setup HCK according to Microsoft’s documentation Follow the checklist - https://github.com/daynix/bricklets/wiki/VirtHCKbricklet-documentation#wiki-Checklist_for_a_new_studio_VM: Do not run HCK studio directly Use run_hck_studio.bat or run_hck_studio_8.1.bat located in guest_tools The above scripts will disconnect the HCK Studio VM from outside network Daynix Computing LTD 40
  • 41. Test client VMs Follow the checklist for test client - https://github.com/ daynix/bricklets/wiki/VirtHCK-brickletdocumentation#wiki-Checklist_for_a_new_client_VM: Install HCK client according to Microsoft’s documentation from hck-studioHCKInstallClient setup.exe Daynix Computing LTD 41
  • 43. What’s next HCK automation on the guest SVVP configuration Xen support (other hypervisors?) Adding more device types Using external configuration Using libvirt More guest scripts to automate configuration of test clients Daynix Computing LTD 43
  • 44. HCK automation on the guest Goal: Run full test cycle for specific device type without user interaction. Daynix Computing LTD 44
  • 45. Adding more device types Goal Test all the devices in QEMU and not only virtio (PCI bridges, USB controllers and etc) Daynix Computing LTD 45
  • 46. More plans Using external configuration Multiple setups on one host without replicating VirtHCK and images Use libvirt Arbitrary number of test clients on one setup Xen support Daynix Computing LTD 46
  • 47. Call to action Test QEMU devices with VirtHCK (not only virtio devices) Contribute Daynix Computing LTD 47
  • 49. Links WiKi - https://github.com/daynix/bricklets/wiki/ VirtHCK-bricklet-documentation Repository - https://github.com/daynix/bricklets.git HCK kit download - http://msdn.microsoft.com/en-us/ windows/hardware/hh833788.aspx Windows HCK Getting Started - http:// msdn.microsoft.com/en-us/library/windows/hardware/ jj123537.aspx Daynix - www.daynix.com Daynix Computing LTD 49