~paelzer/uvtool:add-qxl-as-default

Last commit made on 2019-03-07
Get this branch:
git clone -b add-qxl-as-default https://git.launchpad.net/~paelzer/uvtool
Only Christian Ehrhardt  can upload to this branch. If you are Christian Ehrhardt  please log in for upload directions.

Branch merges

Branch information

Name:
add-qxl-as-default
Repository:
lp:~paelzer/uvtool

Recent commits

27dc00f... by Christian Ehrhardt 

template (x86): add spice graphics backend

In addition to the classic VNC backend add a spice backend to allow
leveraging more benefits of the QXL driver in the guest.

That allows users to upgrade their uvtool guest to a full Desktop and
get some meaningful performance. If they later on add the qxl.ko from
linux-modules-extra they even will get KMS and more extra features.

This will use the same "local only" mechanism that VNC uses to avoid
opening up to the world too much.

Signed-off-by: Christian Ehrhardt <email address hidden>

9086baf... by Christian Ehrhardt 

template (x86): switch the default video to QXL

We know that we will run Ubuntu guests which work fine with QXL
video. That not only avoids recent issues with cirrus (LP: #1818877)
but should also be slightly faster.

Fixes: https://bugs.launchpad.net/ubuntu/+source/uvtool/+bug/1818877

Signed-off-by: Christian Ehrhardt <email address hidden>

237a162... by Robie Basak

Add --mac option

LP: #1781727

Thanks to adamretter:

My hosting provider requires me to use Mac addresses provided by
themselves so that their network will accept my ethernet packets. They
also require a strict proscribed static IP allocation. Without the
correct Mac address, my VM cannot send/receive data to/from the network.

I am running uvt-kvm like this:

uvt-kvm create --password changeme --memory 4096 --disk 40 --cpu 2
--bridge br0 --packages openssh-server,mosh,git,vim,puppet,screen,ufw
--meta-data /tmp/22720db9-abaf-4ab4-a602-fe16e76715bd-meta-data my-vm123
release=bionic

With a meta-data file that looks like:

instance-id: 22720db9-abaf-4ab4-a602-fe16e76715bd
local-hostname: my-vm123
network-interfaces: |
  iface ens3 inet static
  hwaddress ether 06:00:00:42:9b:44
  address 54.36.67.139
  network 54.36.67.139
  netmask 255.255.255.255
  broadcast 5.196.205.132
  gateway 91.121.89.254
  dns-nameservers 213.186.33.99
  dns-search mydomain.com

However, the problem that I have when using the `--bridge br0` is that
the Mac address for the vnet adapter created for that bridge is
seemingly randomly assigned.

I attach a patch that adds a `--mac` parameter to uvt-kvm which allows
the user to specify the Mac address for the interface. I have tested it
here and it sets the Mac correctly, both when using a bridge and when
not using a bridge.

With the patch I can execute uvt-kvm like:

uvt-kvm create --password changeme --memory 4096 --disk 40 --cpu 2
--bridge br0 --mac 06:00:00:42:9b:44 --packages
openssh-server,mosh,git,vim,puppet,screen,ufw --meta-data
/tmp/22720db9-abaf-4ab4-a602-fe16e76715bd-meta-data my-vm123
release=bionic

db528ec... by Christian Ehrhardt 

man: describe implications and defaults of --machine-type

Signed-off-by: Christian Ehrhardt <email address hidden>

26429e5... by Christian Ehrhardt 

man: fix rendering page of option after --machine-type

Signed-off-by: Christian Ehrhardt <email address hidden>

2790445... by Christian Ehrhardt 

kvm: add --machine-type option (LP: #1775645)

With the upstream discussion aournd switching the qemu default as well
as more and more people wanting to work with PCIe uvtool should have
a way to override the default machine type.

This adds an argument to do so, the rest will as usual be filled in by
libvirt as needed (e.g. PCIe Bus structure).

Signed-off-by: Christian Ehrhardt <email address hidden>

d2a86dc... by Robie Basak

Merge remote-tracking branch 'paelzer/fix-arm-template'

cf5c51e... by Christian Ehrhardt 

fix arm template nvram path

The body of that element defines a path where the per-guest custom copy
should be stored.
That has two issues:
 1. multiple guests would clash
 2. the path could be not writable by default

Fortunately if just not specified at all libvirt will make sane
defaults.

Signed-off-by: Christian Ehrhardt <email address hidden>

74bc0cf... by Christian Ehrhardt 

kvm: add --host-passthrough option

This allows users of uvtool to easily change from the compatibility
focused default cpu type to host-passthrough which will expose as much
as possible to the guest.

Anything in between is too specific for uvtool and can be setup via
libvirt after creating the guest.

Signed-off-by: Christian Ehrhardt <email address hidden>

b65913b... by Christian Ehrhardt 

template-s390x: drop non supported cpu features

This does not cause any issues, but apic, pae and such are just not
existant on s390x. So there might be a case in the future were having
these int he template becomes a problem, therefore remove them now.

Signed-off-by: Christian Ehrhardt <email address hidden>