Swift升级的一般流程
Swift升级的一般流程见参考文档,摘抄如下:
As always, a production Swift cluster can be upgraded live, with no downtime for clients. The normal upgrade path is:
Stop the background processes
Upgrade the packages
Reload the processes (eg swift-init object reload)
Start the background processes
A normal upgrade process will upgrade one storage server in one zone (a "canary node") to check if any unforseen issue arise.
After than node is upgraded, upgrade the other storage nodes in that zone. Next, upgrade each of the remaining zones in turn.
Finally, upgrade each of your proxy servers (one at time).
F版对依赖库的变化
F版对依赖库的变化主要是添加了一个新的依赖python-swiftclient,另外放宽Webob的版本要求为>=1.0.8,<1.3,详情如下:
[ugyn@localhost swift]$ git diff origin/stable/essex:tools/pip-requires origin/stable/folsom:tools/pip-requires > diff
[ugyn@localhost swift]$ cat diff
diff --git a/origin/stable/essex:tools/pip-requires b/origin/stable/folsom:tools/pip-requires
index f9ea5f2..28bc426 100644
--- a/origin/stable/essex:tools/pip-requires
+++ b/origin/stable/folsom:tools/pip-requires
@@ -1,4 +1,4 @@
-WebOb==1.0.8
+WebOb>=1.0.8,<1.3
configobj==4.7.1
eventlet==0.9.15
greenlet==0.3.1
@@ -6,3 +6,6 @@ netifaces==0.6
pastedeploy==1.3.3
simplejson==2.0.9
xattr==0.4
+
+# Install python-swiftclient from git
+https://github.com/openstack/python-swiftclient/zipball/master#egg=python-swiftclient
升级存储节点
停止现有服务,并备份配置文