0

次のように、ボリューム仕様を含むコマンドを使用して、2 つの必要なインスタンスを持つコンテナー グループを作成すると、次のようになります。

> ... -v log_vol:/opt/ibm/logs --env
> LOG_LOCATIONS=/opt/ibm/logs/messages.log,/opt/ibm/logs/debug.log,/opt/ibm/logs/trace.log
> -e TRACE_LEVEL=*~info -e MAX_LOG_FILES=5 -e MAX_LOG_FILE_SIZE=20 ...

この場合、グループの個々の running-container-instance には、/opt/ibm/logs/ログを保存するための同様のディレクトリがあります。

個々のコンテナ インスタンス内のアプリケーションがログを生成すると、ログ データは という共有ボリュームにマウントされるため失われますlog_vol。ログは新しいエントリごとに置き換えられます。

  • 誰かがそれを処理する方法について私に提案できますか?
  • コンテナー インスタンスの作成後にボリューム仕様をアタッチする方法はありますか?
4

1 に答える 1

2

この場合、ボリュームを共有ネットワーク ドライブに似たものと考えて、別々のホストで別々のコンテナーを実行することをお勧めします。プロセスがファイルへの唯一の書き込みであり、書き込みごとにキャッシュ/上書きしていると想定している場合、これが結果になります。

おそらく代わりに、コンテナ/プログラムに次のようなものに書き込んでもらい/opt/ibm/logs/messages.$HOSTNAME.log、独自のログファイルを所有しているという仮定が正しいのでしょうか? または同様に、/opt/ibm/logs/$HOSTNAME/起動時にコンテナーを作成してから、そのmessages/debug/trace.log下に書き込みますか?

于 2016-04-21T18:10:16.093 に答える