私はLXCコンテナを数年使用しており、最近、コンテナ環境内で実行されるアプリケーションのタイプを拡張しました。
次のような構成パラメーターを使用して、コンテナーレベルでリソースを制限し始めています。
lxc.cgroup.cpuset.cpus = 16-23
lxc.cgroup.memory.limit_in_bytes = 30720M
lxc.cgroup.memory.memsw.limit_in_bytes = 32768M
「チューニング」ツール( pgtune )を使用してPostgresデータベースの構成を生成している開発者と協力していますLXC環境内で実行されます。このツールは古く、VMまたはコンテナー対応ではありません。これは、システムにRAM=に基づいて推奨サイズ設定を表示します。
これは、ホストシステムのすべてのRAM(96GB)がコンテナインスタンスに表示されることを確認すると、場合によっては有害である可能性があることを認識したときです。
これの回避策はありますか、それともLXCを使用する場合の回避策ですか?
それを回避する方法はないようです。 LXCはcgroupを使用してRAM制限を行い、非仮想化対応ツールは/proc/meminfo
のような統計を読み取ります。これはLXC内に含まれているnotであり、全体を出力しますRAM。コンテナー内で実行すると、free
またはtop
でもこの動作を確認できます。
ソース: http://fabiokung.com/2014/03/13/memory-inside-linux-containers/