更新时间:2024-05-28 GMT+08:00

ClickHouse增加磁盘容量

随着业务量的增长,ClickHouse节点数据盘的磁盘容量已不能满足业务需求,需要扩容数据盘磁盘容量。

如果购买MRS集群的计费模式为按需计费,扩容磁盘容量后MRS集群不支持转包周期。

本章节仅适用于MRS 3.1.0版本。

前提条件

  • ClickHouse集群和实例状态正常。
  • 已评估好要扩容的ClickHouse节点数据盘磁盘容量大小。

扩容数据盘磁盘容量

  1. 登录MRS控制台,在左侧导航栏选择“现有集群”,单击集群名称。
  2. 单击“节点管理”,在对应的ClickHouse节点组下,单击要扩容的节点名称,进入到“云硬盘”界面。

  3. 在对应的数据盘单击“扩容”,进入到扩容磁盘界面。

    如果当前界面只能看到系统盘,没有数据盘则表示当前ClickHouse节点数据盘暂不支持通过该操作进行扩容。

  4. 在“新增容量(GB)”参数下修改需要增加的磁盘容量,修改完成后单击“下一步”。

  5. 按照提示仔细阅读扩容须知,单击“我已阅读,继续扩容”,确认扩容的磁盘容量信息无误后,单击“提交订单”。

  6. 以root用户登录到ClickHouse的扩容节点上,执行命令:df -hl,查看当前已有的数据目录和磁盘分区信息。

    ClickHouse默认数据目录格式为:“/srv/BigData/dataN”。如上图举例所示,当前ClickHouse数据目录为:“/srv/BigData/data1”,对应分区为:“/dev/vdb1”。

  7. 执行以下操作使得新扩容的磁盘容量生效。

    • 如果是新增分区操作,请执行8。新增分区操作是指把扩容的磁盘容量分配给新的分区,并挂载新的ClickHouse数据目录到新增分区下,该操作不会有中断业务的影响。
    • 如果是扩大已有分区操作,请执行15。扩大已有分区是指把扩容的磁盘容量分配给已存在分区下,操作期间会有中断业务的影响,请谨慎操作,建议操作前先停止业务。

  8. 新增分区操作请参考扩容云硬盘分区和文件系统(Linux)中的“新增MBR分区”或“新增GPT分区”章节进行操作。
  9. 以root用户登录到ClickHouse的扩容节点上,执行以下命令创建ClickHouse数据目录,为新增分区创建挂载点。目录建议按照当前编号递增。

    如当前数据目录为“/srv/BigData/data1”,则新增目录“/srv/BigData/data2”。

    cd /srv/BigData/

    mkdir data2

    cd data2

    mkdir clickhouse

    cd /srv/BigData/

    chmod 750 -R data2

    chown omm:wheel -R data2

  10. 执行以下命令,挂载新建分区。

    mount 磁盘分区 挂载目录

    比如当前新增分区为:“/dev/vdb2”,挂载目录为:“/srv/BigData/data2”,则执行以下命令:

    mount /dev/vdb2 /srv/BigData/data2

    弹性云服务器重启后,挂载会失效。您可以修改“/etc/fstab”文件,将新建磁盘分区设置为开机自动挂载,具体请参见设置开机自动挂载磁盘分区

  11. 参见访问FusionInsight Manager(MRS 3.x及之后版本),登录FusionInsight Manager。选择“集群 > ClickHouse > 配置 > 全部配置”。
  12. 搜索“_clickhouse.storage_configuration.disks”,在该配置项下,添加新增的ClickHouse数据目录。

    多个目录之间需用“,”分隔,添加的目录以“/”结尾。

    例如:在“/srv/BigData/data1/clickhouse/”基础上,添加新增的“,/srv/BigData/data2/clickhouse/”目录。添加之后为“/srv/BigData/data1/clickhouse/,/srv/BigData/data2/clickhouse/”。

  13. 添加完新增目录后,单击“保存”保存配置。单击“概览”,选择“更多 > 同步配置”,单击“确认”完成配置同步。
  14. 登录到ClickHouse的扩容节点上,进入到以下目录,查看新增的数据目录是否已更新到配置文件中。确认无误后新增分区操作完成。

    cd ${BIGDATA_HOME}/FusionInsight_ClickHouse_*/x_x_clickhouse实例名/etc

    cat config.xml

    举例如下,新增的“/srv/BigData/data2/clickhouse/”目录已添加到config.xml中。

  15. 如果是扩大已有分区操作,请提前确认ClickHouse业务已停止,否则操作期间会有中断业务的影响。
  16. 根据6确认要扩大的分区, 参考扩容云硬盘分区和文件系统(Linux)中的“扩大已有分区”章节进行操作。
  17. 扩大已有分区操作完成后,重新执行ClickHouse业务。