検索

9.2. 最小限のダウンタイムでの OpenShift のアップグレード

download PDF

OpenShift をアップグレードする場合は、OpenShift アップグレードのドキュメントを参照して、アップグレードパスとノードを正しくアップグレードする手順を確認してください。OpenShift をアップグレードする前に、お使いの AMQ Streams バージョンでサポートされるバージョン を確認してください。

アップグレードを実行する際に、Kafka クラスターを利用できるようにしておくことを推奨します。

以下のストラテジーのいずれかを使用できます。

  1. Pod の Disruption Budget (停止状態の予算) を設定します。
  2. 以下の方法の 1 つで Pod をローリングします。

    1. AMQ Streams Drain Cleaner の使用
    2. アノテーションを Pod に適用して手動で

Pod の Disruption Budget(停止状態の予算)を設定して Pod をロールオーバーする方法のいずれかを使用する必要があります。

Kafka を稼働し続けるには、高可用性のためにトピックも複製する必要があります。これには、少なくとも 3 つのレプリケーション係数と、レプリケーション係数よりも 1 つ少ない In-Sync レプリカの最小数を指定するトピック設定が必要です。

高可用性のためにレプリケートされた Kafka トピック

apiVersion: kafka.strimzi.io/v1beta2
kind: KafkaTopic
metadata:
  name: my-topic
  labels:
    strimzi.io/cluster: my-cluster
spec:
  partitions: 1
  replicas: 3
  config:
    # ...
    min.insync.replicas: 2
    # ...

高可用性環境では、Cluster Operator はアップグレードプロセス時にトピックの In-Sync レプリカの最小数を維持し、ダウンタイムが発生しないようにします。

9.2.1. AMQ Streams Drain Cleaner を使用した Pod のローリング

AMQ Streams Drain Cleaner ツールを使用して、アップグレード時にノードをエビクトできます。AMQ Streams Drain Cleaner は、ローリングアップデート Pod アノテーションを Pod に付けます。これにより、Cluster Operator に、エビクトされた Pod のローリングアップデートを実行するように指示します。

Pod の Disruption Budget(停止状態の予算)により、指定された数の Pod のみが、特定の時点で利用できなくなります。Kafka ブローカー Pod の計画的なメンテナンス中に、Pod の Disruption Budget (停止状態の予算) により、Kafka が高可用性環境で引き続き実行されます。

Kafka コンポーネントの template のカスタマイズを使用して、Pod の Disruption Budget (停止状態の予算) を指定します。デフォルトでは、Pod の Disruption Budget (停止状態の予算) は、単一の Pod のみを指定時に利用できないようにします。

これを実行するには、maxUnavailable0 (ゼロ) に設定します。Pod の Disruption Budget (停止状態の予算) の最大値をゼロに減らすと、自発的な中断が回避されるため、Pod を手動でエビクトする必要があります。

Pod の Disruption Budget (停止状態の予算) の指定

apiVersion: kafka.strimzi.io/v1beta2
kind: Kafka
metadata:
  name: my-cluster
  namespace: myproject
spec:
  kafka:
    # ...
    template:
      podDisruptionBudget:
        maxUnavailable: 0
# ...

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.