Features/FedoraUpgrade

From FedoraProject

< Features(Difference between revisions)
Jump to: navigation, search
(Detailed Description)
(Feature deferred on Jan 30 FESCo meeting)
 
(10 intermediate revisions by 2 users not shown)
Line 10: Line 10:
 
== Current status ==
 
== Current status ==
 
* Targeted release: Fedora 19
 
* Targeted release: Fedora 19
* Last updated: 2013-01-08
+
* Last updated: 2013-01-16
 
* Percentage of completion: 40% - Well it is 100% devel done for upgrading from F17 to F18, I reserve those remaining 60%
 
* Percentage of completion: 40% - Well it is 100% devel done for upgrading from F17 to F18, I reserve those remaining 60%
  
Line 23: Line 23:
 
== Detailed Description ==
 
== Detailed Description ==
  
In past (until Fedora 17) we had Anaconda Installer/Upgrade and [[PreUpgrade]].
+
In past (until Fedora 17) we could upgrade Fedora using Anaconda Upgrade and [[PreUpgrade]].
  
Now (in Fedora 18) we have Anaconda Installer and FedUp.
+
Now (in Fedora 18) we have only [[FedUp]] and previous methods are obsoleted.
  
I propose to have Anaconda Installer, FedUp and FedoraUpgrade.
+
I propose to have [[FedUp]] and FedoraUpgrade in Fedora 19.
  
 
FedUp is in fact yum-upgrade as well, but in dracut environment (aka off-line upgrade).
 
FedUp is in fact yum-upgrade as well, but in dracut environment (aka off-line upgrade).
Line 33: Line 33:
 
But on-line upgrade is possible. E.g in Debian world it is even [http://www.debian.org/releases/squeeze/amd64/release-notes/ch-upgrading.en.html prefered method]. In Fedora exist [https://fedoraproject.org/wiki/Upgrading_Fedora_using_yum upgrade using yum] as unofficial method for long time.
 
But on-line upgrade is possible. E.g in Debian world it is even [http://www.debian.org/releases/squeeze/amd64/release-notes/ch-upgrading.en.html prefered method]. In Fedora exist [https://fedoraproject.org/wiki/Upgrading_Fedora_using_yum upgrade using yum] as unofficial method for long time.
  
A lot of people are using upgrade using yum for long time and the "problem ratio" is at least on pair with Anaconda upgrade. In fact most problems comes from improper packaging. E.g. maintainer forgot to obsolete, so during upgrade user get file conflict. Once these problems are reported and fixed the upgrade is without problem.  
+
A lot of people are using upgrade using yum for long time and the "problem ratio" was at least on pair with Anaconda upgrade. In fact most problems comes from improper packaging. E.g. maintainer forgot to obsolete, so during upgrade user get file conflict. Once these problems are reported and fixed the upgrade is without problem.  
  
 
And since FedUp is just different approach to yum-upgrade, FedUp will benefit from fixes on FedoraUpgrade (and vice versa).
 
And since FedUp is just different approach to yum-upgrade, FedUp will benefit from fixes on FedoraUpgrade (and vice versa).
Line 40: Line 40:
  
 
If this method will be tested by FedoraQA, then I believe this upgrade method can be safely recommended to user.
 
If this method will be tested by FedoraQA, then I believe this upgrade method can be safely recommended to user.
 +
 +
=== Source ===
 +
 +
https://github.com/xsuchy/fedora-upgrade
  
 
== Benefit to Fedora ==
 
== Benefit to Fedora ==
Line 62: Line 66:
 
Upgrade without interruption of service. Only interrupted for approximately 50 seconds needed for reboot.
 
Upgrade without interruption of service. Only interrupted for approximately 50 seconds needed for reboot.
  
Upgrade script is bash script, which is for power user like receipt. So if somethings breaks, admin can easily continue by investigating script - unlike anaconda or dracut, which is black box.
+
Upgrade script is bash script, which is for power user like receipt. So if somethings breaks, admin can easily continue by investigating script - unlike Dracut, which is black box.
  
 
== Dependencies ==
 
== Dependencies ==
Line 70: Line 74:
 
== Contingency Plan ==
 
== Contingency Plan ==
  
If there will be some critical problem with FedoraUpgrade we can safely rollback to current state (Anaconda+FedUp).
+
If there will be some critical problem with FedoraUpgrade we can safely rollback to current state (FedUp only).
 
+
== Source ==
+
 
+
https://github.com/xsuchy/fedora-upgrade
+
 
+
  
 
== Documentation ==
 
== Documentation ==
Line 82: Line 81:
  
 
== Release Notes ==
 
== Release Notes ==
None yet.
+
 
 +
Fedora 19 includes the new upgrade method "Fedora Upgrade". This method allows you to upgrade using yum, while your machine is online. It can be run as:
 +
<pre>
 +
# yum install fedora-upgrade
 +
# fedora-upgrade
 +
.... and follow the guide
 +
</pre>
 +
Note: you can still use [[FedUp]] for upgrades.
 +
 
 +
Short comparision of available upgrade methods:
 +
* '''FedUp''' - your system is offline and most services are not running during upgrade, if somethings goes wrong during upgrade you left are in dracut environment.
 +
* '''Fedora Upgrade''' - your system is online and all services are running during upgrade, if something goes wrong during upgrade you are left in full shell.
 +
 
 +
Both methods have advantages and disadvantages, you have the freedom to choose one method yourself.
  
 
== Comments and Discussion ==
 
== Comments and Discussion ==
Line 88: Line 100:
 
* See [[Talk:Features/FedoraUpgrade]]
 
* See [[Talk:Features/FedoraUpgrade]]
  
[[Category:FeatureReadyForWrangler]]
+
[[Category:FeaturePageIncomplete]]
  
 
<!-- When your feature page is completed and ready for review -->
 
<!-- When your feature page is completed and ready for review -->

Latest revision as of 19:34, 30 January 2013

Contents

[edit] Fedora Upgrade

[edit] Summary

Upgrade Fedora to next version using yum upgrade.

[edit] Owner

[edit] Current status

  • Targeted release: Fedora 19
  • Last updated: 2013-01-16
  • Percentage of completion: 40% - Well it is 100% devel done for upgrading from F17 to F18, I reserve those remaining 60%

[edit] What works

  • wiki page, which worked for several releases in past.
  • Script, which can upgrade from F17 to F18 and from F18 to rawhide
  • package is already in Fedora

[edit] What needs work

  • testing - a lot of testing

[edit] Detailed Description

In past (until Fedora 17) we could upgrade Fedora using Anaconda Upgrade and PreUpgrade.

Now (in Fedora 18) we have only FedUp and previous methods are obsoleted.

I propose to have FedUp and FedoraUpgrade in Fedora 19.

FedUp is in fact yum-upgrade as well, but in dracut environment (aka off-line upgrade). Some devels say that offline upgrade is only way. But on-line upgrade is possible. E.g in Debian world it is even prefered method. In Fedora exist upgrade using yum as unofficial method for long time.

A lot of people are using upgrade using yum for long time and the "problem ratio" was at least on pair with Anaconda upgrade. In fact most problems comes from improper packaging. E.g. maintainer forgot to obsolete, so during upgrade user get file conflict. Once these problems are reported and fixed the upgrade is without problem.

And since FedUp is just different approach to yum-upgrade, FedUp will benefit from fixes on FedoraUpgrade (and vice versa).

I propose to support both FedUp and FedoraUpgrade and give user option.

If this method will be tested by FedoraQA, then I believe this upgrade method can be safely recommended to user.

[edit] Source

https://github.com/xsuchy/fedora-upgrade

[edit] Benefit to Fedora

Ability to provide upgrade method with nearly zero downtime.

[edit] Scope

Currently support only upgrade from N-1 version.

Test it on all supported platforms and probably on Secondary Arches as well.

Test it with different comps groups installed (Desktop, web server...)

[edit] How To Test

Download https://raw.github.com/xsuchy/fedora-upgrade/master/fedora-upgrade to machine with Fedora 17 and run it. You should end up with Fedora 18. Check if everything is correct.

[edit] User Experience

Upgrade without interruption of service. Only interrupted for approximately 50 seconds needed for reboot.

Upgrade script is bash script, which is for power user like receipt. So if somethings breaks, admin can easily continue by investigating script - unlike Dracut, which is black box.

[edit] Dependencies

None.

[edit] Contingency Plan

If there will be some critical problem with FedoraUpgrade we can safely rollback to current state (FedUp only).

[edit] Documentation

https://github.com/xsuchy/fedora-upgrade/blob/master/README.md

[edit] Release Notes

Fedora 19 includes the new upgrade method "Fedora Upgrade". This method allows you to upgrade using yum, while your machine is online. It can be run as:

# yum install fedora-upgrade
# fedora-upgrade
 .... and follow the guide

Note: you can still use FedUp for upgrades.

Short comparision of available upgrade methods:

  • FedUp - your system is offline and most services are not running during upgrade, if somethings goes wrong during upgrade you left are in dracut environment.
  • Fedora Upgrade - your system is online and all services are running during upgrade, if something goes wrong during upgrade you are left in full shell.

Both methods have advantages and disadvantages, you have the freedom to choose one method yourself.

[edit] Comments and Discussion