Confluent for Kubernetes のアップグレード¶
アップグレードのプロセスに着手する前に、使用する Kubernetes クラスターが Confluent for Kubernetes (CFK)のターゲットバージョンの サポートされる環境 に該当していることを確認します。
スケールアップ、構成の変更、認証情報のローテーションなどのクラスターに対する他の変更とは別にこのアップグレードを実施することを推奨します。
アップグレードに関する注意事項¶
アップグレードプロセスを開始する前に、以下の注記を確認し、必要なアップデートを行ってください。
すべての Confluent Platform のカスタムリソース(CR)で Prometheus JMX エクスポーター値係数ルールを
1
に設定します。spec: metrics: prometheus: rules: - valueFactor: 1
Confluent for Kubernetes のアップグレード¶
CFK をアップグレードするには、次の手順に従います。
リソースのリコンサイルを無効にします。
Confluent Platform コンポーネントのローリング再起動を回避するために、以下のように Confluent Platform コンポーネントをデプロイした名前空間ごとに、リソースのリコンサイルを一時的に無効にします。
コンポーネントのカスタムリソース(CR)の種類と名前を取得します。
kubectl get all --namespace <namespace> | grep platform.confluent.io
出力の 1 列目には、リソース名が
<CR kind>/<CR name>
の形式で入っています。たとえば以下の出力では、
kafka.platform.confluent.io
または短縮形のkafka
が CR の種類で、kafka
が CR 名です。kafka.platform.confluent.io/kafka
前の手順でリストしたコンポーネントごとに、リソースのリコンサイルを一時的に無効にします。
kubectl annotate <component CR kind> <component CR name> \ platform.confluent.io/block-reconcile=true \ --namespace <namespace>
最新の CFK チャートを取得します。
Helm リポジトリから:
helm repo add confluentinc https://packages.confluent.io/helm
helm repo update
helm pull confluentinc/confluent-for-kubernetes --untar
ダウンロードバンドルを使用した Confluent for Kubernetes のデプロイ で指定されているダウンロードバンドルから取得します。
以下のように、Confluent Platform のカスタムリソース定義(CRD)をアップグレードします。
kubectl apply -f <CFK home>/confluent-for-kubernetes/crds/
CFK を 2.2.2 にアップグレードします。
値ファイルを使用して CFK をデプロイ している場合は、
values.yaml
で CFK のimage.tag
を0.304.41
にアップデートします。image: tag: "0.304.41"
そして、次のコマンドを実行して CFK をアップグレードします。
helm upgrade --install confluent-operator \ confluentinc/confluent-for-kubernetes \ --values <path-to-values-file> \ --namespace <namespace>
カスタマイズされた
values.yaml
を使用して CFK をデプロイしていない場合は、次のコマンドを実行して CFK をアップグレードします。helm upgrade --install confluent-operator \ confluentinc/confluent-for-kubernetes \ --namespace <namespace>
上記の最初の手順でリコンサイルを無効にした各 Confluent Platform コンポーネントのリソースのリコンサイルを有効にします。
kubectl annotate <component CR kind> <cluster name> \ platform.confluent.io/block-reconcile- \ --namespace <namespace>