升级软件版本在日常运维中是一个常见操作。 本文分享一下Ceph版本升级的一些经验。

一般升级流程和注意如下:

1.  关注社区Release notes 和 ceph-user邮件订阅列表,获取社区发布的最新版本

http://docs.ceph.com/docs/master/release-notes/

2.  根据经验一般刚出的版本问题比较多;出于稳定性的考虑,线上正式环境的版本一般会落后社区1个版本; 并在这段时间密切关注社区此版本的bug消息

3. 如果没有重大问题,则在测试环境升级测试,跑1周的稳定性测试,看是否出现问题

4. 如果测试环境无问题,正式环境升级

Ceph升级脚本

在其中一个MON执行如下命令:

cat <<'EOF'>update_ceph.sh

#1. 改为国内源

export CEPH_DEPLOY_REPO_URL=http://mirrors.163.com/ceph/debian-jewel
export CEPH_DEPLOY_GPG_URL=http://mirrors.163.com/ceph/keys/release.asc #2. 配置 MON、OSD IP地址 MON="10.25.195.4 10.25.195.6 10.25.195.8"
OSD="10.25.194.2 10.25.194.3 10.25.194.4 10.25.194.5 10.25.194.6 10.25.194.7 10.25.194.8 10.25.194.9 \
10.25.194.10 10.25.194.11 10.25.194.12 10.25.194.13 10.25.194.14 10.25.194.15 10.25.194.16 10.25.194.17 \
10.25.194.18 10.25.194.19 10.25.194.20 10.25.194.21 10.25.194.22" #3. 升级MON和OSD上的Ceph #ceph-deploy install --release {release-name} ceph-node1[ ceph-node2]
ceph-deploy install $MON $OSD #4. 设置OSD noout避免产生rebalance ceph osd set noout # 5. 重启 MON/ OSD 进程 for i in $MON; do
ssh $i sudo systemctl restart ceph-mon@*
sleep 3s
done for i in $OSD; do
ssh $i sudo systemctl restart ceph-osd@*
sleep 3s done #6. 去掉设置OSD noout ceph osd unset noout #7. check mon/osd version ceph tell mon.* version
ceph tell osd.* version EOF

如何升级Ceph版本及注意事项的更多相关文章

  1. Android Studio从2.3升级到3.1注意事项

    原文:https://blog.csdn.net/lithiumyoung/article/details/80111111 Android Studio从2.3升级到3.1注意事项 项目根目录下的b ...

  2. 升级ceph

    参考文档 https://blog.51cto.com/jerrymin/2140258 https://www.virtualtothecore.com/en/upgrade-ceph-cluste ...

  3. 升级Gogs版本

    今天早上收到阿里云发的报警短信,大致内容如下: 前提分析: 公司代码代码仓库使用是Gogs搭建的,版本是0.11.34,二进制方式安装的,连接的是其他主机上的MySQL数据库,因此被检测到有这个漏洞 ...

  4. 非关系型数据库来了,CRL快速开发框架升级到版本4

    轮子?,我很任性,我要造不一样的轮子,同时支持关系型和非关系型的框架有没有 新版数据查询作了些调整,抽象了LabmdaQueryy和DBExtend,升级到版本4,非关系数据库MongoDB被支持了! ...

  5. ubuntu下升级R版本

    ubuntu下升级R版本   在测试<机器学习 实用案例解析>一书的邮件分类代码时,windows系统下rstudio中无法读取特殊字符,在ubuntu下可以.在ubuntu虚拟机下安装t ...

  6. Mac中使用port升级gcc版本

    Mac OS中的gcc版本可能不会满足实际使用要求,需要对其升级. 这里介绍使用port方式来升级gcc版本.Macports是Mac OS中的软件包管理工具. 首先,安装Macports 这里提供O ...

  7. Windows2000安装Winform Clickonce提示升级系统版本的解决方案

    Windows2000安装Winform Clickonce提示升级系统版本.只需要把所有应用的DLL的独立性设置为false就可以了.

  8. wdcp升级php版本到5.3,5.5

    官网省级方法 wget http://down.wdlinux.cn/in/php_up53.shsh php_up53.sh 看到"php update is OK"提示表示,顺 ...

  9. PHPNow升级PHP版本为5.3.5的方法

    在WIN上有时候需要测试一些PHP程序,又不会自行独立配置环境,那么PHPNow是非常好的选择,这篇文章主要为大家分享下如果将phpnow的php版本升级为5.3.5   在WIN上有时候需要测试一些 ...

随机推荐

  1. [麦先生]TP3.2之微信开发那点事[基础篇](微信支付签名算法)

    两种模式:扫码支付和微信内支付(调用js-sdk) trade_type==native即扫码支付,只需要将code_url转成二维码,使用微信扫码即可: js-sdk微信内支付-调用微信js-sdk ...

  2. MMORPG大型游戏设计与开发(客户端架构 part8 of vegine)

    脚本模块是游戏设计中争论比较多的话题,那是因为作为脚本本身所带来的利弊.其实这都无关紧要,取舍是人必须学会的一项技能,如果你不会取舍那么就让趋势给你一个满意的答复.自从魔兽世界以及传奇(世界)问世以来 ...

  3. [Basic Information Theory] Writen Notes

  4. VS 代码Diff 之Beyone Compare

    前提条件 机器已安装 beyone compared软件和 visual svn for vs 插件. 在VS中集成SVN,我推荐使用 visual svn扩展. visual svn 官网:http ...

  5. [No000043]学习Linux操作系统必备基础知识

    Linux操作系统概述 Q1.什么是GNU?Linux与GNU有什么关系? A: 1)GNU是GNU is Not Unix的递归缩写,是自由软件基金会(Free Software Foundatio ...

  6. [No000005]C#注册表操作,创建,删除,修改,判断节点是否存在

    //用.NET下托管语言C#操作注册表,主要内容包括:注册表项的创建,打开与删除.键值的创建(设置值.修改),读取和删除.判断注册表项是否存在.判断键值是否存在. //准备工作: //1:要操作注册表 ...

  7. JSP第5次测试---测试分析

    1. (选择一项) A: B: C: D:  解析:构造方法方法名与类名必须相同,并且没有返回值,在对象创建时被调用:可以有带参和无参的构造方法同时出现于一个类. 2. (选择一项) A: B: C: ...

  8. windows下 git配置ssh

    1. 打开 git bash 2. cd ~/.ssh 3. ssh-genkey (一致next),  会生成 id_rsa (密钥); id_rsa.pub(公钥) 4. 用记事本打开 id_rs ...

  9. vmware打开出错,需要打开虚拟化的设置

  10. javascript的几个小技巧

    1.在循环中缓存array.length 这个技巧很简单,这个在处理一个很大的数组循环时,对性能影响将是非常大的.基本上,大家都会写一个这样的同步迭代的数组. for(var i=0;i<arr ...