Ubuntu 12.04 ships the latest OpenStack release, codenamed Essex, and a new feature called MAAS. In addition the CharmStore was made available making deployment of centralised charm with Juju easier. A new technology which is available for testing (via a PPA) is AWSOME.
These technologies further position Ubuntu Server as the best OS for scale-out computing. Quality also had a strong focus with continuous integration, deployment and testing of upstream OpenStack commits and automated testing of all Amazon ec2 AMI's from Lucid to Precise.
OpenStack projects have been updated to the Essex final release.
/bin/false is now the default for the nova user (upgrade transition handled).
New binary package, nova-cert is now needed to decrypt images which removes M2Crypto as a requirement.
Quantum has been divided into quantum and quantum client packages.
Glance has new configuration file structure.
nova uses nova-rootwrap by default, which provides a more fine grained security layer.
openstackx has been removed from horizon.
ajaxconsole has been dropped, in favour of a VNC based solution.
ec2 admin api removed.
Quantum, Melange, and Nova network models have been merged.
Many OSAPI extenstions have been added.
euca-upload-bundle now works with keystone.
OpenStack components are deployable via Juju Charms.
Keystone has been updated to Keystone-light (redux branch). Keystone-light is a new, from scratch rewrite this cycle, replacing the existing upstream source from Oneiric / 11.10.
Glance now requires a manual database migration after upgrade.
The default install of Openstack should be used on a protected network, as many components use http (non-SSL) as a transport, and therefore subject to security concerns. This can be mitigated by post install customisations.
Metal as a Service brings the language of the cloud to physical servers. It makes it easy to set up the hardware on which to deploy any service that needs to scale up and down dynamically.
AWSOME (“Any Web Service over Me”) provides IAAS API’s for OpenStack which are also implemented by Amazon EC2, making it easy to deploy and manage cloud services across both Amazon and OpenStack clouds.
Juju CharmStore now available allowing for deployment of all available charmed services without needing charms local to the environment.
Subordinate Services added allowing for units of different services to be deployed into the same container and to have knowledge of each other.
Machine Constraints added offering users the ability to pick the hardware to which their services will be deployed.
Apache Tomcat 7.0.26 is avaliable in Universe alongside version 6.0.35 which continues to be the supported version for Ubuntu 12.04.
Please note that Tomcat 7 will replace Tomcat 6 as the supported version of Apache Tomcat in Ubuntu 12.10.
Apache ActiveMQ 5.5.0 is avaliable in Universe.
Jenkins 1.424.6 LTS is avaliable in Universe.
OpenJDK 7 (closely aligned to Oracle Java 7) is avaliable in Universe.
Please note that OpenJDK 7 will become the default Java implementation in Ubuntu 12.10.
Groovy 1.8.6 is avaliable in Universe.
Scala 2.9.1 is avaliable in Universe.
Clojure 1.1.0 is avaliable in Universe.
Xen is now included and officially supported:
Provides the facility to run Ubuntu as a Xen virtualisation host (dom0)
Libvirt integration/Xen domains manageable through libvirt or any frontend that uses libvirt.
Guest installations in HVM mode will use optimized paravirt drivers out of the box.
LXC improvements include:
The ability for stock 12.04 images to boot in a container
Apparmor protection to increase security
Support for lvm- and btrfs-backed containers
New ubuntu-cloud template for simple creation of containers based on published Ubuntu Cloud images.
KVM (version 1.0) and Libvirt improvements include:
QED (Qemu enhanced disk format) support
AHCI protocol support
Nested guest support for Intel processors (in addition to AMD support)
Public API to invoke suspend/resume on the host from libvirt
STP and VLAN filtering from libvirt
Bandwidth QoS control in libvirt
CPU bandwidth limits support
CEPH client libraries, librbd and librados, have been added to main supporting use with KVM.
CIFS now has file system cache support to improve performance.
Software RAID now supports bad block management (MD).
OpenMPI 1.5 for ARM available in Universe. (889644)
openmpi 1.5 provides improved ARM support. As this is an upstream beta we have not transitioned openmpi in the archive, but instead added a separate openmpi1.5 package for those who wish to use it.
Query2, a new meta-data service for describing the Ubuntu Cloud Images and their availability, has been introduced. This new meta-data service provides a verbose, machine-readable JSON formatted file that exhaustively describes the currently available Ubuntu Cloud Images hosted on cloud-images.ubuntu.com and official Ubuntu images in public clouds (currently limited to Amazon ec2).
New Zentyal packages available in Universe.
These packages are a rename of the existing ebox packages along with a new upstream release fixing known issues in the current ebox packages in Ubuntu 11.10.
Resara, an open source Linux Domain controller and file server based on Samba4, has been added to Universe.
acpid introduced to both Server and Cloud images by default.
Chef 0.8.16 (948437) and corresponding Ohai packages (948438) removed from precise at the request of OpsCode.
Eucalyptus 2.0.1 (953405) removed from precise at the request of Eucalyptus.
Up until Ubuntu 11.10, administrator access using the sudo tool was granted via the "admin" Unix group. In Ubuntu 12.04, administrator access will be granted via the "sudo" group. This makes Ubuntu more consistent with the upstream implementation and Debian. For compatibility purposes, the "admin" group will continue to provide sudo/administrator access in 12.04.
Hibernate (suspend to disk) has been disabled by default, as it was found to be unreliable, very slow and confusing to have two suspend modes. See bug 812394 for details. If you want to re-enable it, please follow this recipe.
pm-utils now has two new scripts to power down USB and various PCI devices in battery mode. A number of desktop packages were fixed to wake up less often. Both of these reduce power consumption and thus improve battery lifetime.
resolvconf is now used to manage /etc/resolv.conf on all Ubuntu systems. You can learn more here
Backports are now more easily accessible --- to enable users to more easily receive new versions of software, the Ubuntu Backports repository is now enabled by default. Packages from backports will not be installed by default — they must explicitly be selected in package management software. However, once installed, packages from backports will automatically be upgraded to newer versions.
DVD Images --- the DVD images have been cleaned up significantly reducing their size to around 1.5GB to ease consumption. The remaining software remains available via download.
Linux v3.2.14 Kernel
Ubuntu 12.04 LTS ships with an updated kernel moving from the mainline v3.0 series to the mainline v3.2 series. At release we are shipping with the Ubuntu 3.2.0-23.36 kernel which is based on the v3.2.14 upstream stable Linux kernel. The mainline v3.0 to v3.2 stable series update brings a number of new features. Some highlights include:
ext4 gains support for larger base block sizes
btrfs has more work addressing data integrity issues
device mapper gains thin provisioning and recursive snapshots
more work to improve performance under high writeback load
networking improvements for congested networks
ext3 moves to using filesystem barriers
memory allocator improvements
VFS scalability improvements
a new iSCSI implementation
software wait gains bad block management
Key changes in the Ubuntu kernel since the 3.0.0-12.20 Ubuntu kernel as shipped in the 11.10 Ubuntu release include:
Rebase to upstream stable Linux kernel v3.2.14.
The amd64 -generic and -server kernel flavors have been merged into a single -generic kernel flavor for Ubuntu 12.04. Given the few differences that existed between the two flavors, it only made sense to merge the two and reduce the overall maintenance burden over the life of this LTS release.
Support for a new armhf kernel flavor has been introduced.
The non-smp PowerPC kernel flavor has been removed. All hardware currently supported by the non-smp PowerPC kernel flavor should also be supported by the smp PowerPC kernel flavor.
RC6 is enabled by default for Sandy Bridge systems. RC6 is a technology which allows the GPU to go into a very low power consumption state when the GPU is idle (down to 0W). It results in considerable power savings when this stage is activated. When comparing under idle loads with machine state where RC6 is disabled, improved power usage of around 40-60% has been witnessed.
An improved set of jack detection patches has been backported from the upstream v3.3 Linux kernel.
An updated AppArmor patch set has been included to better align with what is landing upstream.
Applied and enabled the seccomp filters feature which uses the packet filtering machinery (BPF) to restrict access to system calls.
A set of kexec fixes for arm from v3.3-rc1 has also been backported.
We've also conducted an extensive review of Ubuntu kernel configs and made numerous config changes as a result.
Upstart has been updated to version 1.5. More details are available in the Upstart Technical Overview.
Ubuntu 12.04 is distributed with a default toolchain that includes: GCC 4.6.3 (and changes from Linaro GCC 4.6-2012.02), binutils 2.22, eglibc 2.15, and Linaro gdb 7.4-2012.04.
Compared to the 11.10 release the toolchain did see only incremental changes and bug fixes; comparing to the 10.04 LTS release, GCC updates include
Updated frontends for better standards support (Ada 2012, Objective-C 2.0, improved experimental support for the upcoming C++0x ISO C++ standard, Fortran 2003 and 2008 improvements, new Go frontend)
Improved optimizations, including better inter-procedural optimizations, and link time optimization (LTO).
Further information can be found upstream (GCC-4.6, GCC-4.5, binutils, gas, ld, gdb).
Ubuntu 12.04 includes Python 2.7.3 and Python 3.2.3 Python 2.6 is no longer available for install.
There is expanded support for Python 3 in this release, with Python 3 ports of python-dbus, python-feedparser, germinate, lazr.ui, wadllib, python-defer, python-keyring, and python-qt4 now included, among others.
The default run time for Java is OpenJDK 6b24 (IcedTea 1.11.1). OpenJDK 7u3 (IcedTea 2.1) is available in the archive as well.