メモリを増やす前に残す観測票:使用量・上限・停止時刻を並べる

公開日: 2026-09-14 / 仕様・資源 #メモリ #Docker #プラン変更

使用率が高いだけでは、メモリを増やす理由として足りない。何の処理中に、どの上限に達し、何が止まったかを同じ時刻で照合する。

Dockerの数字を同じ物差しにそろえる

Docker statsの公式資料によると、LinuxのCLI表示は使用量からキャッシュ分を差し引く。APIはその計算をせず、総量とキャッシュの情報を返す。cgroupの版によって参照するキャッシュ項目も違う。

したがって、管理画面の値とCLIが違っても、それだけでは測定の誤りとはいえない。計測方法、単位、対象のコンテナ、時刻をそろえる。停止したコンテナはstatsを返さないため、空欄を「0 MiBで動作中」と補わない。資料確認日: 2026年9月14日。

観測票は、処理名から始める

当サイトでは、単発の使用率を書き写す表より、次のような横並びの記録を使う設計にした。下の行は記入欄であり、実測結果ではない。

時刻・時間帯 実行していた処理 使用量 / 設定上限 ホストの状況 停止・遅延の記録
通常時 処理名、同時実行数 計測方法と単位も記入 利用可能量、他処理 応答時間や失敗の有無
問題が出た時 取込み、バッチなど ピーク付近の値 同時刻の変化 OOM、終了、再起動時刻
変更後 変更前と比べられる処理 同じ方法で計測 条件が違えば併記 問題が再現したか

何も動いていない時の一回だけでは、夜間バッチの余裕は分からない。逆に、短いピークがあっても業務への影響がなければ、その値だけから契約変更を決めることはできない。

自分が管理するコンテナの確認なら、対象名を指定したdocker stats --no-stream コンテナ名で一時点の表示を取れる。これは連続記録ではない。短いピークを取り逃がす場合があるので、必要な観測期間と間隔は処理の長さから決める。

上限とホスト容量は別に見る

Dockerのリソース制約には、メモリ制限と不足時の挙動が説明されている。コンテナ側の上限が原因なら、VPSのメモリだけ増えても、同じ制限で再び止まる可能性がある。一方、制限を外せば必ず解決するわけでもない。ほかのサービスを圧迫しないか確認が必要だ。

  • OOMの記録がある: 対象、時刻、設定上限、同時実行を照合する。
  • 再起動だけが増えた: 終了理由やアプリのログを見る。すべての再起動をメモリ不足と扱わない。
  • 遅いがメモリに余裕がある: CPU、ディスク待ち、外部API待ちなど、別の要因を調べる。
  • ホスト全体が苦しい: コンテナ単独の数字に加え、同居する処理とOSの状態を確認する。

共有するログからは鍵や顧客情報を除く。問題を再現するために稼働中のVPSへ無計画な負荷をかける方法は、この観測票の前提にしていない。

契約を変える判断へ渡す

増額の依頼には「使用率が高い」だけでなく、「この処理が、この条件で、上限に達して失敗した。設定や処理量の調整後も必要量が残る」と記録を添える。変更後は、同じ業務条件で再確認する。前後でデータ量や同時実行が違うなら、その差も残す。

変更で何が維持されるかはプラン変更と作り直しへ。料金を比べる前に、停止・データ・IPの扱いを確認する。保守そのものを担えない場合は自己管理の担当範囲を見直す。