アップデート中に利用できないポッドの最大数を設定する
ロギング・エージェント をデプロイまたはアップグレードするときに、 logs-values.yaml ファイルを構成して、ローリングアップデート中に利用できないポッドの数を指定するオプションのパラメーターを含めることができます。
オプションのパラメータ updateStrategy.maxUnavailable を使用すると、エージェントデーモンセットがローリングアップデートを実行するときに利用できないポッドの最大数または割合を指定できます。 パーセント値を引用符で囲むと、文字列として解釈される。 数字を引用符で囲まないでください。 int32 と解釈されます。 デフォルトでは、パーセンテージ値 "25%"。 log-values.yaml ファイルに updateStrategy.maxUnavailable 設定を追加して、カスタム値を使用するように ロギング・エージェント を設定します:
以下は、最大10%のポッドが利用できないことを規定している。
updateStrategy:
maxUnavailable: "10%" # optional (default is 25%)
以下は、最大5つのポッドが利用できないことを指定している。
updateStrategy:
maxUnavailable: 5 # optional (default is 25%)
logs-values.yaml を変更した後、すべての変更を適用する前に、 エージェントをアップグレード するか、ファイルの変更を続行することができます。
ポッドが古い ロギング・エージェント バージョンから新しいエージェントバージョンに更新されると、 Kubernetes は、古いエージェントバージョンを実行しているポッドの updateStrategy.maxUnavailable 数を超えない範囲で停止します。
古いポッドの数が updateStrategy.maxUnavailable に達すると、新しいバージョンの新しいポッドが実行されるまで、ローリングアップデートは一時停止されます。
helmコマンドは、アップデートが完了するまで特定の時間を待つように設定することができます ( timeout および wait helm upgrade オプションを参照)が、そうでない場合はデーモンセットの定義だけをアップデートし、 Kubernetes
エージェントポッドをアップデートさせます。 Kubernetes コントローラは、すべてのポッドが更新されるまで、エージェントポッドの更新を無期限に再試行し続けます。
新しいポッドに問題がある場合、アップデートは続行されない。 エージェント設定エラーの詳細については、 「ロギング・エージェント?を起動するとエラーが発生します 」を参照してください。 必要であれば設定を確認して修正し、アップデートを再試行してください。