更新时间:2023-06-28 GMT+08:00

Linux迁移,设置迁移Agent资源限制

SMS为Linux迁移提供了源端资源限制功能,主要用于限制SMS-Agent在源端的CPU占用率,内存使用量和磁盘吞吐量。

前提条件

源端Linux主机安装并启用了cgroups功能

在源端主机执行如下命令,查看是否有cgroups功能。

mount | grep cgroup

如果查询到如下cgroups V1/V2版本挂载情况时,代表源端主机已启用了cgroups功能;如果查不到类似的挂载情况,则源端主机没有安装或没有启用cgroups功能。

如需使用SMS提供的资源限制功能,需要您自行评估安装或者启用cgroups是否会影响源端业务。如果您源端业务本身和cgroups相关,请通过提交工单,提前咨询SMS迁移专家,确认SMS资源限制和源端业务是否有冲突。

  • cgroups V1 版本

    以下3个挂载点分别对应CPU,内存和磁盘IO的控制系统。

    • /sys/fs/cgroup/CPU,CPUacct
    • /sys/fs/cgroup/memory
    • /sys/fs/cgroup/blkio
  • cgroup V2 版本

    可以看到cgroups V2 挂载在 /sys/fs/cgroup ,V2版本和V1版本略有区别,V2版本不会挂载在具体的资源项。

设置方法

  1. 登录SMS控制台。
  2. 在左侧导航树中,单击“迁移服务器”,进入迁移服务器列表页面。
  3. 在迁移服务器列表页面找到待迁移的服务器,在“目的端”列,单击“设置目的端”,进入迁移配置页面。
  4. 仔细阅读参数说明和注意事项,设置“CPU限制”、“内存限制”和“磁盘吞吐限制”参数。

    表1 参数说明和注意事项

    参数

    说明

    注意

    CPU限制

    该限制值表示限制SMS-Agent占用源端CPU总资源的百分比。

    • 当输入为空时候表示不限制。
    • 参数值取整数(1<= CPU限制 <=100),单位%。
    • 为保证迁移正常运行,CPU总核数乘以限制百分比不低于0.2核。

    换算公式:CPU限制百分比=限制CPU核数/总CPU核数*100(单位%)。

    例如:

    源端服务器拥有4核CPU,您想限制迁移最多使用约0.5核的CPU资源,可以输入13%。

    • CPU限制和磁盘吞吐限制会约束对应资源的使用,迁移速度会根据限定值有不同程度的降低。
    • 设置了资源限制时,会在源端/sys/fs/cgroup下创建sms_mig_cgroup文件夹,并创建限制规则参数。

    内存限制

    该限制值表示限制SMS-Agent对源端内存的使用量。假如迁移Agent占用内存资源超过设置的限定值,会启动保护机制,将迁移Agent停止或者结束。

    • 当输入为空时候表示不限制内存资源。
    • 参数值取整数(200<= 内存限制 <=1000)单位MB。
    • 为保证迁移正常运行,限制不低于200 MB。

    磁盘吞吐限制

    该限制值表示限制迁移时源端磁盘读写的速度。限制后迁移过程磁盘读写的速度不超过设置的限定值。

    • 当输入为空时候表示不限制磁盘吞吐资源。
    • 参数值取整数(10<=磁盘吞吐限制<=1000)单位MB/s。
    • 为保证迁移正常运行,限制不低于10 MB/s。

重新调整资源限制

已配置目的端但未开始迁移的任务、已暂停的任务和迁移完成待同步的任务,可以单击操作列的“更多->限制迁移资源”,重新设置资源限制。

查看资源使用情况

您可以使用topiotop等指令查看迁移过程中的资源使用情况,限制值略有小波动属于正常现象。