/tmp/readiness準備状況プローブについて

準備状況プローブは、Kubernetesクラスタ内の1つ以上のノードを置き換える場合にも役立ちます。この場合、Kubernetesにノードからワークロードをdrainさせることができます。これにより、Kubernetesは、そのノードで実行されているポッドを削除し、クラスタ内の他のノードで新しいポッドを作成してそれを置き換えます。Kubernetesは、アプリケーションの予算を指定できるポッド停止状態予算をサポートしています。この予算は、特定のデプロイメントで許容される削除済のポッドの数をKubernetesに通知します。たとえば、アプリケーションのレプリカが20個あるデプロイメントを構成するとします。一度に停止しているレプリカを最大5つまで許容するようにKubernetesに通知できます。ワークロードをあるノードから別のノードに移動する際、Kubernetesは一度に5つを超えるレプリカを削除しないように注意し、置き換えの準備ができるのを待ってからさらに削除します。

TimesTenオペレータの場合、/tmp/readiness準備状況プローブを使用して、Kubernetesノードを排出しながら、Kubernetesがアクティブおよびスタンバイの両方のTimesTen Classicデータベースを同時に終了しないようにできます。

TimesTenで1のポッドの中断予算を使用すると、TimesTen全体が停止することなく、1つ以上のノードからワークロードを排出できます。KubernetesがTimesTen ClassicでTimesTenを実行しているポッドを削除する場合、Kubernetesはポッドにアクティブ・データベースまたはスタンバイ・データベースが含まれているかどうかを認識しません。したがって、アクティブ・データベースを含むポッドの削除を選択する場合があります。これによりスタンバイへのフェイルオーバーが発生し、通常時間中に実行されるとアプリケーションが中断されます。これを防ぐ方法はありません。ただし、Kubernetesは、削除されたデータベースが再起動して完全にHealthy状態になるまで、他のデータベースの削除を続行しません。

ポッドの状態およびHealthy状態の詳細は、「アクティブ・スタンバイ・ペアの各ポッドの状態の監視について」を参照してください。

Kubernetesポッドの中断予算の詳細は、https://kubernetes.io/docs/concepts/workloads/pods/disruptions/およびhttps://kubernetes.io/docs/tasks/run-application/configure-pdb/を参照してください。