/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/
を参照してください。