TimesTenコンテナ化デプロイメントについて

インメモリー・データベースである場合、TimesTenでは、意図的に大量のメモリーが使用されます。TimesTenを実行するプロセスが、特定のノードで最も多くメモリーを使用している場合があります。オペレーティング・システムがストレスを受けた場合に、TimesTenが、LinuxのOOMキラーによって終了される主要な候補となる可能性があります。そのため、TimesTenコンテナに対してメモリーのリクエストおよび制限を指定することが重要です。CPUのリクエストおよび制限も指定することをお薦めします。

ノート:

リクエストの値とリソースの制限の値が同じであることを確認します。たとえば、daemonlogコンテナに対するmemoryリクエストの値が30Miである場合、このdaemonlogコンテナに対するmemory制限の値も30Miになります。この章の後半で、これについて説明する例を示します。

ttコンテナに対するmemoryリクエストとmemory制限の指定は最も重要です。この値は、TimesTenデータベースを保持するために必要なメモリーと、TimesTenデーモン、サブデーモン、キャッシュおよびレプリケーション・エージェント、クライアント/サーバーなどに必要なメモリーによって異なります。そのデータベースを保持するために必要なメモリーは、データベースのサイズによって異なります。

TimesTenオペレータでは、TimesTenデータベースを的確にサイズ設定する機能が用意されています。この機能については、後で説明します。TimesTenデーモン、サブデーモン、クライアント/サーバーに必要な追加メモリーは、SQLおよびPL/SQLの使用状況によって異なり、そのメモリー要件はワークロードによって異なります。TimesTenオペレータでは、この追加メモリーのデフォルトは2Giになっています。このデフォルトを使用することも、それを変更することもできます。その変更方法については、後で説明します。

TimesTenコンテナの場合のデフォルトを見てみましょう。どの場合でも、デフォルトを変更するオプションがあります。
  • ttコンテナ:
    • memory: この値については、この章で詳しく説明します。
    • CPU: この値は、ttコンテナに必要なCPUの量によって異なります。これには、TimesTenデーモン、サブデーモン、レプリケーション・エージェント、キャッシュ・エージェントおよびクライアント/サーバーによって使用されるCPUが含まれます。クライアント/サーバーではアプリケーションにかわってSQLが実行されるため、この値はワークロードによって異なります。デフォルト値はありません。
  • daemonlogコンテナ:
    • memory: デフォルトは200Miです。
    • cpu: デフォルトは200mです。
  • exporterコンテナ(プロビジョニングされている場合):
    • memory: デフォルトは200Miです。
    • cpu: デフォルトは200mです。
また、TimesTen Scaleoutを使用している場合は、考慮するTimesTenコンテナが他にもあります:
  • 管理インスタンスのttコンテナ:
    • memory: デフォルトは3Giです。
    • cpu: デフォルトは1です。
  • zookeeperコンテナ:
    • memory: デフォルトは1Giです。
    • cpu: デフォルトは500mです。