Dockerを使用してコンテナ化されたアプリを実行しています。彼らが消費するリソースの量を測定することに興味があります(CPUとメモリの使用量に関する限り)。
RAM&CPU使用率)のようなDockerコンテナーによって消費されるリソースを測定する方法はありますか?
ありがとうございました。
更新:dockerがdocker stats
をサポートするようになったため、以下の@Adrian Mouatの回答をご覧ください。
現在のバージョンでdockerに組み込まれているこれを行う方法はありません。将来のバージョンでは、APIまたはプラグインを介してこれをサポートする予定です。
CPUとメモリを追跡するために使用できるはずのlxcプロジェクトがあるようです。
これはdocker stats
から取得できます。例:
$ docker stats --no-stream
CONTAINER CPU % MEM USAGE / LIMIT MEM % NET I/O BLOCK I/O PIDS
6b5c0fcfa7d4 0.13% 2.203 MiB / 4 MiB 55.08% 5.223 kB / 648 B 102.4 kB / 876.5 kB 3
また、cgroupから直接リソースメトリックを読み取ることができます。以下の例を参照してください(私はDebian Jessie
およびdocker 1.2
)
> docker ps -q
afa03c363af5
> ls /sys/fs/cgroup/memory/system.slice/ | grep docker-afa03c363af5
docker-afa03c363af54815d721d938e01fe4cb2debc4f6c15ebff1851e20f6cde3ae0e.scope
> cd docker-afa03c363af54815d721d938e01fe4cb2debc4f6c15ebff1851e20f6cde3ae0e.scope
> cat memory.usage_in_bytes
4358144
> cat memory.limit_in_bytes
1073741824