问题标签 [cgroups]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
315 浏览

docker - 如何动态调整docker容器的cpu-share值?

我正在使用 docker 1.11,我运行一个容器,例如:

我想在 docker 容器继续运行时更改 cpu-shares 的值。有什么方法可以做到吗?

我尝试/sys/fs/cgroup/cpu/docker/[containerID]/cpu.shares使用 VIM 编辑文件,但因“Fsync failed”而失败。这意味着我不能直接修改 cgroup 文件?

0 投票
1 回答
40 浏览

node.js - 在退出时测量 Docker 容器的资源使用情况

我创建了编译/解释用户代码并将结果传递回浏览器的容器(就像 JSFiddle 一样)。现在,我需要知道执行该代码使用了多少 CPU 和内存。因此,我不需要实时,而是在容器退出时需要它,这样我就可以将这两个参数与其他参数一起传递回客户端。

我尝试使用像这里这样的伪文件,但我的服务器(Ubuntu 14.04)上没有这样的位置。我如何测量这些参数?

0 投票
0 回答
93 浏览

bash - Docker 中的可变 cgroups 参数

我在与 Docker 合作设置 cgroups 时遇到问题。我有自己的可运行 Docker 映像

但我想要的是每个想要运行我的图像的用户都必须在运行图像中的脚本之前设置 cgroups 参数。我知道存在这样的事情:

但这不是我要找的。我真正想要的是这样的东西。如果用户键入

然后显示: 输入 cgroups 参数 ,然后该图像启动。我真的很想强迫用户输入他自己对 cgroups 的要求。

我真的不知道该怎么做。我想到了一些 bash 脚本,它在每个想要运行我的 docker 映像的用户 pc 中的 cgroups 中创建新组,但我仍然不确定它是否可能。

我会很高兴得到任何帮助。谢谢。

0 投票
1 回答
221 浏览

docker - 如何让docker独占访问cpus?

有什么方法可以让 docker 实例独占访问某些 cpu?

0 投票
1 回答
327 浏览

linux - 围绕 KSM 的安全问题

在使用KSM(Kernel Same-page Mapping)时,如果两个完全一样的内存页被两个完全隔离的进程所拥有,例如两个虚拟机,这些页会被合并吗?或者它们是否会因为每个进程彼此隔离而保持独立?我很困惑,因为虚拟机归结为主机上的单个进程,但如果这些页面被合并,这似乎是一个相当重要的问题,所以我假设它们是分开的?

我也很好奇这是否会区别于虚拟机和容器?

除了会发生什么的问题之外,如果他们被隔离,是否可以详细说明?我假设这是通过使用 cgroups 来完成的,因此这两个进程的内存完全隔离,我想澄清一下。

0 投票
2 回答
949 浏览

ubuntu - 基于 Alpine 的 Docker 映像在 Ubuntu 主机上完全兼容?

在 Ubuntu 主机上运行基于 Alpine 的 Docker 映像是否存在任何兼容性问题或已知限制?

我知道 Docker 提供进程级别的隔离,并且机器资源调用是通过 cgroup 接口进行的。但我想知道(并且担心)是否存在特定情况甚至语言,除非您在配置主机时采取额外步骤,否则这种类型的设置(在 Ubuntu 主机上运行 Alpine 容器)会出现运行时问题。

编辑:
我想尝试增强我的问题......

我知道 Docker 提供了隔离,但想知道隔离中是否存在泄漏?如果存在泄漏,那么最好在与基本映像匹配的主机上运行 docker 映像,以确保不会发生奇怪的运行时错误。

更具体地说,应用程序在某种程度上需要内核代码并且是使用特定内核构建的。在具有不同内核的主机上运行这些应用程序可能会使您遇到奇怪的运行时错误。

例如,在 x86 主机上的 Docker 容器中运行 x64 应用程序会导致坏事发生吗?

0 投票
1 回答
429 浏览

apache - 如何限制所有 httpd 进程使用少于 90% 的总 CPU?

我研究了 nice、cpulimit 和 cggroups,但我不确定它们中的任何一个是否会做我想做的事情。也许他们这样做,但我做错了。

我的最终目标是让 CentOS 调查所有 apache 进程,如果它们加起来达到一定数量的 CPU 使用率,就杀死 % 最大的那个。有没有这样的工具可以做到这一点,或者这是我必须编写一个 shell/python 脚本然后安排一个 cronjob?

0 投票
1 回答
411 浏览

linux - 为什么 cgroups 中的 cpu.shares 不按照定义共享 cpu

我在 6 核机器上运行了以下命令

系统上的负载如下所示

没有 Cgroups

我创建了两个 cgroup 并将它们的 pid 添加到它们

但是stress cmd的CPU%也随着这个变化而明显下降

与 Cgroups

我预计压力仍会使用大部分 CPU% 并且 dd 会下降,如图所示,是什么导致压力也下降?任何指针

仅供参考:我在虚拟化环境中运行。

0 投票
1 回答
3263 浏览

android - Android 线程 Process.setThreadPriority

我知道 Process.setThreadPriority(Process.THREAD_PRIORITY_BACKGROUND)

让线程 t 在bg_non_interactive cgroups中运行

  1. 运行上面的代码,Log print uiCount=100000000 and newThreadCount=50000000(around)
  2. 去掉 Process.setThreadPriority(Process.THREAD_PRIORITY_BACKGROUND) 然后再次运行代码,Log打印几乎一样。

那么Process.setThreadPriority(Process.THREAD_PRIORITY_BACKGROUND)的作用是什么?

0 投票
1 回答
290 浏览

linux - Linux 系统负载是否考虑了完全公平调度程序的限制?

在 Linux 上,系统load被定义为 num runnable processes + num uninterruptable processes. 我想知道它是否会正确考虑用于限制一组进程在给定时间间隔内可能使用的 cpu 共享数量的CFS cgroup 配额。

换句话说:如果一个进程由于 CFS 配额耗尽而受到限制,它是否仍被视为可运行并因此反映在系统负载平均值中?