【 使用环境 】生产环境
【 OB or 其他组件 】4.2.2-20240315150745
【 使用版本 】
【问题描述】清晰明确描述问题
【复现路径】问题出现前后相关操作
租户规格:
cpu_quota_concurrency=4
resource_hard_limit=100
ocp监控:
主机监控:
规格2C的,就能把主机32C跑满,看啦,资源,是完全没有隔离啊
【 使用环境 】生产环境
【 OB or 其他组件 】4.2.2-20240315150745
【 使用版本 】
【问题描述】清晰明确描述问题
【复现路径】问题出现前后相关操作
租户规格:
cpu_quota_concurrency=4
resource_hard_limit=100
ocp监控:
主机监控:
规格2C的,就能把主机32C跑满,看啦,资源,是完全没有隔离啊
租户cpu资源隔离的问题您可以参考下这个帖子
麻烦看下
df -h
ls -l /sys/fs/cgroup
ls -l /sys/fs/cgroup/cpu/
已联系相关技术同学分析,有进展会及时反馈
看上去这个租户是没有隔离的,使用超过了2C
如果没有开启cgroup这个现象是有可能的,如果正确开启了cgroup,这个现象是不符合预期的。
1、首先需要确定您这个observer是有正确配置好cgroup的
包括以下几点:
配置项enable_cgroup为True
/sys/fs/cgroup/cpu/oceanbase目录存在
在oceanbase工作目录下有cgroup链接至/sys/fs/cgroup/cpu/oceanbase/
参考:OceanBase分布式数据库-海量数据 笔笔算数
注意到您的环境是有使用cgroup的而且cpuset和cpu,cpuacct是分开挂载的,和这个问答的场景一样https://ask.oceanbase.com/t/topic/35609570/5
那么只需要确保执行了下面这三句即可
sudo mkdir /sys/fs/cgroup/cpu/oceanbase
sudo chown admin:admin -R /sys/fs/cgroup/cpu/oceanbase
sudo sh -c “echo 1 > /sys/fs/cgroup/cpu/oceanbase/cgroup.clone_children”
2、如果确定正确配置了cgroup,麻烦查看一下此租户的cgroup下cpu.cfs_quota_us的配置
例如如果该租户id是1002
那么查看cat /sys/fs/cgroup/cpu/oceanbase/tenant_1002/cpu.cfs_quota_us,预期情况下该值应该为200000,如果该值不是200000,而是-1等其他值,麻烦搜索一下cgroup的日志,过滤一下grep "ob_cgroup_ctrl.cpp"的日志看有什么异常
请参考上楼回复排查下,另外确认下是ocp部署的吗?这里cgroup没有开启
是OCP部署的
是否有进展呢?
解决了,原因:
/sys/fs/cgroup/cpu/oceanbase 目录被删除了,导致/home/admin/oceanbase/cgroup 链接失效
解决:
创新创建目录
mkdir /sys/fs/cgroup/cpu/oceanbase
chown admin:admin -R /sys/fs/cgroup/cpu/oceanbase
重启observer,cgroup 恢复