14.2.0 Nautilus 升级(Mimic或Luminous)

从Mimic或Luminous升级

备注

  • 在从Luminous升级到Nautilus的过程中, 在monitors升级到Nautilus 之后,将无法使用Luminous ceph-osd守护进程创建新的OSD。我们建议您在升级过程中避免添加或更换任何OSD。
  • 我们建议您在升级过程中避免创建任何RADOS pools。
  • 您可以使用该命令ceph versions监视每个阶段的升级进度,该命令将告诉您每种类型的守护程序正在运行哪些ceph版本。

说明

  1. 如果您的群集最初安装的是Luminous 之前的版本,请确保在运行Luminous 时至少完成了所有PG 的完全清理。如果不这样做,将导致监视器守护程序在启动时拒绝加入quorum,从而使它们无法正常运行。

    如果您不确定您的Luminous集群是否已完成所有PG的完全清理,您可以通过运行指令来检查集群的状态:

     # ceph osd dump | grep ^flags
    

    为了能够升级到Nautilus,您的OSD map必须包括的recovery_deletespurged_snapdirs标志。

    如果您的OSD map不包含这两个标志,您要等待大约24-48小时,在标准群集配置中应该有足够的时间将所有放置组至少擦洗一次,然后重复上述过程要重新检查。

    但是,如果您刚刚完成了对Luminous的升级并希望在短时间内继续使用Mimic,则可以使用单行shell命令强制在所有放置组上进行清理,例如:

    # ceph pg dump pgs_brief | cut -d " " -f 1 | xargs -n1 ceph pg scrub
    

    您要考虑到这种强制擦洗,可能会对您的Ceph客户端性能产生负面影响。

  2. 确保您的群集稳定且健康(无需关闭或恢复OSD)。(可选,但建议。)

  3. 设置noout升级持续时间的标志。(可选,但建议。):

    # ceph osd set noout
    
  4. 通过安装新软件包并重新启动monitor 守护程序来升级监视器。例如,在每个monitor 主机上:

    # systemctl restart ceph-mon.target
    

    一旦所有monitor都启动,请通过nautilus在mon 映射中查找字符串来验证monitor升级是否已完成。命令:

    # ceph mon dump | grep min_mon_release
    

    应显示:

     min_mon_release 14 (nautilus)
    

    如果不是,则表示尚未升级和重新启动一个或多个monitor和/或quorum 不包括所有monitors。

  5. ceph-mgr通过安装新软件包并重新启动所有manager来升级守护程序。例如,在每位经理主持人身上:

    # systemctl restart ceph-mgr.target
    

    请注意,如果您使用的是Ceph Dashboard,则可能需要在升级包后单独安装ceph-mgr-dashboard。安装脚本将自动为您重新启动管理器守护程序。所以在这种情况下,您可以跳过重启守护进程的步骤。

    ceph-mgr通过检查验证守护程序是否正在运行:ceph -s

    # ceph -s
     ...
        services:
        mon: 3 daemons, quorum foo,bar,baz
        mgr: foo(active), standbys: bar, baz
     ...
    
  6. 通过安装新软件包并在所有OSD主机上重新启动ceph-osd守护程序来升级所有OSD :

    # systemctl restart ceph-osd.target
    

您可以使用或命令监视OSD升级的进度:

 `ceph versions``ceph osd versions`

ceph osd versions

{
   "ceph version 13.2.5 (...) mimic (stable)": 12,
   "ceph version 14.2.0 (...) nautilus (stable)": 22,
}
  1. 如果在使用ceph-disk部署的集群中有任何OSD(例如,几乎所有在Mimic发布之前创建OSD),您需要告诉ceph-volume承担启动守护进程的责任。在每个包含OSD的主机上,确保OSD当前正在运行,然后:

    # ceph-volume simple scan
    # ceph-volume simple activate --all
    

    我们建议在此步骤后重新启动每个OSD主机,以验证OSD是否自动启动。

    请注意,ceph-volume没有与ceph-disk相同的热插拔功能,其中通过udev事件自动检测新连接的磁盘。如果在运行上述scan命令时OSD当前未运行,或者基于ceph磁盘的OSD被移动到新主机,或者重新安装主机OSD,或者 /etc/ceph/osd目录丢失,则需要扫描每个ceph-disk OSD的数据分区。例如,:

    # ceph-volume simple scan /dev/sdb1
    

输出包括启用OSD 的appopriate 命令。

   `ceph-volume simple activate`
  1. 升级所有CephFS MDS守护进程。对于每个CephFS文件系统,

    1. 将等级数减少到1.(如果您计划稍后恢复,请先记下MDS守护进程的原始数量。):

      # ceph status
      # ceph fs set <fs_name> max_mds 1
      
    2. 等待群集通过定期检查状态来停用任何非零等级:

      # ceph status
      
    3. 在适当的主机上使所有备用MDS守护程序脱机:

       # systemctl stop ceph-mds@<daemon_name>
      
    4. 确认只有一个MDS在线且FS为0级:

      # ceph status 
      
    5. 通过安装新软件包并重新启动守护程序来升级最后剩余的MDS守护程序:

        # systemctl restart ceph-mds.target
      
    6. 重新启动脱机的所有备用MDS后台驻留程序:

         # systemctl start ceph-mds.target
      
    7. 恢复卷的原始值max_mds

      # ceph fs set <fs_name> max_mds <original_max_mds>
      
  2. 通过升级软件包并在所有主机上重新启动守护程序来升级所有radosgw守护程序:

        # systemctl restart radosgw.target
    
  3. 通过禁止前Nautilus OSD并启用所有新的Nautilus功能来完成升级:

       # ceph osd require-osd-release nautilus 
    
  4. 如果您noout在开头设置,请务必将其清除:

    # ceph osd unset noout
    
  5. 验证群集是否健康。

    `ceph health`
    
  6. 要启用新的v2网络协议,请输入以下命令:

    ceph mon enable-msgr2 
    

这将指示绑定到旧v1协议的旧默认端口6789的所有监视器也绑定到新的3300 v2 协议端口。要查看是否所有monitors都已更新,请:

   ceph mon dump 

并验证每个监视器都 列出了a v2:v1:地址 。

  1. 对于已升级的每个主机,您应更新 ceph.conf文件,以便它指定无监控端口(如果您在默认端口上运行监控器)或明确引用v2和v1地址和端口。如果仅列出v1 IP和端口,事情仍然有效,但每个CLI 实例化或守护进程在学习监视器之后还需要重新连接,并且还会说v2协议,减慢速度并阻止完全转换到v2协议。这也是将任何配置选项完全转换ceph.conf到集群配置数据库的好时机。在每台主机上,您可以使用以下命令将任何选项导入monitors :

    ceph config assimilate-conf -i /etc/ceph/ceph.conf
    

您可以使用以下命令查看群集的配置数据库:

 ceph config dump

为每个主机创建一个最小但足够的ceph.conf

 ceph config generate-minimal-conf > /etc/ceph/ceph.conf

请确保仅在已升级到Nautilus的主机上使用此新配置,因为它可能包含一个mon_host值,该值 包含 Nautilus只能理解的IP地址的新v2:v1:前缀 。 有关更多信息,请参阅更新ceph.conf和mon_host

  1. 考虑启用telemetry module向 Ceph 上游开发人员发送匿名使用统计信息和崩溃信息。要查看将要报告的内容(实际上没有向任何人发送任何信息),:

     ceph mgr module enable telemetry
     ceph telemetry show
    

如果您对报告的数据感到满意,则可以选择使用以下命令自动报告高级群集元数据:

  ceph telemetry on

有关telemetry module的更多信息,请参阅文档。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,684评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,143评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,214评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,788评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,796评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,665评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,027评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,679评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 41,346评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,664评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,766评论 1 331
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,412评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,015评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,974评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,203评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,073评论 2 350
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,501评论 2 343