第15章 AMQ Streams リソースのアップグレード
本リリースの AMQ Streams では、API バージョン kafka.strimzi.io/v1alpha1 を使用するリソースを更新して kafka.strimzi.io/v1beta1 を使用するようにする必要があります。
kafka.strimzi.io/v1alpha1 API バージョンは非推奨になりました。
ここでは、リソースのアップグレード手順を説明します。
リソースのアップグレードは、Cluster Operator をアップグレードしてから実施する 必要 があります。これにより、Cluster Operator がリソースを認識できるようになります。
リソースのアップグレードが実施されない場合
アップグレードが実施されない場合、apiVersion を更新するまでリソースを更新できないことを示す警告が、調整に関するログに記録されます。
更新をトリガーするには、カスタムリソースにアノテーション追加などの表面的な変更を加えます。
アノテーションの例:
metadata:
# ...
annotations:
upgrade: "Upgraded to kafka.strimzi.io/v1beta1"
15.1. Kafka リソースのアップグレード リンクのコピーリンクがクリップボードにコピーされました!
前提条件
-
v1beta1API バージョンをサポートする Cluster Operator が稼働している必要があります。
手順
デプロイメントの Kafka リソースごとに以下の手順を実行します。
エディターで
Kafkaリソースを更新します。oc edit kafka my-cluster以下の行を見つけます。
apiVersion: kafka.strimzi.io/v1alpha1この行を以下の行に変更します。
apiVersion:kafka.strimzi.io/v1beta1Kafkaリソースに以下があるか確認します。Kafka.spec.topicOperatorある場合は以下に変更します。
Kafka.spec.entityOperator.topicOperatorたとえば、以下がある場合を考えてみましょう。
spec: # ... topicOperator: {}この行を以下の行に変更します。
spec: # ... entityOperator: topicOperator: {}以下があるか確認します。
Kafka.spec.entityOperator.affinityKafka.spec.entityOperator.tolerationsあれば以下に変更します。
Kafka.spec.entityOperator.template.pod.affinityKafka.spec.entityOperator.template.pod.tolerationsたとえば、以下の場合を考えてみましょう。
spec: # ... entityOperator: affinity {} tolerations {}これを以下に変更します。
spec: # ... entityOperator: template: pod: affinity {} tolerations {}以下があるか確認します。
Kafka.spec.kafka.affinityKafka.spec.kafka.tolerationsあれば以下に変更します。
Kafka.spec.kafka.template.pod.affinityKafka.spec.kafka.template.pod.tolerationsたとえば、以下の場合を考えてみましょう。
spec: # ... kafka: affinity {} tolerations {}これを以下に変更します。
spec: # ... kafka: template: pod: affinity {} tolerations {}以下があるか確認します。
Kafka.spec.zookeeper.affinityKafka.spec.zookeeper.tolerationsあれば以下に変更します。
Kafka.spec.zookeeper.template.pod.affinityKafka.spec.zookeeper.template.pod.tolerationsたとえば、以下の場合を考えてみましょう。
spec: # ... zookeeper: affinity {} tolerations {}これを以下に変更します。
spec: # ... zookeeper: template: pod: affinity {} tolerations {}- ファイルを保存し、エディターを終了して更新したリソースが調整されるのを待ちます。
15.2. Kafka Connect リソースのアップグレード リンクのコピーリンクがクリップボードにコピーされました!
前提条件
-
v1beta1API バージョンをサポートする Cluster Operator が稼働している必要があります。
手順
デプロイメントの KafkaConnect リソースごとに以下の手順を実行します。
エディターで
KafkaConnectリソースを更新します。oc edit kafkaconnect my-connect以下の行を見つけます。
apiVersion: kafka.strimzi.io/v1alpha1この行を以下の行に変更します。
apiVersion:kafka.strimzi.io/v1beta1以下があるか確認します。
KafkaConnect.spec.affinityKafkaConnect.spec.tolerationsあれば以下に変更します。
KafkaConnect.spec.template.pod.affinityKafkaConnect.spec.template.pod.tolerationsたとえば、以下の場合を考えてみましょう。
spec: # ... affinity {} tolerations {}これを以下に変更します。
spec: # ... template: pod: affinity {} tolerations {}- ファイルを保存し、エディターを終了して更新したリソースが調整されるのを待ちます。
15.3. Kafka Connect S2I リソースのアップグレード リンクのコピーリンクがクリップボードにコピーされました!
前提条件
-
v1beta1API バージョンをサポートする Cluster Operator が稼働している必要があります。
手順
デプロイメントの KafkaConnectS2I リソースごとに以下の手順を実行します。
エディターで
KafkaConnectS2Iリソースを更新します。oc edit kafkaconnects2i my-connect以下の行を見つけます。
apiVersion: kafka.strimzi.io/v1alpha1この行を以下の行に変更します。
apiVersion:kafka.strimzi.io/v1beta1以下があるか確認します。
KafkaConnectS2I.spec.affinityKafkaConnectS2I.spec.tolerationsあれば以下に変更します。
KafkaConnectS2I.spec.template.pod.affinityKafkaConnectS2I.spec.template.pod.tolerationsたとえば、以下の場合を考えてみましょう。
spec: # ... affinity {} tolerations {}これを以下に変更します。
spec: # ... template: pod: affinity {} tolerations {}- ファイルを保存し、エディターを終了して更新したリソースが調整されるのを待ちます。
15.4. Kafka MirrorMaker リソースのアップグレード リンクのコピーリンクがクリップボードにコピーされました!
前提条件
-
v1beta1API バージョンをサポートする Cluster Operator が稼働している必要があります。
手順
デプロイメントの KafkaMirrorMaker リソースごとに以下の手順を実行します。
エディターで
KafkaMirrorMakerリソースを更新します。oc edit kafkamirrormaker my-connect以下の行を見つけます。
apiVersion: kafka.strimzi.io/v1alpha1この行を以下の行に変更します。
apiVersion:kafka.strimzi.io/v1beta1以下があるか確認します。
KafkaConnectMirrorMaker.spec.affinityKafkaConnectMirrorMaker.spec.tolerationsあれば以下に変更します。
KafkaConnectMirrorMaker.spec.template.pod.affinityKafkaConnectMirrorMaker.spec.template.pod.tolerationsたとえば、以下の場合を考えてみましょう。
spec: # ... affinity {} tolerations {}これを以下に変更します。
spec: # ... template: pod: affinity {} tolerations {}- ファイルを保存し、エディターを終了して更新したリソースが調整されるのを待ちます。
15.5. Kafka Topic リソースのアップグレード リンクのコピーリンクがクリップボードにコピーされました!
前提条件
-
v1beta1API バージョンをサポートする Topic Operator が稼働している必要があります。
手順
デプロイメントの KafkaTopic リソースごとに以下の手順を実行します。
エディターで
KafkaTopicリソースを更新します。oc edit kafkatopic my-topic以下の行を見つけます。
apiVersion: kafka.strimzi.io/v1alpha1この行を以下の行に変更します。
apiVersion:kafka.strimzi.io/v1beta1- ファイルを保存し、エディターを終了して更新したリソースが調整されるのを待ちます。
15.6. Kafka User リソースのアップグレード リンクのコピーリンクがクリップボードにコピーされました!
前提条件
-
v1beta1API バージョンをサポートする User Operator が稼働している必要があります。
手順
デプロイメントの KafkaUser リソースごとに以下の手順を実行します。
エディターで
KafkaUserリソースを更新します。oc edit kafkauser my-user以下の行を見つけます。
apiVersion: kafka.strimzi.io/v1alpha1この行を以下の行に変更します。
apiVersion:kafka.strimzi.io/v1beta1- ファイルを保存し、エディターを終了して更新したリソースが調整されるのを待ちます。