nova/releasenotes/notes/deprecate-keymap-options-b41ad9f33a5923e1.yaml
Stephen Finucane cab8139498 conf: Deprecate 'keymap' options
Defining the 'keymap' option in libvirt results in the '-k' option being
passed through to QEMU [1][2]. This QEMU option has some uses, primarily
for users interacting with QEMU via stdin on the text console. However,
for users interacting with QEMU via VNC or Spice, like nova users do, it
is strongly recommended to never add the "-k" option. Doing so will
force QEMU to do keymap conversions which are known to be lossy. This
disproportionately affects users with non-US keyboard layouts, who would
be better served by relying on the guest OS to manage this. Users should
instead rely on their clients and guests to correctly configure this.

This is the second part of the three part deprecation cycle for these
options. At this point, they are retained but deprecated them and their
defaults modified to be unset. This allows us to warn users with libvirt
hypervisors that have configured the options about the pitfalls of the
option and give them time to prepare migration strategies, if necessary.
A replacement option is added to the VMWare group to allow us to retain
this functionality for that hypervisor. Combined with the above, this
will allow us to remove the options in a future release.

[1] https://github.com/libvirt/libvirt/blob/v1.2.9-maint/src/qemu/qemu_command.c#L6985-L6986
[2] https://github.com/libvirt/libvirt/blob/v1.2.9-maint/src/qemu/qemu_command.c#L7215-L7216

Change-Id: I9a50a111ff4911f4364a1b24d646095c72af3d2c
Closes-Bug: #1682020
2018-03-07 10:18:23 +00:00

35 lines
1.5 KiB
YAML

---
deprecations:
- |
Two keymap-related configuration options have been deprecated:
- ``[vnc] keymap``
- ``[spice] keymap``
The VNC option affects the libvirt and VMWare virt drivers, while the SPICE
option only affects libvirt. For the libvirt driver, configuring these
options resulted in lossy keymap conversions for the given graphics method.
It is recommended that users should unset these options and configure their
guests as necessary instead. In the case of noVNC, noVNC 1.0.0 should be
used as this provides support for QEMU's Extended Key Event messages. Refer
to `bug #1682020`__ and the `QEMU RFB pull request`__ for more information.
For the VMWare driver, only the VNC option applies. However, this option is
deprecated and will not affect any other driver in the future. A new option
has been added to the ``[vmware]`` group to replace this:
- ``[vmware] vnc_keymap``
The ``[vnc] keymap`` and ``[spice] keymap`` options will be removed in a
future release.
__ https://bugs.launchpad.net/nova/+bug/1682020
__ https://github.com/novnc/noVNC/pull/596
upgrade:
- |
noVNC 1.0.0 introduced a breaking change in the URLs used to access the
console. Previously, the ``vnc_auto.html`` path was used but it is now
necessary to use the ``vnc_lite.html`` path. When noVNC is updated to
1.0.0, ``[vnc] novncproxy_base_url`` configuration value must be updated on
each compute node to reflect this change.