第9章 アップグレードの管理


9.1. OpenShift Serverless Logic Operator をバージョン 1.34.0 から 1.35.0 にアップグレードする

このセクションでは、OpenShift Serverless Logic Operator をバージョン 1.34.0 から 1.35.0 にアップグレードする手順を段階的に説明します。アップグレードプロセスには、既存のワークフローとサービスの準備、Operator の更新、アップグレード後のワークフローの復元が含まれます。

注記

ワークフロープロファイルごとに、必要なアップグレード手順が異なります。各プロファイルの指示に注意深く従ってください。

9.1.1. アップグレードの準備

アップグレードプロセスを開始する前に、OpenShift Serverless Logic 環境を準備する必要があります。このセクションでは、バージョン 1.34.0 から 1.35.0 へのアップグレードに必要な手順を説明します。

準備プロセスには以下が含まれます。

  • プロファイルに基づいてワークフローを削除またはスケーリングします。
  • 必要なすべてのデータベースとリソースをバックアップします。
  • すべてのカスタム設定の記録があることを確認します。
  • 永続性を使用したワークフローに必要なデータベース移行スクリプトを実行します。

前提条件

  • cluster-admin 権限でクラスターにアクセスできる。
  • OpenShift Serverless Logic Operator がクラスターにインストールされている。
  • OpenShift Container Platform でアプリケーションやその他のワークロードを作成するための適切なロールと権限を持つ OpenShift Serverless Logic プロジェクトにアクセスできる。
  • Operator のアップグレード用の OpenShift 管理コンソール にアクセスできる。
  • OpenShift CLI (oc) がインストールされている。

9.1.1.1. dev プロファイルを使用してワークフローを削除する

Operator をアップグレードする前に、dev プロファイルで実行されているワークフローを削除し、アップグレードの完了後に再デプロイする必要があります。

手順

  1. SonataFlow カスタムリソース定義 (CRD)、ConfigMaps、その他の関連するカスタム設定など、必要なすべての Kubernetes リソースのバックアップがあることを確認します。
  2. 次のコマンドを実行してワークフローを削除します。

    $ oc delete -f <my-workflow.yaml> -n <target_namespace>
    Copy to Clipboard Toggle word wrap

9.1.1.2. preview プロファイルを使用したワークフローの削除と移行

Operator をアップグレードする前に、Preview プロファイルで実行されているワークフローを削除し、保持されているすべてのデータを移行する必要があります。アップグレードが完了したら、ワークフローを再デプロイする必要があります。

手順

  1. 永続性を使用している場合は、ワークフローデータベースをバックアップし、バックアップにデータベースオブジェクトとテーブルデータの両方が含まれていることを確認します。
  2. SonataFlow CRD、ConfigMaps、その他の関連するカスタム設定など、必要なすべての Kubernetes リソースのバックアップがあることを確認します。
  3. 次のコマンドを実行してワークフローを削除します。

    $ oc delete -f <my-workflow.yaml> -n <target_namespace>
    Copy to Clipboard Toggle word wrap
  4. 永続性を使用している場合は、次のデータベース移行スクリプトを実行する必要があります。

    ALTER TABLE flyway_schema_history
        RENAME CONSTRAINT flyway_schema_history_pk TO kie_flyway_history_runtime_persistence_pk;
    
    ALTER INDEX flyway_schema_history_s_idx
      RENAME TO kie_flyway_history_runtime_persistence_s_idx;
    
    ALTER TABLE flyway_schema_history RENAME TO kie_flyway_history_runtime_persistence;
    Copy to Clipboard Toggle word wrap

9.1.1.3. gitops プロファイルを使用してワークフローをスケールダウンする

Operator をアップグレードする前に、gitops プロファイルで実行されているワークフローをスケールダウンし、アップグレードの完了後に再度スケールアップする必要があります。

手順

  1. 次の例に示すように、アップグレードする前に、my-workflow.yaml CRD を変更し、各ワークフローを zero にスケールダウンします。

    spec:
      podTemplate:
        replicas: 0
    Copy to Clipboard Toggle word wrap
  2. 次のコマンドを実行して、更新された CRD を適用します。

    $ oc apply -f <my-workflow.yaml> -n <target_namespace>
    Copy to Clipboard Toggle word wrap
  3. (オプション) 次のコマンドを実行して、ワークフローを 0 にスケーリングします。

    $ oc patch sonataflow <my-workflow> -n <target_namespace> --type=merge -p '{"spec": {"podTemplate": {"replicas": 0}}}'
    Copy to Clipboard Toggle word wrap

9.1.1.4. Data Index データベースのバックアップ

データの損失を防ぐために、アップグレードする前に Data Index データベースをバックアップする必要があります。

手順

  • 次の点を確認して、Data Index データベースの完全バックアップを実行します。

    • バックアップには、テーブルデータだけでなく、すべてのデータベースオブジェクトが含まれます。
    • バックアップはセキュアなロケーションに保存されます。

9.1.1.5. Jobs Service データベースのバックアップ

ジョブスケジュールデータを維持するために、アップグレードする前に Jobs Service データベースをバックアップする必要があります。

手順

  • 次の点を確認して、Jobs Service データベースの完全バックアップを実行します。

    • バックアップには、テーブルデータだけでなく、すべてのデータベースオブジェクトが含まれます。
    • バックアップはセキュアなロケーションに保存されます。

9.1.2. OpenShift Serverless Logic Operator のアップグレード

OpenShift Serverless Logic Operator (OSL) バージョン 1.34.0 から 1.35.0 に移行するには、Red Hat OpenShift Serverless Web コンソールを使用して OSL をアップグレードする必要があります。このアップグレードにより、新しい機能との互換性が確保され、ワークフローが適切に機能します。

前提条件

  • cluster-admin 権限でクラスターにアクセスできる。
  • OpenShift Serverless Logic Operator がクラスターにインストールされている。
  • OpenShift Container Platform でアプリケーションやその他のワークロードを作成するための適切なロールと権限を持つ OpenShift Serverless Logic プロジェクトにアクセスできる。
  • Operator のアップグレード用の OpenShift 管理コンソール にアクセスできる。
  • OpenShift CLI (oc) がインストールされている。

手順

  1. Web コンソールで、Operators OperatorHub Installed Operator ページに移動します。
  2. Installed Namespace から openshift-serverless-logic namespace を選択します。
  3. インストールされている Operator のリストで、OpenShift Serverless Logic Operator を見つけてクリックします。
  4. Operator の詳細ページで、Subscription タブをクリックします。Edit Subscription をクリックします。
  5. Upgrade status で、Upgrade available リンクをクリックします。
  6. Preview install planApprove をクリックし、更新を開始します。
  7. アップグレードプロセスを監視するには、次のコマンドを実行します。

    $ oc get subscription logic-operator-rhel8 -n openshift-serverless-logic -o jsonpath='{.status.installedCSV}'
    Copy to Clipboard Toggle word wrap

    予想される出力

    $ logic-operator-rhel8.v1.35.0
    Copy to Clipboard Toggle word wrap

検証

  1. 新しい Operator バージョンがインストールされていることを確認するには、次のコマンドを実行します。

    $ oc get clusterserviceversion logic-operator-rhel8.v1.35.0 -n openshift-serverless-logic
    Copy to Clipboard Toggle word wrap

    予想される出力

    NAME                           DISPLAY                               VERSION   REPLACES                       PHASE
    logic-operator-rhel8.v1.35.0   OpenShift Serverless Logic Operator   1.35.0    logic-operator-rhel8.v1.34.0   Succeeded
    Copy to Clipboard Toggle word wrap

9.1.3. アップグレードの最終処理

OpenShift Serverless Logic Operator をバージョン 1.35.0 にアップグレードした後、ワークフローを復元またはスケーリングし、古いサービスをクリーンアップして、アップグレードプロセスを完了する必要があります。これにより、システムが新しいバージョンで正常に実行され、すべての依存コンポーネントが正しく設定されるようになります。

ワークフローとサービスのプロファイルに基づいて、以下の適切な手順に従ってください。

前提条件

  • cluster-admin 権限でクラスターにアクセスできる。
  • OpenShift Serverless Logic Operator がクラスターにインストールされている。
  • OpenShift Container Platform でアプリケーションやその他のワークロードを作成するための適切なロールと権限を持つ OpenShift Serverless Logic プロジェクトにアクセスできる。
  • Operator のアップグレード用の OpenShift 管理コンソール にアクセスできる。
  • OpenShift CLI (oc) がインストールされている。

9.1.3.1. Data Index のアップグレードの最終処理

Operator のアップグレード後、Data Index 1.35.0 の新しい ReplicaSet が自動的に作成されます。古いものは手動で削除する必要があります。

手順

  1. 次のコマンドを実行してすべての ReplicaSet をリスト表示し、新しい ReplicaSet が存在することを確認します。

    $ oc get replicasets -n <target_namespace> -o custom-columns=Name:metadata.name,Image:spec.template.spec.containers[*].image
    Copy to Clipboard Toggle word wrap
  2. 古い Data Index ReplicaSet (バージョン 1.34.0) を特定して削除します。

    $ oc delete replicaset <old_replicaset_name> -n <target_namespace>
    Copy to Clipboard Toggle word wrap

9.1.3.2. Job Service のアップグレードの最終処理

バージョン 1.35.0 コンポーネントのデプロイメントをトリガーするには、古いバージョンの Jobs Service コンポーネントを手動でクリーンアップする必要があります。

手順

  1. 次のコマンドを実行して、古い Jobs Service のデプロイメントを削除します。

    $ oc delete deployment <jobs-service-deployment-name> -n <target_namespace>
    Copy to Clipboard Toggle word wrap

    これにより、古い Pod と ReplicaSet の自動クリーンアップがトリガーされ、バージョン 1.35.0 を使用して新しいデプロイメントが開始されます。

9.1.3.3. dev プロファイルを使用してワークフローを再デプロイする

アップグレード後、dev プロファイルと関連する Kubernetes リソースを使用するワークフローを再デプロイする必要があります。

手順

  1. SonataFlow CRD、ConfigMap、その他の関連するカスタム設定など、必要なすべてのリソースが復元されていることを確認します。
  2. 次のコマンドを実行してワークフローを再デプロイします。

    $ oc apply -f <my-workflow.yaml> -n <target_namespace>
    Copy to Clipboard Toggle word wrap

9.1.3.4. preview プロファイルを使用したワークフローの復元

preview プロファイルを含むワークフローでは、再デプロイする前に追加の設定手順が必要です。

手順

  1. ワークフローが永続性を使用する場合は、ワークフローに関連付けられた ConfigMap に次のプロパティーを追加します。

    apiVersion: v1
    kind: ConfigMap
    metadata:
      labels:
        app: my-workflow
      name: my-workflow-props
    data:
      application.properties: |
        kie.flyway.enabled=true
    Copy to Clipboard Toggle word wrap
  2. SonataFlow CRD、ConfigMap、その他の関連するカスタム設定など、必要なすべてのリソースが再作成されていることを確認します。
  3. 次のコマンドを実行してワークフローを再デプロイします。

    $ oc apply -f <my-workflow.yaml> -n <target_namespace>
    Copy to Clipboard Toggle word wrap

9.1.3.5. gitops プロファイルを使用したワークフローのスケールアップ

以前にスケールダウンされた gitops プロファイルを持つワークフローは、操作を継続するためにスケールアップし直す必要があります。

手順

  1. 次の例に示すように、アップグレードする前に、my-workflow.yaml CRD を変更し、各ワークフローを one にスケールアップします。

    spec:
      podTemplate:
        replicas: 1
    Copy to Clipboard Toggle word wrap
  2. 次のコマンドを実行して、更新された CRD を適用します。

    $ oc apply -f <my-workflow.yaml> -n <target_namespace>
    Copy to Clipboard Toggle word wrap
  3. (オプション) 次のコマンドを実行して、ワークフローを 1 に戻します。

    $ oc patch sonataflow <my-workflow> -n <target_namespace> --type=merge -p '{"spec": {"podTemplate": {"replicas": 1}}}'
    Copy to Clipboard Toggle word wrap

9.1.3.6. アップグレードの検証

ワークフローとサービスを復元した後、アップグレードが成功したこと、およびすべてのコンポーネントが期待どおりに機能していることを確認することが重要です。

手順

  1. 次のコマンドを入力して、すべてのワークフローとサービスが実行されているかどうかを確認します。

    $ oc get pods -n <target_namespace>
    Copy to Clipboard Toggle word wrap

    ワークフロー、Data Index、Jobs Service に関連するすべての Pod が Running または Completed 状態であることを確認します。

  2. 次のコマンドを入力して、OpenShift Serverless Logic Operator が正しく実行されていることを確認します。

    $ oc get clusterserviceversion logic-operator-rhel8.v1.35.0 -n openshift-serverless-logic
    Copy to Clipboard Toggle word wrap

    予想される出力

    NAME                           DISPLAY                               VERSION   REPLACES                       PHASE
    logic-operator-rhel8.v1.35.0   OpenShift Serverless Logic Operator   1.35.0    logic-operator-rhel8.v1.34.0   Succeeded
    Copy to Clipboard Toggle word wrap

  3. 次のコマンドを入力して、Operator ログにエラーがないか確認します。

    $ oc logs -l control-plane=sonataflow-operator -n openshift-serverless-logic
    Copy to Clipboard Toggle word wrap
トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

Theme

© 2025 Red Hat