9.2. OpenShift Serverless Logic Operator のバージョン 1.35.0 から 1.36.0 へのアップグレード
OpenShift Serverless Logic Operator をバージョン 1.35.0 から 1.36.0 にアップグレードできます。アップグレードプロセスには、既存のワークフローとサービスの準備、Operator の更新、アップグレード後のワークフローの復元が含まれます。
ワークフロープロファイルごとに、必要なアップグレード手順が異なります。各プロファイルの指示に注意深く従ってください。
9.2.1. アップグレードの準備 リンクのコピーリンクがクリップボードにコピーされました!
アップグレードプロセスを開始する前に、OpenShift Serverless Logic 環境をバージョン 1.35.0 から 1.36.0 にアップグレードする準備をする必要があります。
準備手順は次のとおりです。
- プロファイルに基づいてワークフローを削除またはスケーリングします。
- 必要なすべてのデータベースとリソースをバックアップします。
- すべてのカスタム設定の記録があることを確認します。
前提条件
-
cluster-admin
権限でクラスターにアクセスできる。 - OpenShift Serverless Logic Operator がクラスターにインストールされている。
- OpenShift Container Platform でアプリケーションやその他のワークロードを作成するための適切なロールと権限を持つ OpenShift Serverless Logic プロジェクトにアクセスできる。
- Operator のアップグレード用の OpenShift 管理コンソール にアクセスできる。
-
OpenShift CLI (
oc
) がインストールされている。
9.2.1.1. dev プロファイルを使用したワークフローの削除 リンクのコピーリンクがクリップボードにコピーされました!
Operator をアップグレードする前に、dev
プロファイルで実行されているワークフローを削除し、アップグレードの完了後に再デプロイする必要があります。
手順
-
SonataFlow
カスタムリソース (CR)、ConfigMap
リソース、その他の関連するカスタム設定など、必要なすべての Kubernetes リソースのバックアップがあることを確認します。 次のコマンドを実行してワークフローを削除します。
oc delete workflow <workflow_name> -n <target_namespace>
$ oc delete workflow <workflow_name> -n <target_namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
9.2.1.2. preview プロファイルを使用したワークフローの削除 リンクのコピーリンクがクリップボードにコピーされました!
Operator をアップグレードする前に、preview
プロファイルで実行されているワークフローを削除する必要があります。アップグレードが完了したら、ワークフローを再デプロイする必要があります。
手順
- 永続性を使用している場合は、ワークフローデータベースをバックアップし、バックアップにデータベースオブジェクトとテーブルデータの両方が含まれていることを確認します。
-
SonataFlow
カスタムリソース (CR)、ConfigMap
リソース、その他の関連するカスタム設定など、必要なすべての Kubernetes リソースのバックアップがあることを確認します。 次のコマンドを実行してワークフローを削除します。
oc delete workflow <workflow_name> -n <target_namespace>
$ oc delete workflow <workflow_name> -n <target_namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
9.2.1.3. gitops プロファイルを使用してワークフローをスケールダウンする リンクのコピーリンクがクリップボードにコピーされました!
Operator をアップグレードする前に、gitops
プロファイルで実行されているワークフローをスケールダウンし、アップグレードの完了後に再度スケールアップする必要があります。
手順
次の例に示すように、アップグレードする前に、
my-workflow.yaml
カスタムリソース (CR) を変更し、各ワークフローを0
にスケールダウンします。spec: podTemplate: replicas: 0 # ...
spec: podTemplate: replicas: 0 # ...
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを実行して、更新された
my-workflow.yaml
CR を適用します。oc apply -f my-workflow.yaml -n <target_namespace>
$ oc apply -f my-workflow.yaml -n <target_namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow オプション: 次のコマンドを実行して、ワークフローを
0
にスケーリングします。oc patch workflow <workflow_name> -n <target_namespace> --type=merge -p '{"spec": {"podTemplate": {"replicas": 0}}}'
$ oc patch workflow <workflow_name> -n <target_namespace> --type=merge -p '{"spec": {"podTemplate": {"replicas": 0}}}'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
9.2.1.4. Data Index データベースのバックアップ リンクのコピーリンクがクリップボードにコピーされました!
データの損失を防ぐために、アップグレードする前に Data Index データベースをバックアップする必要があります。
手順
次の点を確認して、Data Index データベースの完全バックアップを実行します。
- バックアップには、テーブルデータだけでなく、すべてのデータベースオブジェクトが含まれます。
- バックアップはセキュアなロケーションに保存されます。
9.2.1.5. Jobs Service データベースのバックアップ リンクのコピーリンクがクリップボードにコピーされました!
ジョブスケジュールデータを維持するために、アップグレードする前に Jobs Service データベースをバックアップする必要があります。
手順
次の点を確認して、Jobs Service データベースの完全バックアップを実行します。
- バックアップには、テーブルデータだけでなく、すべてのデータベースオブジェクトが含まれます。
- バックアップはセキュアなロケーションに保存されます。
9.2.2. OpenShift Serverless Logic Operator の 1.36.0 へのアップグレード リンクのコピーリンクがクリップボードにコピーされました!
以下の手順を実行して、OpenShift Serverless Logic Operator をバージョン 1.35.0 から 1.36.0 にアップグレードできます。
前提条件
-
cluster-admin
権限でクラスターにアクセスできる。 - OpenShift Serverless Logic Operator がクラスターにインストールされている。
- OpenShift Container Platform でアプリケーションやその他のワークロードを作成するための適切なロールと権限を持つ OpenShift Serverless Logic プロジェクトにアクセスできる。
- Operator のアップグレード用の OpenShift 管理コンソールにアクセスできる。
-
OpenShift CLI (
oc
) がインストールされている。 - OpenShift Serverless Logic Operator バージョン 1.35.0 がインストールされています。
手順
次のコマンドを実行して、1.35.0 OpenShift Serverless Logic Operator の
ClusterServiceVersion
(CSV) にパッチを適用し、デプロイメントラベルを更新します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを実行して、現在の Operator デプロイメントを削除します。
oc delete deployment logic-operator-rhel8-controller-manager -n openshift-serverless-logic
$ oc delete deployment logic-operator-rhel8-controller-manager -n openshift-serverless-logic
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
Web コンソールで、Operators
OperatorHub Installed Operators ページに移動します。 - インストールされた Operator のリストで、OpenShift Serverless Logic Operator という名前の Operator を見つけてクリックします。
- OpenShift Serverless Logic Operator のバージョン 1.36.0 へのアップグレードを開始します。
検証
アップグレードを適用した後、次のコマンドを実行して、Operator が実行中であり、
Succeeded
フェーズにあることを確認します。oc get clusterserviceversion logic-operator-rhel8.v1.36.0
$ oc get clusterserviceversion logic-operator-rhel8.v1.36.0
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
NAME DISPLAY VERSION REPLACES PHASE logic-operator-rhel8.v1.36.0 OpenShift Serverless Logic Operator 1.36.0 logic-operator-rhel8.v1.35.0 Succeeded
NAME DISPLAY VERSION REPLACES PHASE logic-operator-rhel8.v1.36.0 OpenShift Serverless Logic Operator 1.36.0 logic-operator-rhel8.v1.35.0 Succeeded
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
9.2.3. アップグレードの最終処理 リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Serverless Logic Operator をバージョン 1.36.0 にアップグレードした後、ワークフローを復元またはスケーリングし、古いサービスをクリーンアップして、アップグレードプロセスを完了する必要があります。これにより、システムが新しいバージョンで正常に実行され、すべての依存コンポーネントが正しく設定されるようになります。
ワークフローとサービスのプロファイルに基づいて、以下の適切な手順に従ってください。
前提条件
-
cluster-admin
権限でクラスターにアクセスできる。 - OpenShift Serverless Logic Operator がクラスターにインストールされている。
- OpenShift Container Platform でアプリケーションやその他のワークロードを作成するための適切なロールと権限を持つ OpenShift Serverless Logic プロジェクトにアクセスできる。
- Operator のアップグレード用の OpenShift 管理コンソール にアクセスできる。
-
OpenShift CLI (
oc
) がインストールされている。
9.2.3.1. Data Index のアップグレードの最終処理 リンクのコピーリンクがクリップボードにコピーされました!
Operator のアップグレード後、デプロイメントが Knative Eventing Kafka Broker を使用するように設定されている場合は、OpenShift Serverless Logic 1.35.0 バージョンで作成された古い data-index-process-definition
トリガーを削除する必要があります。必要に応じて、古い ReplicaSet
リソースも削除できます。
手順
次のコマンドを実行して、すべてのトリガーをリスト表示します。
oc get triggers -n <target_namespace>
$ oc get triggers -n <target_namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 生成されたサンプル出力に基づいて、次のコマンドを実行して古い
data-index-process-definition
トリガーを削除します。oc delete trigger data-index-process-definition-473e1ddbb3ca1d62768187eb80de99bca -n <target_namespace>
$ oc delete trigger data-index-process-definition-473e1ddbb3ca1d62768187eb80de99bca -n <target_namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 削除後、OpenShift Serverless Logic 1.36.0 と互換性のある新しいトリガーが自動的に作成されます。
オプション: 次のコマンドを実行して、古い
ReplicaSet
リソースを特定します。oc get replicasets -o custom-columns=Name:metadata.name,Image:spec.template.spec.containers[*].image -n <target_namespace>
$ oc get replicasets -o custom-columns=Name:metadata.name,Image:spec.template.spec.containers[*].image -n <target_namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
Name Image sonataflow-platform-data-index-service-1111111111 registry.redhat.io/openshift-serverless-1/logic-data-index-postgresql-rhel8:1.35.0 sonataflow-platform-data-index-service-2222222222 registry.redhat.io/openshift-serverless-1/logic-data-index-postgresql-rhel8:1.36.0
Name Image sonataflow-platform-data-index-service-1111111111 registry.redhat.io/openshift-serverless-1/logic-data-index-postgresql-rhel8:1.35.0 sonataflow-platform-data-index-service-2222222222 registry.redhat.io/openshift-serverless-1/logic-data-index-postgresql-rhel8:1.36.0
Copy to Clipboard Copied! Toggle word wrap Toggle overflow オプション: 次のコマンドを実行して、古い
ReplicaSet
リソースを削除します。oc delete replicaset <old_replicaset_name> -n <target_namespace>
$ oc delete replicaset <old_replicaset_name> -n <target_namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例に基づくコマンド例
oc delete replicaset sonataflow-platform-data-index-service-1111111111 -n <target_namespace>
$ oc delete replicaset sonataflow-platform-data-index-service-1111111111 -n <target_namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
9.2.3.2. Job Service のアップグレードの最終処理 リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Serverless Operator をバージョン 1.36.0 にアップグレードした後、必要に応じて古い ReplicaSet
リソースを削除できます。
手順
次のコマンドを実行して、古い
ReplicaSet
リソースを特定します。oc get replicasets -o custom-columns=Name:metadata.name,Image:spec.template.spec.containers[*].image -n <target_namespace>
$ oc get replicasets -o custom-columns=Name:metadata.name,Image:spec.template.spec.containers[*].image -n <target_namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
Name Image sonataflow-platform-jobs-service-1111111111 registry.redhat.io/openshift-serverless-1/logic-jobs-service-postgresql-rhel8:1.35.0 sonataflow-platform-jobs-service-2222222222 registry.redhat.io/openshift-serverless-1/logic-jobs-service-postgresql-rhel8:1.36.0
Name Image sonataflow-platform-jobs-service-1111111111 registry.redhat.io/openshift-serverless-1/logic-jobs-service-postgresql-rhel8:1.35.0 sonataflow-platform-jobs-service-2222222222 registry.redhat.io/openshift-serverless-1/logic-jobs-service-postgresql-rhel8:1.36.0
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを実行して、古い
ReplicaSet
リソースを削除します。oc delete replicaset <old_replicaset_name> -n <target_namespace>
$ oc delete replicaset <old_replicaset_name> -n <target_namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例に基づくコマンド例
oc delete replicaset sonataflow-platform-jobs-service-1111111111 -n <target_namespace>
$ oc delete replicaset sonataflow-platform-jobs-service-1111111111 -n <target_namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
9.2.3.3. dev プロファイルを使用してワークフローを再デプロイする リンクのコピーリンクがクリップボードにコピーされました!
アップグレード後、dev
プロファイルと関連する Kubernetes リソースを使用するワークフローを再デプロイする必要があります。
手順
-
ワークフローを再デプロイする前に、
application.properties
フィールドがあるConfigMap
を含む、必要なすべての Kubernetes リソースが復元されていることを確認します。 次のコマンドを実行してワークフローを再デプロイします。
oc apply -f <workflow_name> -n <target_namespace>
$ oc apply -f <workflow_name> -n <target_namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
9.2.3.4. preview プロファイルを使用したワークフローの復元 リンクのコピーリンクがクリップボードにコピーされました!
アップグレード後、preview
プロファイルと関連する Kubernetes リソースを使用するワークフローを再デプロイする必要があります。
手順
-
ワークフローを再デプロイする前に、
application.properties
フィールドがあるConfigMap
を含む、必要なすべての Kubernetes リソースが復元されていることを確認します。 次のコマンドを実行してワークフローを再デプロイします。
oc apply -f <workflow_name> -n <target_namespace>
$ oc apply -f <workflow_name> -n <target_namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
9.2.3.5. gitops プロファイルを使用したワークフローのスケールアップ リンクのコピーリンクがクリップボードにコピーされました!
操作を続行するには、以前に gitops
プロファイルを使用してスケールダウンしたワークフローをスケールアップする必要があります。
手順
my-workflow.yaml
カスタムリソース (CR) を変更し、次の例に示すように各ワークフローを1
にスケールアップします。spec: podTemplate: replicas: 1 # ...
spec: podTemplate: replicas: 1 # ...
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを実行して、更新された CR を適用します。
oc apply -f my-workflow.yaml -n <target_namespace>
$ oc apply -f my-workflow.yaml -n <target_namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow オプション: 次のコマンドを実行して、ワークフローを
1
に戻します。oc patch workflow <workflow_name> -n <target_namespace> --type=merge -p '{"spec": {"podTemplate": {"replicas": 1}}}'
$ oc patch workflow <workflow_name> -n <target_namespace> --type=merge -p '{"spec": {"podTemplate": {"replicas": 1}}}'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
9.2.4. 1.36.0 アップグレードの検証 リンクのコピーリンクがクリップボードにコピーされました!
ワークフローとサービスを復元した後、アップグレードが成功し、すべてのコンポーネントが期待どおりに機能していることを確認します。
手順
次のコマンドを入力して、すべてのワークフローとサービスが実行されているかどうかを確認します。
oc get pods -n <target_namespace>
$ oc get pods -n <target_namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ワークフロー、Data Index、Jobs Service に関連するすべての Pod が
Running
またはCompleted
状態であることを確認します。次のコマンドを入力して、OpenShift Serverless Logic Operator が正しく実行されていることを確認します。
oc get clusterserviceversion logic-operator-rhel8.v1.36.0 -n openshift-serverless-logic
$ oc get clusterserviceversion logic-operator-rhel8.v1.36.0 -n openshift-serverless-logic
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
NAME DISPLAY VERSION REPLACES PHASE logic-operator-rhel8.v1.36.0 OpenShift Serverless Logic Operator 1.36.0 logic-operator-rhel8.v1.35.0 Succeeded
NAME DISPLAY VERSION REPLACES PHASE logic-operator-rhel8.v1.36.0 OpenShift Serverless Logic Operator 1.36.0 logic-operator-rhel8.v1.35.0 Succeeded
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを入力して、Operator ログにエラーがないか確認します。
oc logs -l control-plane=sonataflow-operator -n openshift-serverless-logic
$ oc logs -l control-plane=sonataflow-operator -n openshift-serverless-logic
Copy to Clipboard Copied! Toggle word wrap Toggle overflow