cgroup_parent のカスタマイズ

親 cgroup が必要なリソース制限と運用ポリシーに合うことを確認してください。

説明

cgroup_parent は、コンテナーの親 cgroup を選ぶ標準の Compose オプションです。指定自体が分離を無効にするわけではありませんが、親の制限や運用ポリシーが不適切だと、意図した CPU・メモリ制御が適用されない場合があります。

独自のリソース階層が不要なら、cgroup_parent を指定する必要はありません。意図しない cgroup にコンテナーを配置すると、リソース制御や障害調査が複雑になる場合があります。

想定される影響

  • リソース制御の階層が複雑になり、運用状況を追跡しにくくなる場合があります。
  • 不適切な配置により、ほかのワークロードとリソースが競合する可能性があります。
  • 環境ごとに異なる親 cgroup を使うと、デプロイの再現性や保守性が下がる場合があります。

対処方法

  • 特別な要件がなければ cgroup_parent を削除してください。
  • リソース制御が必要なら、Compose のリソース制限設定を検討してください。
  • プラットフォームに必要な cgroup ポリシーを文書化し、共通テンプレートで管理してください。

例

変更前

yaml
services:
  app:
    image: nginx:latest
    cgroup_parent: custom-parent

変更後

yaml
services:
  app:
    image: nginx:latest

説明:

  • 変更前: カスタムの親を選択しています。その制限を確認する必要がありますが、設定自体が脆弱性というわけではありません。
  • 変更後: 親の選択をランタイムのデフォルトに委ねます。この変更だけで CPU やメモリの上限が設定されるわけではありません。

参考資料