CloudArchive

Differences between revisions 17 and 84 (spanning 67 versions)
Revision 17 as of 2013-09-26 15:11:56
Size: 8899
Editor: cpe-24-27-33-226
Comment: Based on support times for non-LTS Ubuntu Server going to 9 months, we needed to reduce the support in the Cloud Archive. We compromised to 12 months at vUDS.
Revision 84 as of 2020-08-11 04:46:33
Size: 5826
Editor: taihsiangho
Comment: Add the Ubuntu-Openstack release vs. package version in the cloud archive mapping explaination.
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
<<Include(ServerTeam/Header)>>
## page was renamed from ServerTeam/CloudArchive
Line 7: Line 6:
Canonical’s Ubuntu Cloud archive allows users the ability to install newer releases of OpenStack on Ubuntu Server 12.04 LTS (and the dependencies) as they become available up through the next Ubuntu LTS release (presumably 14.04). Bug processing and patch contributions will follow standard Ubuntu practice and policy where applicable. Canonical commits to maintaining and supporting new OpenStack releases for Ubuntu Server 12.04 LTS in the Ubuntu Cloud archive for at least 12 months after they release. Canonical will stop introducing new releases of OpenStack for Ubuntu Server 12.04 LTS into the Ubuntu Cloud archive with the version shipped in the next Ubuntu Server LTS release (presumably 14.04). They will maintain and support this last updated release of OpenStack in the Ubuntu Cloud archive for 3 years, i.e. until the end of the Ubuntu 12.04 LTS lifecycle. Canonical’s Ubuntu Cloud Archive (UCA) gives users the ability to install newer releases of !OpenStack on an Ubuntu LTS release (only) as they become available up through to the next Ubuntu LTS release. Bug processing and patch contributions will follow standard Ubuntu practice and policy where applicable.
Line 9: Line 8:
In order to allow for relatively easy upgrades, and still adhere to Ubuntu processes and policy, Canonical elected to have archive.canonical.com be the home of the Ubuntu Cloud archive. They will enable update paths for each OpenStack release. In order to allow for relatively easy upgrades, and still adhere to Ubuntu processes and policy, Canonical elected to have
[[http://ubuntu-cloud.archive.canonical.com | ubuntu-cloud.archive.canonical.com]] be the home of the cloud archive. Update paths will exist for each !OpenStack release. For example, enabling "bionic-ussuri" will provide access to all !OpenStack Ussuri packages built for Ubuntu 18.04 LTS (binary and source), any updated dependencies required, and bug/security fixes published after release.
Line 11: Line 11:
 * e.g. Enabling “precise-folsom” in the archive will provide access to all OpenStack Folsom packages built for Ubuntu Server 12.04 LTS (binary and source), any updated dependencies required, and bug/security fixes made after release. Packages go through various stages as they make their way towards a publicly available UCA release. See the [[OpenStack/VersionTracking | Version Tracking]] page for details.
Line 13: Line 13:
As of now, Canonical has no plans to build or host OpenStack packages for non-LTS releases of Ubuntu Server in the Ubuntu Cloud archive. The chart below explains the options. Any given UCA !OpenStack release can be enabled on exactly one Ubuntu LTS release.
Line 15: Line 15:
{{attachment:plan.png}} For more details on !OpenStack release end of life see: [[https://ubuntu.com/about/release-cycle#ubuntu-openstack-release-cycle | Ubuntu OpenStack release cycle]].
Line 17: Line 17:
== How to Enable and Use ==
You'll first need to add the cloud archive gpg key into your ubuntu-keyring by running the following command:
{{{
sudo apt-get install ubuntu-cloud-keyring
}}}
=== Reporting bugs ===
Line 23: Line 19:
Next, to get access to the Ubuntu Cloud archive, please add the following entries to your /etc/apt/sources.list: To report bugs against packages from the UCA, please use the `ubuntu-bug` tool.
Line 25: Line 21:
=== Folsom ===
{{{
 # The primary updates archive that users should be using
 deb http://ubuntu-cloud.archive.canonical.com/ubuntu precise-updates/folsom main

 # Public -proposed archive mimicking the SRU process for extended testing.
 # Packages should bake here for at least 7 days.
 #deb http://ubuntu-cloud.archive.canonical.com/ubuntu precise-proposed/folsom main
}}}

=== Grizzly ===
{{{
 # The primary updates archive that users should be using
 deb http://ubuntu-cloud.archive.canonical.com/ubuntu precise-updates/grizzly main

 # Public -proposed archive mimicking the SRU process for extended testing.
 # Packages should bake here for at least 7 days.
 #deb http://ubuntu-cloud.archive.canonical.com/ubuntu precise-proposed/grizzly main
}}}

=== Havana ===
{{{
 # The primary updates archive that users should be using
 deb http://ubuntu-cloud.archive.canonical.com/ubuntu precise-updates/havana main

 # Public -proposed archive mimicking the SRU process for extended testing.
 # Packages should bake here for at least 7 days.
 #deb http://ubuntu-cloud.archive.canonical.com/ubuntu precise-proposed/havana main
}}}

Now run:
{{{
sudo apt-get update
}}}
to update your package listings and then proceed to install/upgrade your openstack packages.

== Reporting Bugs ==

To report bugs against packages from the Ubuntu Cloud Archive, please use the 'ubuntu-bug' tool, for example:
For example:
Line 69: Line 27:
This will ensure that bugs are raised against the cloud-archive project on Launchpad. This will ensure that bugs are raised against the [[https://launchpad.net/cloud-archive | cloud-archive]] project on Launchpad.
Line 71: Line 29:
== Q & A == == Using the UCA ==
Line 73: Line 31:
=== Why Not Use Stable Release Updates? === The release schedule of !OpenStack and Ubuntu are generally synchronised: a new !OpenStack release becomes available in the UCA every six months and coincides with each release of Ubuntu. As !OpenStack releases are added to the UCA and as releases fall out of support this section will be updated.
Line 75: Line 33:
Ubuntu's release policy states that once an Ubuntu release has been published, updates must follow a special procedure called a stable release update, or SRU, and are delivered via the -updates archive. These updates are restricted to a specific set of characteristics:
 * severe regression bugs
 * security vulnerabilities (via the -security archive)
 * bugs causing loss of user data
 * "safe" application layer bugs
 * hardware enablement
 * partner archive updates
Exceptions to the SRU policy are possible. However, for this to occur the Ubuntu Technical Board must approve the exception, which must meet their guidelines:
 * Updates to new upstream versions of packages must be forced or substantially impelled by changes in the external environment, i.e. changes must be outside anything that could reasonably be encapsulated in a stable release of Ubuntu. Changes internal to the operating system we ship (i.e. the Ubuntu archive), or simple bugs or new features, would not normally qualify.
 * A new upstream version must be the best way to solve the problem. For example, if a new upstream version includes a small protocol compatibility fix and a large set of user interface changes, then, without any judgement required as to the benefits of the user interface changes, we will normally prefer to backport the protocol compatibility fix to the version currently in Ubuntu.
 * The upstream developers must be willing to work with Ubuntu. A responsive upstream who understands Ubuntu's requirements and is willing to work within them can make things very much easier for us.
 * The upstream code must be well-tested (in terms of unit and system tests). It must also be straightforward to run those tests on the actual packages proposed for deployment to Ubuntu users.
 * Where possible, the package must have minimal interaction with other packages in Ubuntu. Ensuring that there are no regressions in a library package that requires changes in several of its reverse-dependencies, for example, is significantly harder than ensuring that there are no regressions in a package with a straightforward standalone interface that can simply be tested in isolation. We would not normally accept the former, but might consider the latter.
Once approved by the Tech Board, the exception must have a documented update policy, e.g. http://wiki.ubuntu.com/LandscapeUpdates. Based on these guidelines and the core functionality OpenStack serves in Ubuntu Cloud, the Ubuntu Server team did not feel it was in the best interest of their users, nor Ubuntu in general, to pursue an SRU exception.
A UCA !OpenStack release is enabled on a host with the `add-apt-repository` command.
Line 90: Line 35:
=== What about using Ubuntu Backports? === '''Important''': It is good practice to run `sudo apt update` both before and after the `add-apt-repository` command.
Line 92: Line 37:
The Ubuntu Backports process (excludes kernel) provides us a mechanism for releasing package updates for stable releases that provide new features or functionality. Changes were recently made to `apt` in Ubuntu 11.10, whereby it now only installs packages from Backports when they are explicitly requested. Prior to 11.10, `apt` would install everything from Backports once it was enabled, which led to packages being unintentionally upgraded to newer versions. The primary drawbacks with using the Backports archive is that the Ubuntu Security team does not provide updates for the archive, it’s a bit of a hassle to enable per package updates, and Canonical doesn’t traditionally offer support services for the packages hosted there. Furthermore, with each new release of OpenStack, there are other applications that OpenStack depends on that also must be at certain levels. By having more than one version of OpenStack in the same Backports archive, we run a huge risk of having backward compatibility issues with these dependencies. === Ubuntu 20.04 LTS ===
Line 94: Line 39:
=== How Will You Ensure Stability and Quality? === On 20.04, !OpenStack Victoria and !OpenStack X are supported for 18 months each, and !OpenStack W for 36 months. When 22.04's default !OpenStack version is released it will be added to the UCA with support for 3 years (i.e. until the end of the Ubuntu 20.04 LTS lifecycle).
Line 96: Line 41:
In order for us to ensure users have a safe and reliable upgrade path, we will establish a QA policy where all new versions and updated dependencies are required to pass a specific set of regression tests with a 100% success rate. In addition:
 * Unit testing must cover a minimum set of functionality and APIs
 * System test scenarios must be executed for 24, 48 and 72 hours uninterrupted.
 * Package testing must cover: initial installation, upgrades from the previous OpenStack release, and upgrades from the previous LTS and non-LTS Ubuntu release.
 * All test failures must be documented as bugs in Launchpad, with regressions marked Fix Released before the packages are allowed to exit QA.
 * Test results are posted publicly and announced via a mailing list specifically created for this effort only.
 * Only upon successfully exiting QA will packages be pushed into the Ubuntu Cloud archive.
=== Ubuntu 18.04 LTS ===
Line 104: Line 43:
=== What Happens With OpenStack Support and Maintenance in 14.04? === On 18.04, !OpenStack Rocky and !OpenStack Train are supported for 18 months each, and !OpenStack Stein for 36 months. When 20.04's default !OpenStack version is released it will be added to the UCA with support for 3 years (i.e. until the end of the Ubuntu 18.04 LTS lifecycle).
Line 106: Line 45:
Good question. The cycle could repeat itself, however at this point Canonical is not making such a commitment. If the rate of innovation and growth of the OpenStack project matures to a point where users become less likely to need the next release for its improved stability and/or quality, and instead just want it for a new feature, then we would likely return to our traditional LTS maintenance and support model. ==== Ussuri ====

{{{
sudo add-apt-repository cloud-archive:ussuri
}}}

==== Train ====

{{{
sudo add-apt-repository cloud-archive:train
}}}

==== Stein ====

{{{
sudo add-apt-repository cloud-archive:stein
}}}

==== Rocky ====

{{{
sudo add-apt-repository cloud-archive:rocky
}}}

=== Ubuntu 16.04 LTS ===

On 16.04, !OpenStack Newton and !OpenStack Pike are supported for 18 months each, and !OpenStack Ocata for 36 months. !OpenStack Queens, 18.04's default !OpenStack version, is supported in the UCA for 3 years (i.e. until the end of the Ubuntu 16.04 LTS lifecycle).

==== Queens ====

{{{
sudo add-apt-repository cloud-archive:queens
}}}

=== Ubuntu 14.04 LTS ===

On 14.04, !OpenStack Juno and !OpenStack Liberty are supported for 18 months each, and !OpenStack Kilo for 36 months. !OpenStack Mitaka, 16.04's default !OpenStack version, is supported in the UCA for 3 years (i.e. until the end of the Ubuntu 14.04 LTS lifecycle).

==== Mitaka ====

{{{
sudo add-apt-repository cloud-archive:mitaka
}}}

== Ceph and the UCA ==

The below table shows the relationship between UCA release, Ceph release, Ubuntu release, and Ubuntu default archive ("distro").

|| '''Ceph release''' || '''Default archive''' || '''UCA release''' || '''Ubuntu release''' ||
|| Octopus || yes || - || Focal ||
|| Octopus || - || bionic-ussuri || Bionic ||
|| Nautilus || - || bionic-train || Bionic ||
|| Mimic || - || bionic-stein || Bionic ||
|| Mimic || - || bionic-rocky || Bionic ||
|| Luminous || yes || - || Bionic ||
|| Luminous || - || xenial-queens || Xenial ||
|| Jewel || yes || - || Xenial ||
|| Jewel || - || trusty-mitaka || Trusty ||
|| Firefly || yes || - || Trusty ||


== Package Back-Porting Policy ==

The packages in the cloud archive will follow a policy similar to Ubuntu release back-porting policy. For example, Openstack Train originated in Eoan and is back-ported to the Train cloud archive, and Openstack Queens originated in Bionic and is back-ported to the Queens cloud archive.

You may also refer to [[http://reqorts.qa.ubuntu.com/reports/ubuntu-server/cloud-archive/|these tables]] to see what the package version per Openstack release in the cloud archive. Here is an practical case of the qemu package. Openstack train originated in Eoan, and its qemu is 1.4.0-based. The default qemu version of Bionic is 1.2.0-based. Thus 1.4.0 is back-ported to the Bionic Train cloud archive. By using this Bionic Train cloud archive with your Ubuntu Bionic release, the original 1.2.0-based qemu in your Ubuntu Bionic system will be replaced/upgraded to 1.4.0-based qemu.

The Ubuntu Cloud Archive

Canonical’s Ubuntu Cloud Archive (UCA) gives users the ability to install newer releases of OpenStack on an Ubuntu LTS release (only) as they become available up through to the next Ubuntu LTS release. Bug processing and patch contributions will follow standard Ubuntu practice and policy where applicable.

In order to allow for relatively easy upgrades, and still adhere to Ubuntu processes and policy, Canonical elected to have ubuntu-cloud.archive.canonical.com be the home of the cloud archive. Update paths will exist for each OpenStack release. For example, enabling "bionic-ussuri" will provide access to all OpenStack Ussuri packages built for Ubuntu 18.04 LTS (binary and source), any updated dependencies required, and bug/security fixes published after release.

Packages go through various stages as they make their way towards a publicly available UCA release. See the Version Tracking page for details.

Any given UCA OpenStack release can be enabled on exactly one Ubuntu LTS release.

For more details on OpenStack release end of life see: Ubuntu OpenStack release cycle.

Reporting bugs

To report bugs against packages from the UCA, please use the ubuntu-bug tool.

For example:

ubuntu-bug nova-compute

This will ensure that bugs are raised against the cloud-archive project on Launchpad.

Using the UCA

The release schedule of OpenStack and Ubuntu are generally synchronised: a new OpenStack release becomes available in the UCA every six months and coincides with each release of Ubuntu. As OpenStack releases are added to the UCA and as releases fall out of support this section will be updated.

A UCA OpenStack release is enabled on a host with the add-apt-repository command.

Important: It is good practice to run sudo apt update both before and after the add-apt-repository command.

Ubuntu 20.04 LTS

On 20.04, OpenStack Victoria and OpenStack X are supported for 18 months each, and OpenStack W for 36 months. When 22.04's default OpenStack version is released it will be added to the UCA with support for 3 years (i.e. until the end of the Ubuntu 20.04 LTS lifecycle).

Ubuntu 18.04 LTS

On 18.04, OpenStack Rocky and OpenStack Train are supported for 18 months each, and OpenStack Stein for 36 months. When 20.04's default OpenStack version is released it will be added to the UCA with support for 3 years (i.e. until the end of the Ubuntu 18.04 LTS lifecycle).

Ussuri

sudo add-apt-repository cloud-archive:ussuri

Train

sudo add-apt-repository cloud-archive:train

Stein

sudo add-apt-repository cloud-archive:stein

Rocky

sudo add-apt-repository cloud-archive:rocky

Ubuntu 16.04 LTS

On 16.04, OpenStack Newton and OpenStack Pike are supported for 18 months each, and OpenStack Ocata for 36 months. OpenStack Queens, 18.04's default OpenStack version, is supported in the UCA for 3 years (i.e. until the end of the Ubuntu 16.04 LTS lifecycle).

Queens

sudo add-apt-repository cloud-archive:queens

Ubuntu 14.04 LTS

On 14.04, OpenStack Juno and OpenStack Liberty are supported for 18 months each, and OpenStack Kilo for 36 months. OpenStack Mitaka, 16.04's default OpenStack version, is supported in the UCA for 3 years (i.e. until the end of the Ubuntu 14.04 LTS lifecycle).

Mitaka

sudo add-apt-repository cloud-archive:mitaka

Ceph and the UCA

The below table shows the relationship between UCA release, Ceph release, Ubuntu release, and Ubuntu default archive ("distro").

Ceph release

Default archive

UCA release

Ubuntu release

Octopus

yes

-

Focal

Octopus

-

bionic-ussuri

Bionic

Nautilus

-

bionic-train

Bionic

Mimic

-

bionic-stein

Bionic

Mimic

-

bionic-rocky

Bionic

Luminous

yes

-

Bionic

Luminous

-

xenial-queens

Xenial

Jewel

yes

-

Xenial

Jewel

-

trusty-mitaka

Trusty

Firefly

yes

-

Trusty

Package Back-Porting Policy

The packages in the cloud archive will follow a policy similar to Ubuntu release back-porting policy. For example, Openstack Train originated in Eoan and is back-ported to the Train cloud archive, and Openstack Queens originated in Bionic and is back-ported to the Queens cloud archive.

You may also refer to these tables to see what the package version per Openstack release in the cloud archive. Here is an practical case of the qemu package. Openstack train originated in Eoan, and its qemu is 1.4.0-based. The default qemu version of Bionic is 1.2.0-based. Thus 1.4.0 is back-ported to the Bionic Train cloud archive. By using this Bionic Train cloud archive with your Ubuntu Bionic release, the original 1.2.0-based qemu in your Ubuntu Bionic system will be replaced/upgraded to 1.4.0-based qemu.

OpenStack/CloudArchive (last edited 2023-10-12 16:47:30 by corey.bryant)