Automation Suite
2022.4
False
横幅背景图像
Automation Suite 安装指南
上次更新日期 2024年4月24日

自动:将 Ceph 数据池从复制类型迁移到纠删码类型

概述

要降低 HA 部署模型的对象存储存储要求,您可以将 Ceph 数据池从复制类型迁移到纠删码类型。

在 2022.4 之前的版本中, Ceph 使用的是复制类型的数据池,该池需要 900 GiB 的集群空间来存储 50 GiB 的对象。 纠删码池会将存储相同的 50 GiB 对象所需的存储空间从 900 GiB 减少到 450 GiB。

注意: 非 HA 部署不需要迁移 Ceph 数据池。

先决条件

Ceph 数据池迁移需要以 HA 模式部署的 Automation Suite。

迁移步骤

要将 Ceph 数据池从复制类型迁移到纠删码类型,请执行以下步骤:

  1. 通过运行以下命令,查看迁移脚本的帮助:
    sudo ./Tools/rook-ceph-data-pool-migration.sh --helpsudo ./Tools/rook-ceph-data-pool-migration.sh --help
    输出:
    ***************************************************************************************
    
    Migrate Ceph data pool from replicated to erasure coded pool
    
    Arguments
      -l|--log                            Log file path to store actual ceph pool migration logs
      --force                             Provide consent to perform action which may cause downtime to complete migration
      -h|--help                           Show this help message and exit
    
    ******************************************************************************************************************************************************************************
    
    Migrate Ceph data pool from replicated to erasure coded pool
    
    Arguments
      -l|--log                            Log file path to store actual ceph pool migration logs
      --force                             Provide consent to perform action which may cause downtime to complete migration
      -h|--help                           Show this help message and exit
    
    ***************************************************************************************
  2. 如果您的 SSH 会话经常断开连接,请使用 tmux /screen /nohup 运行迁移脚本。
    sudo ./Tools/rook-ceph-data-pool-migration.shsudo ./Tools/rook-ceph-data-pool-migration.sh
  3. 通过运行以下命令更新 ArgoCD 配置:
    kubectl  -n argocd get application  fabric-installer -o json | jq 'if ([.spec.source.helm.parameters[].name] | index ("global.rook.dataPoolType")) == null then .spec.source.helm.parameters +=  [{"name": "global.rook.dataPoolType" , "value": "erasure-coded"}] else (.spec.source.helm.parameters[] | select(.name == "global.rook.dataPoolType").value) |= "erasure-coded" end'  | kubectl apply  -f -kubectl  -n argocd get application  fabric-installer -o json | jq 'if ([.spec.source.helm.parameters[].name] | index ("global.rook.dataPoolType")) == null then .spec.source.helm.parameters +=  [{"name": "global.rook.dataPoolType" , "value": "erasure-coded"}] else (.spec.source.helm.parameters[] | select(.name == "global.rook.dataPoolType").value) |= "erasure-coded" end'  | kubectl apply  -f -
    
备注:

该脚本将执行迁移前检查,以验证 Ceph 集群是否运行状况良好并支持迁移,然后才会执行实际迁移。

如果迁移脚本失败并显示 Insufficient Storage space available for LH node 错误,并且无法增加存储空间,则可以使用 Rados 导出/导入执行手动迁移。有关说明,请参阅手动:将 Ceph 数据池从复制类型迁移到纠删码类型
  • 概述
  • 先决条件
  • 迁移步骤

此页面是否有帮助?

获取您需要的帮助
了解 RPA - 自动化课程
UiPath Community 论坛
Uipath 白色徽标
信任与安全
© 2005-2024 UiPath. All rights reserved.