21 TimesTen Kubernetesオペレータ・メトリック

いくつかのTimesTen Kubernetesオペレータ(TimesTenオペレータ)メトリックがあり、Prometheusまたはその他のスクレイパーによって公開できます。これらのメトリックには、TimesTenオペレータの機能、およびTimesTenオペレータが管理するTimesTenClassicおよびTimesTenScaleoutオブジェクトの全体的なステータスに関する情報が含まれています。

次の表に、TimesTenオペレータ・メトリックの詳細を示します。

表21-1 TimesTenオペレータ・メトリック

メトリック タイプ 説明

timesten_agent_tt_mem_usage

ゲージ

ポッド内のTimesTenエージェントおよびTimesTenによって使用されるメモリーの量。Linux cgroupによってmemory.usage_in_bytes値でレポートされた各ポッドのメモリー使用量をレポートします。値をバイト単位でレポートします。

timesten_agent_rss

ゲージ

TimesTenを実行している各ポッド内のTimesTenエージェントの常駐設定サイズ(rss)。/proc/self/statusファイルのVmRSSフィールドでレポートされた値をレポートします。この値は、TimesTenを実行している各ポッドの各ttコンテナ内のTimesTenエージェント・プロセスのLinuxカーネルによって管理されます。値をKB単位でレポートします。

timesten_classic_state

ゲージ

各TimesTenClassicオブジェクトの状態。特定の状態は、stateラベルでレポートされます。

timesten_classic_state_allreplicasready

ゲージ

AllReplicasReady状態のレプリケートされないTimesTenClassicオブジェクトの数。

timesten_classic_state_noreplicasready

ゲージ

NoReplicasReady状態のレプリケートされないTimesTenClassicオブジェクトの数。

timesten_classic_state_normal

ゲージ

Normal状態のレプリケートされたTimesTenClassicオブジェクトの数。

timesten_classic_state_not_allreplicasready

ゲージ

AllReplicasReadyまたはInitializing以外の状態のレプリケートされないTimesTenClassicオブジェクトの数。

timesten_classic_state_not_normal

ゲージ

NormalまたはInitializing以外の状態のレプリケートされたTimesTenClassicオブジェクトの数。

timesten_classic_state_somereplicasready

ゲージ

SomeReplicasReady状態のレプリケートされないTimesTenClassicオブジェクトの数。

timesten_scaleout_state

ゲージ

各TimesTenScaleoutオブジェクトの状態。特定の状態は、stateラベルでレポートされます。

timesten_scaleout_state_normal

ゲージ

Normal状態のTimesTenScaleoutオブジェクトの数。

timesten_scaleout_state_not_normal

ゲージ

NormalまたはInitializing以外の状態のTimesTenScaleoutオブジェクトの数。

timesten_operator_mem_usage

ゲージ

TimesTen Kubernetesオペレータによって使用されるメモリーの量。Linux cgroupsによってmemory.usage_in_bytes値でレポートされたTimesTenオペレータ・ポッドのメモリー使用量をレポートします。値をバイト単位でレポートします。

timesten_operator_rss

ゲージ

TimesTen Kubernetesオペレータの常駐設定サイズ(rss)。/proc/self/statusファイルのVmRSSフィールドでレポートされた値をレポートします。この値は、TimesTen Kubernetesオペレータ・プロセスのLinuxカーネルによって管理されます。値をKB単位でレポートします。

各メトリックには、次のラベルがあります。
  • namespace: メトリックが示すTimesTenオブジェクトのネームスペース。

  • name:
    • timesten_operator_mem_usageおよびtimesten_operator_rssメトリックの場合、名前ラベルはTimesTenオペレータ・ポッドの名前です。

    • timesten_agent_tt_mem_usageおよびtimesten_agent_rssメトリックの場合、名前ラベルはTimesTenポッドの名前です。

    • 他のすべてのメトリックの場合、名前ラベルはメトリックが示すTimesTenオブジェクトの名前です。

また、二次的な重要度の他のいくつかのラベルがあります。
  • container: メトリックを生成したコンテナの名前。たとえば、timesten-operatorです。

  • endpoint: メトリックの取得元のエンドポイントの名前。たとえば、metricsです。

  • instance: メトリックを生成したTimesTenオペレータ・ポッドのIPアドレスおよびポート。たとえば、10.244.1.111:8080です

  • job: ジョブの名前。たとえば、timesten-operatorです。

  • pod: メトリックを生成したTimesTenオペレータ・ポッドの名前。たとえば、timesten-operator-5f4f4c69f6-z9h2kです。

  • service。サービスの名前。たとえば、timesten-operatorです。

次に、サンプルのtimesten_classic_state_normalメトリックの例を示します。
timesten_classic_state_normal{container="timesten-operator", 
endpoint="metrics", instance="10.244.1.111:8080", job="timesten-operator", 
name="sample", namespace="mynamespace", pod="timesten-operator-5f4f4c69f6-z9h2k", 
service="timesten-operator"}

TimesTenClassicオブジェクト(この場合はsample)が正常かどうかに応じて、メトリックの値は1または0になります。

次に、サンプルのtimesten_classic_stateメトリックの例を示します。
timesten_classic_state{container="timesten-operator", 
endpoint="metrics", instance="10.244.1.111:8080", job="timesten-operator", 
name="sample", namespace="mynamespace", pod="timesten-operator-5f4f4c69f6-z9h2k", 
service="timesten-operator", state="Normal"}

TimesTenClassicオブジェクト(この場合はsample)がNormal状態であるかどうかに応じて、メトリックの値は1または0になります。

TimesTenオペレータがメトリックを公開する方法の詳細は、「TimesTen Kubernetesオペレータからのメトリックの公開」を参照してください。

ノート:

TimesTenオペレータは、他の多くの追加メトリックを自動的に公開します。これらの追加メトリックがリリースごとに存在するかどうかは保証できません。また、これらのメトリックは、特にTimesTenオペレータに関連するものでも有用でもない場合があります。