New features in 19.04
QEMU was updated to 3.1 release.
See the 3.0 and 3.1 change log for major changes since Cosmic.
Migrations from former versions are supported just as usual. When upgrading it is always recommended to upgrade the machine types allowing guests to fully benefit from all the improvements and fixes of the most recent version.
Qemu now has virglrenderer enabled which allows to create a virtual 3D GPU inside qemu virtual machines. That is inferior to GPU passthrough, but can be handy if the platform used lacks the capability for classic PCI passthrough as well as more modern mediated devices.
libvirt was updated to version 5.0. See the upstream change log for details since version 4.6 that was in Cosmic.
Among many other changes worth to mention is the ability to have GL enabled graphics as well as mediated devices to be configured while still being guarded by custom apparmor profiles generated per guest. This is required for the use of gpu based mediated devices as well as VirGL mentioned above in the qemu section.
Ubuntu includes 18.11.x the latest stable release branch of DPDK. The very latest (non-stable) version being 19.02 was not chosen for downstream projects of DPDK (like Open vSwitch) not being compatible.
DPDK dependencies were reorganized into more or less common/tested components. Due to that most DPDK installations will now have a smaller installation footprint and less potentially active code to care about.
See the release notes for details.
Samba was updated to version 4.10.x, and one of the big changes here is python3 support. In Disco, samba and its dependencies are all python3 only now, with the exception of tdb. tdb still builds a python2 package, namely python-tdb, but all the others, including samba itself, are python3 only.
To run well integrated as VMware guest Ubuntu 19.04 comes with the latest open-vm-tools version 10.3.10. Details about the changes can be found in the upstream changelog
Raspberry Pi ðŸ¥§
Ubuntu 19.04 comes with an easy way of enabling Bluetooth support on the raspi3 ubuntu-server preinstalled images; install the pi-bluetooth package (now available in multiverse) with sudo apt install pi-bluetooth.
Please note that supported Pi devices which have Bluetooth (at the time of writing, the Raspberry Pi 3B, 3B+, and 3A+) can have either serial console or Bluetooth support enabled at any given time (not both). With the pi-bluetooth package installed, edit /boot/firmware/config.txt and set enable_uart=1 to enable serial console, or enable_uart=0 to enable Bluetooth. The change will take effect after the next reboot.
Ubuntu 19.04 includes the latest OpenStack release, Stein, including the following components:
OpenStack Identity - Keystone
OpenStack Imaging - Glance
OpenStack Block Storage - Cinder
OpenStack Compute - Nova
OpenStack Networking - Neutron
OpenStack Telemetry - Ceilometer, Aodh, Gnocchi, and Panko
OpenStack Orchestration - Heat
OpenStack Dashboard - Horizon
OpenStack Object Storage - Swift
OpenStack Database as a Service - Trove
OpenStack DNS as a Service - Designate
OpenStack Bare-metal - Ironic
OpenStack Filesystem - Manila
OpenStack Key Manager - Barbican
Please refer to the OpenStack Stein release notes for full details of this release of OpenStack.
OpenStack Stein is also provided via the Ubuntu Cloud Archive for OpenStack Stein for Ubuntu 18.04 LTS users.
WARNING: Upgrading an OpenStack deployment is a non-trivial process and care should be taken to plan and test upgrade procedures which will be specific to each OpenStack deployment.
Make sure you read the OpenStack Charm Release Notes for more information about how to deploy Ubuntu OpenStack using Juju.
Open vSwitch has been updated to 2.11.
IBM Z and LinuxONE / s390x-specific enhancements (since 18.10) include:
Since s390x supports 1M huge pages (as well as 2GB huge pages, if requested) the support for libhugetlbfs (v2.19) was added for native s390x (1823132) as well as for KVM (1803315), so that customers running workloads with large memory footprints can benefit from improved memory performance.
Now, having the kernel infrastructure (since 4.17) as well as the s390-tool in place, the I/O device auto-configuration feature is ready to use. (1776631)
With (1784643) Ubuntu Server is now prepared (with lib-zfcp-hbaapi) for port speed capabilities of 32GB line speed.
The pass through capabilities for cryptographic resources got enhanced (1787405).
The upgrade to qemu 3.1+ (1786956) and the current kernel allows to make use of the latest KVM features for s390x.
For example, but not limited, to PCI passthrough support for KVM (1799446) and support for configurable virtio-crypto (1802514).
The enablement for virtio-gpu for s390x (1799467) and (1799472) now allows to better administer KVM virtual machines with UI based tools.
PCI Virtual function enablement and s390x-specific modifications were added as well (1814684).
Valgrind now has support for z13 (incl. SIMD) (1799696).
And a new PCI error reporting tool with support for NVMe was added to the s390-tools package (1802499).
zKey was enhanced in regards to error messages about missing CCA library (1808520) and the folder handling fixed (180395
With the upgrade to opencryptoki 3.11 the performance for EP11 tokens was improved (1804020), z14 functions were enhanced (1804257) and CPACF hashes are now used in EP 11 tokens (1803994).
libica upgrade to 3.4.0 came with expanded SHA support (1803962).
The upgrade to binutils 2.32 (180399
, plus patches on top (1824097), helped to fix instruction changes in z13 abi and provides now partial relro support (1783294).
Upgrading openssl-ibmca to 2.0.2 (1804233) fixes a failure in case a libica symbol cannot be resolved.
LUKS2 support for pam_mount was introduced (while still retaining support for LUKS1) for PAM.
Changes to clean up stacks for KASAN, the KernelAddressSANitizer, were picked up (1804645).
Kernel enhancements (that came with 4.20) will now create CPU-MF auxiliary trace data files for s390 (180542
AP queues (APQN) were extended (1805429), (1804019), tags were added (1800867), and vfio/vfio-ap got enhanced (1818854), (1805414).
The python-zhmcclient is now packaged and available via universe (1805367).
smc-tools are upgraded to 1.2.0, now including smc_rnics and smc_dbg (1815425).
The support for TSO (TCP Segmentation Offload) in ipv4 and ipv6 for Layer2 was extended (1805793).
efi-lockdown was fixed to restrict debugfs when the kernel is locked down (1807686).
Support to allow the protected key AES (paes) module to derive protected keys from clear keys (1811354).
DIF and DIF+DIX integrity protection mechanisms in FCP can now be separately configured (1814537).
Application can now access new data sets that were created after zdsfs was mounted - without the need to remount zdsfs (181453
Zone awareness changes for lsmem / chmem in util-linux were picked-up (1814765).
qeth performance (OSA and Hipersockets) got improved by general code changes (1814899) and link speed enhancements were made in kernel (1814891) and on the tooling side (1814892) - in preparation for future network hardware.
New instruction support was added to binutils, leading to improved performance with that enhanced instruction support (1815040).
The new glibc version 2.29 (1817523) has several minor improvements for s390x, and with that vx and vxe are now marked as important hwcap, to be able to provide differently tuned shared libraries (1821200).
The upgrade of cryptsetup to 2.1.0 comes with several fixes, like for the on-disk header size calculation for the LUKS2 format (1814769), (1815484).
That said s390-tools were upgraded to 2.8.0.
And finally support was added for automatic usage of zkey and pervasive encryption by the installer (1766865). Now when doing an (LPAR or z/VM guest) installation and selecting "Guided - use entire disk and setup encrypted LVM" zkey will be automatically used - in case a CryptoExpress domain is available with a master key set.
As is to be expected, with any release, there are some significant known bugs that users may run into with this release of Ubuntu 19.04. The ones we know about at this point (and some of the workarounds), are documented here so you don't need to spend time reporting these bugs again: