linuxkit/test/pkg/virtsock
Avi Deitcher 76b519705b
Add alpine bcc tools (#4105)
* Update linuxkit/alpine

Signed-off-by: Avi Deitcher <avi@deitcher.net>

* tools/alpine: Update to latest

Signed-off-by: Avi Deitcher <avi@deitcher.net>

* tools: Update to the latest linuxkit/alpine

Signed-off-by: Avi Deitcher <avi@deitcher.net>

* Update use of tools to latest

Signed-off-by: Avi Deitcher <avi@deitcher.net>

* tests: Update packages to the latest linuxkit/alpine

Signed-off-by: Avi Deitcher <avi@deitcher.net>

* Update use of test packages to latest

Signed-off-by: Avi Deitcher <avi@deitcher.net>

* pkgs: Update packages to the latest linuxkit/alpine

Signed-off-by: Avi Deitcher <avi@deitcher.net>

* Update package tags

Signed-off-by: Avi Deitcher <avi@deitcher.net>

---------

Signed-off-by: Avi Deitcher <avi@deitcher.net>
2025-02-17 11:12:49 +02:00
..
.gitignore tests: cleanup test directory 2017-05-04 23:56:40 +01:00
build.yml Convert all of test/pkg/* to linuxkit pkg build 2017-10-09 16:20:26 +01:00
Dockerfile Add alpine bcc tools (#4105) 2025-02-17 11:12:49 +02:00
README.md Replace moby build with linuxkit build throughout 2017-11-20 17:06:54 +00:00

This directory contains the files to build and run a container containing the virtio and Hyper-V socket stress tests. ../../cases/test-virtsock-server.yml builds images which start the server inside the VM.

The client, to be run on the host as per this README, can be obtained compiled from here.

How to use (on Windows)

  • Build the images: linuxkit build tests/cases/test-virtsock-server.yml
  • Copy the test-virtsock-server.iso to a Windows system
  • Create a Type 1 Hyper-V VM (called virtsock).
    • No Disk or network required
    • Add the ISO to the CDROM device
    • Make sure you enable a named pipe for COM1 (call it virtsock)
  • Start the VM
  • Connect to the serial console (to get debug output) with putty -serial \\.\pipe\virtsock

Run the client:

$vmId = (get-vm virtsock).Id
.\virtsock_stress.exe -c $vmId  -v 1 -c 1000000 -p 10

This creates 1000000 connections from 10 threads to the VM and sends some random amount of data of the connection before tearing it down. There are more options to change the behaviour.

TODO

  • Add scripts to create Hyper-V VM
  • Enable virtio sockets in linuxkit run with HyperKit
  • Add some sample client YAML files which would connect from the VM to the host
  • Hook up to CI for both HyperKit and Hyper-V