这台ObServer上最多可部署多少个Unit?

【单选题】假设一台服务器的规格是128C 512G,在这台服务器上部署ObServer,配置项:
memory_limit =480
memory_limit_percentage =80
system_memory=20
仅有一种租户Unit规格为16c64G,这台ObServer上最多可部署多少个Unit?
A.5
B.6
C.7
D.8

5 个赞

480 / 64 =7.5 ,7台

3 个赞

从cpu角度算:128/16=8
从内存角度算:memory_limit 480,则(480-20)/64=取整为7
7<8,那么瓶颈为内存,则需要按内存算为7

3 个赞

按CPU核数和内存去除,取短板那个。
并且四舍五也舍。
余留下来的给sys租户。

2 个赞

现实还要考虑的更多,比如全分配完了,那每个租户在这个节点上都没有上调的余地了。

1 个赞

指定了limit,percent就不生效了,怎么还有min这个计算呢

2 个赞
  • memory_limit =480
  • memory_limit_percentage =80
  • system_memory=20
  • memory_limit 优先级高于memory_limit_percentage,实际内存配置为480G
  • system_memory不包括在memory_limit中,不占用480G大小

按16c64G作为unit

  • 内存:480/64 = 7.5
  • CPU: 128/16 = 8

结果:取整最多7个

2 个赞

租户可用的内存 是memory_limit-system_memory 。

memory_limit与memory_limit_percentage两个参数同时设置,memory_limit 优先,此时ob server 数据库可用内存480g, 租户可用内存=memory_limit-system_memory =480G-20G=460G
460G/64=7
cpu_count 没有说明,默认为0,检查实际可用CPU 数量,即128C ,128/16=8,
综合上面应该选C

2 个赞

谢谢大家

不好意思,之前回复确实有点问题,属于学艺不精,查阅资料确实memory_limit优先级高于memory_limit_percentage,有memory_limit情况下是不考虑memory_limit_percentage的。
所以直接取用480G即可,而系统内存是不包括在里面的;
既:
内存:480/64=7.5 <cpu:128/16=8,取小的为准,既为7
所以选择C;


按照这张图,租户可用内存要减去system memory的

1 个赞