openshift - OpenShift Enterprise 2 中不止一个 CPU/内核的齿轮大小?

标签 openshift cgroups

我正在设置 OpenShift Enterprise 2,我想创建一个齿轮尺寸更大的区域。改变

/etc/openshift/resource_limits.conf

在节点上增加设备可用的内存和磁盘很简单,但 CPU 资源管理不太直观(来自 resource_limits.conf):

# cpu cpu_rt_period_us=100000 cpu_rt_runtime_us=950000
cpu_shares=128
cpu_cfs_quota_us=100000

默认情况下,一个齿轮最多只能消耗 100% 的单个处理器核心。如果我想允许更大的齿轮尺寸以充分利用 2 个处理器内核,我该怎么做,或者目前在 OpenShift 中根本不可能吗?

最佳答案

由于所有齿轮都是相同的,并且由于在限制组时“cpu_shares”是在相对基础上进行比较的,所以我不确定更改“cpu_shares”是否有意义。

但是,“cpu_cfs_quota_us”看起来可能是正确的选择。从这个页面:

https://access.redhat.com/site/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Resource_Management_Guide/sec-cpu.html

看来我应该能够将配额翻倍以获得完整的 2 个核心。但是,尚不清楚 OpenShift 是否会遵守这一点,因为在 resource_limits.conf 中甚至找不到“cpu_cfs_period_us”参数。

我使用“压力”进行了一项实验。我首先确认我可以在正常的 ssh 登录下加载 2 个内核(使用“stress --cpu 2”)。然后我登录到该主机上的一个齿轮并运行相同的东西。使用 cpu_cfs_quota_us=100000,我最多只能为每个压力进程消耗 50% 的 CPU。但是当我改成cpu_cfs_quota_us=200000时,每个进程都能消耗99%以上,看来是成功了。如果这在 OpenShift 文档中被调用就好了......

关于openshift - OpenShift Enterprise 2 中不止一个 CPU/内核的齿轮大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22615771/

相关文章:

ubuntu - C组: cannot create a new group

process - 如何监控容器内的进程?

linux - 在不挂载的情况下读取 cgroups 数据

Openshift 中的 PostgreSQL 不会执行入口点并且无法启动数据库

kubernetes - 如何在重启策略设置为始终的情况下删除 Openshift 中的 pod?

Openshift - 用于获取 pod 的 ARTIFACT_URL 参数或其已部署应用程序版本的 API

linux - cgconfig 服务无法启动

java - 编译错误 - 在 Redhat "Openshift"应用程序中找不到包 com.google.gson

git - 使用现有存储库中的分支创建 Openshift 应用程序(带有 `rhc create` )

operating-system - 在裸机上运行Docker是否可以维护?