1.2. デプロイメントオプションとワークフローのデプロイ
次の 3 つのデプロイメントプロファイルのいずれかを使用して、クラスターに Serverless Logic ワークフローをデプロイできます。
- Dev
- プレビュー
- GitOps
各プロファイルは、イメージのライフサイクル、ライブ更新、リコンシリエーション動作など、Operator がワークフローのデプロイメントを構築および管理する方法を定義します。
1.2.1. Dev プロファイルを使用してワークフローをデプロイする リンクのコピーリンクがクリップボードにコピーされました!
Dev プロファイルを使用して、OpenShift Container Platform にローカルワークフローをデプロイできます。このデプロイメントを使用すると、クラスター上で直接ワークフローを実験および変更することができ、変更をほぼ即座に確認できます。Dev プロファイルは開発とテストの目的で設計されています。コンテナーを再起動せずにワークフローを自動的にリロードするため、初期の開発段階やライブ環境でのワークフローの変更のテストに適しています。
前提条件
- OpenShift Serverless Logic Operator がクラスターにインストールされている。
- OpenShift Container Platform でアプリケーションやその他のワークロードを作成するための適切なロールと権限を持つ OpenShift Serverless Logic プロジェクトにアクセスできる。
-
OpenShift CLI
(oc)
がインストールされている。
手順
ワークフロー設定 YAML ファイルを作成します。
workflow-dev.yaml
ファイルの例Copy to Clipboard Copied! Toggle word wrap Toggle overflow アプリケーションをデプロイするには、次のコマンドを入力して YAML ファイルを適用します。
oc apply -f <filename> -n <your_namespace>
$ oc apply -f <filename> -n <your_namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを入力して、デプロイメントを確認し、デプロイされたワークフローのステータスを確認します。
oc get workflow -n <your_namespace> -w
$ oc get workflow -n <your_namespace> -w
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ワークフローがリストされており、ステータスが
Running
またはCompleted
であることを確認します。次のコマンドを入力して、クラスター内でワークフローを直接編集します。
oc edit sonataflow <workflow_name> -n <your_namespace>
$ oc edit sonataflow <workflow_name> -n <your_namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 編集後、変更を保存します。OpenShift Serverless Logic Operator は変更を検出し、それに応じてワークフローを更新します。
検証
変更が正しく適用されていることを確認するには、次のコマンドを入力してワークフローのステータスとログを確認します。
次のコマンドを実行して、ワークフローのステータスを表示します。
oc get sonataflows -n <your_namespace>
$ oc get sonataflows -n <your_namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを実行してワークフローログを表示します。
oc logs <workflow_pod_name> -n <your_namespace>
$ oc logs <workflow_pod_name> -n <your_namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
次のステップ
テストが完了したら、次のコマンドを実行してリソースを削除し、必要のないリソースの使用を回避します。
oc delete sonataflow <workflow_name> -n <your_namespace>
$ oc delete sonataflow <workflow_name> -n <your_namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
1.2.2. Preview プロファイルを使用したワークフローのデプロイ リンクのコピーリンクがクリップボードにコピーされました!
Preview プロファイルを使用して、OpenShift Container Platform にローカルワークフローをデプロイできます。これにより、クラスター上で実稼働環境と同様の環境でワークフローを直接検証およびテストできます。Preview プロファイルは、ワークフローを実稼働環境に移行する前の最終テストと検証、およびビルドパイプラインを直接管理しない迅速なイテレーションに適しています。また、実稼働環境と同様の環境でワークフローがスムーズに実行されるようにします。
前提条件
- クラスターに OpenShift Serverless Logic Operator がインストールされている。
- OpenShift Container Platform でアプリケーションやその他のワークロードを作成するための適切なロールと権限を持つ OpenShift Serverless Logic プロジェクトにアクセスできる。
-
OpenShift CLI
(oc)
がインストールされている。
Preview プロファイルでワークフローをデプロイするために、OpenShift Serverless Logic Operator は OpenShift Container Platform 上のビルドシステムを使用します。これにより、ワークフローをデプロイするためのイメージが自動的に作成されます。
次のセクションでは、OpenShift Serverless Logic Operator と SonataFlow
カスタムリソースを使用して、クラスター上にワークフローを構築およびデプロイする方法を説明します。
1.2.2.1. Preview プロファイルでのワークフローの設定 リンクのコピーリンクがクリップボードにコピーされました!
1.2.2.1.1. ワークフローベースビルダーイメージの設定 リンクのコピーリンクがクリップボードにコピーされました!
シナリオで、セキュリティーや強化制約など、イメージの使用に関する厳格なポリシーが必要な場合は、OpenShift Serverless Logic Operator が最終的なワークフローコンテナーイメージを構築するために使用するデフォルトのイメージを置き換えます。
デフォルトでは、OpenShift Serverless Logic Operator は、公式の Red Hat レジストリーで配布されたイメージを使用してワークフローを構築します。シナリオで、セキュリティーや強化の制約など、イメージの使用に厳格なポリシーが必要な場合は、デフォルトのイメージを置き換えることができます。
このイメージを変更するには、ワークフローをデプロイした namespace 内の SonataFlowPlatform
カスタムリソース (CR) を編集します。
前提条件
- クラスターに OpenShift Serverless Logic Operator がインストールされている。
- OpenShift Container Platform でアプリケーションやその他のワークロードを作成するための適切なロールと権限を持つ OpenShift Serverless Logic プロジェクトにアクセスできる。
-
OpenShift CLI
(oc)
がインストールされている。
手順
次のコマンドを実行して、namespace 内の
SonataFlowPlatform
リソースをリスト表示します。oc get sonataflowplatform -n <your_namespace>
$ oc get sonataflowplatform -n <your_namespace>
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
<your_namespace>
は namespace の名前に置き換えます。
次のコマンドを実行して、
SonataFlowPlatform
リソースに新しいビルダーイメージを適用します。oc patch sonataflowplatform <name> --patch 'spec:\n build:\n config:\n baseImage: <your_new_image_full_name_with_tag>' -n <your_namespace>
$ oc patch sonataflowplatform <name> --patch 'spec:\n build:\n config:\n baseImage: <your_new_image_full_name_with_tag>' -n <your_namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
検証
次のコマンドを実行して、
SonataFlowPlatform
CR が正しく修正されていることを確認します。oc describe sonataflowplatform <name> -n <your_namespace>
$ oc describe sonataflowplatform <name> -n <your_namespace>
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
<name>
はSonataFlowPlatform
リソースの名前に、<your_namespace>
は namespace の名前に置き換えます。
spec.build.config
の下のbaseImage
フィールドに新しいイメージが反映されていることを確認します。
1.2.2.1.2. ベースビルダー Dockerfile のカスタマイズ リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Serverless Logic Operator は openshift-serverless-logic
OpenShift Serverless Logic Operator インストール namespace の logic-operator-rhel8-builder-config
config map カスタムリソース (CR) を使用して、ワークフロービルドプロセスを設定および実行します。この config map 内の Dockerfile エントリーを変更して、Dockerfile を要件に合わせて調整できます。
Dockerfile を変更すると、ビルドプロセスが中断される可能性があります。
この例は参考用です。実際のバージョンは若干異なる可能性があります。この例をインストールに使用しないでください。
例: logic-operator-rhel8-builder-config
config map CR
1.2.2.1.3. リソース要件の変更 リンクのコピーリンクがクリップボードにコピーされました!
ワークフロー namespace で SonataFlowPlatform
リソースを作成または編集することにより、内部ビルダー Pod のリソース要件を指定できます。
SonataFlowPlatform
リソースの例
namespace ごとに 1 つの SonataFlowPlatform
リソースのみが許可されます。別のリソースを作成する代わりに、OpenShift Serverless Logic Operator によって作成されたリソースを取得して編集します。
特定のワークフローのリソース要件を微調整できます。各ワークフローインスタンスには、ワークフローと同じ名前で作成された SonataFlowBuild
インスタンスがあります。SonataFlowBuild
カスタムリソース (CR) を編集し、次のようにパラメーターを指定できます。
SonataFlowBuild
CR の例
これらのパラメーターは、新しいビルドインスタンスにのみ適用されます。
1.2.2.1.4. 内部ビルダーに引数を渡す リンクのコピーリンクがクリップボードにコピーされました!
ビルド引数を SonataFlowBuild
インスタンスに渡すか、SonataFlowPlatform
リソースでデフォルトのビルド引数を設定することで、ビルドプロセスをカスタマイズできます。
前提条件
- クラスターに OpenShift Serverless Logic Operator がインストールされている。
- OpenShift Container Platform でアプリケーションやその他のワークロードを作成するための適切なロールと権限を持つ OpenShift Serverless Logic プロジェクトにアクセスできる。
-
OpenShift CLI
(oc)
がインストールされている。
手順
次のコマンドを実行して、既存の
SonataFlowBuild
インスタンスを確認します。oc get sonataflowbuild <name> -n <namespace>
$ oc get sonataflowbuild <name> -n <namespace>
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
<name>
はSonataFlowBuild
インスタンスの名前に、<namespace>
を namespace に置き換えます。
次のコマンドを実行して、
SonataFlowBuild
インスタンスにビルド引数を追加します。oc edit sonataflowbuild <name> -n <namespace>
$ oc edit sonataflowbuild <name> -n <namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow SonataFlowBuild
インスタンスの.spec.buildArgs
フィールドの下に、必要なビルド引数を追加します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 既存の
SonataFlowBuild
インスタンスの名前。
ファイルを保存して終了します。
更新された設定で新しいビルドが開始されます。
次のコマンドを実行して、
SonataFlowPlatform
リソースにデフォルトのビルド引数を設定します。oc edit sonataflowplatform <name> -n <namespace>
$ oc edit sonataflowplatform <name> -n <namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow SonataFlowPlatform
リソースの.spec.buildArgs
フィールドに、必要なビルド引数を追加します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 既存の
SonataFlowPlatform
リソースの名前。
- ファイルを保存して終了します。
1.2.2.1.5. 内部ビルダーでの環境変数の設定 リンクのコピーリンクがクリップボードにコピーされました!
SonataFlowBuild
内部ビルダー Pod に環境変数を設定できます。これらの変数はビルドコンテキストに対してのみ有効であり、最終的にビルドされたワークフローイメージには設定されません。
前提条件
- クラスターに OpenShift Serverless Logic Operator がインストールされている。
- OpenShift Container Platform でアプリケーションやその他のワークロードを作成するための適切なロールと権限を持つ OpenShift Serverless Logic プロジェクトにアクセスできる。
-
OpenShift CLI
(oc)
がインストールされている。
手順
次のコマンドを実行して、既存の
SonataFlowBuild
インスタンスを確認します。oc get sonataflowbuild <name> -n <namespace>
$ oc get sonataflowbuild <name> -n <namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow <name>
はSonataFlowBuild
インスタンスの名前に、<namespace>
を namespace に置き換えます。次のコマンドを実行して、
SonataFlowBuild
インスタンスを編集します。oc edit sonataflowbuild <name> -n <namespace>
$ oc edit sonataflowbuild <name> -n <namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow SonataFlowBuild
インスタンスの例Copy to Clipboard Copied! Toggle word wrap Toggle overflow ファイルを保存して終了します。
更新された設定で新しいビルドが開始されます。
あるいは、
SonataFlowPlatform
で環境を設定して、すべての新しいビルドインスタンスがその設定をテンプレートとして使用するようにすることもできます。SonataFlowPlatform
インスタンスの例Copy to Clipboard Copied! Toggle word wrap Toggle overflow
1.2.2.1.6. ベースビルダーイメージの変更 リンクのコピーリンクがクリップボードにコピーされました!
logic-operator-rhel8-builder-config
config map を編集することで、OpenShift Serverless Logic Operator によって使用されるデフォルトのビルダーイメージを変更できます。
前提条件
- クラスターに OpenShift Serverless Logic Operator がインストールされている。
- OpenShift Container Platform でアプリケーションやその他のワークロードを作成するための適切なロールと権限を持つ OpenShift Serverless Logic プロジェクトにアクセスできる。
-
OpenShift CLI
(oc)
がインストールされている。
手順
次のコマンドを実行して、
logic-operator-rhel8-builder-config
config map を編集します。oc edit cm/logic-operator-rhel8-builder-config -n openshift-serverless-logic
$ oc edit cm/logic-operator-rhel8-builder-config -n openshift-serverless-logic
Copy to Clipboard Copied! Toggle word wrap Toggle overflow dockerfile エントリーを変更します。
エディターで、Dockerfile エントリーを見つけて、最初の行を目的のイメージに変更します。
例
data: Dockerfile: | FROM registry.redhat.io/openshift-serverless-1/logic-swf-builder-rhel8:1.33.0 # Change the image to the desired one
data: Dockerfile: | FROM registry.redhat.io/openshift-serverless-1/logic-swf-builder-rhel8:1.33.0 # Change the image to the desired one
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 変更を保存します。
1.2.2.2. ワークフローの構築とデプロイ リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Container Platform で SonataFlow
カスタムリソース (CR) を作成し、OpenShift Serverless Logic Operator がワークフローをビルドしてデプロイすることができます。
前提条件
- クラスターに OpenShift Serverless Logic Operator がインストールされている。
- OpenShift Container Platform でアプリケーションやその他のワークロードを作成するための適切なロールと権限を持つ OpenShift Serverless Logic プロジェクトにアクセスできる。
-
OpenShift CLI
(oc)
がインストールされている。
手順
次のようなワークフロー YAML ファイルを作成します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを実行して、
SonataFlow
ワークフロー定義を OpenShift Container Platform namespace に適用します。oc apply -f <workflow-name>.yaml -n <your_namespace>
$ oc apply -f <workflow-name>.yaml -n <your_namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow greetings-workflow.yaml
ファイルのコマンドの例:oc apply -f greetings-workflow.yaml -n workflows
$ oc apply -f greetings-workflow.yaml -n workflows
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを実行して、すべてのビルド設定をリスト表示します。
oc get buildconfigs -n workflows
$ oc get buildconfigs -n workflows
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを実行して、ビルドプロセスのログを取得します。
oc logs buildconfig/<workflow-name> -n <your_namespace>
$ oc logs buildconfig/<workflow-name> -n <your_namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow greetings-workflow.yaml
ファイルのコマンドの例:oc logs buildconfig/greeting -n workflows
$ oc logs buildconfig/greeting -n workflows
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
検証
デプロイメントを確認するには、次のコマンドを実行してすべての Pod をリスト表示します。
oc get pods -n <your_namespace>
$ oc get pods -n <your_namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ワークフローに対応する Pod が実行されていることを確認します。
次のコマンドを実行して、実行中の Pod とそのログを確認します。
oc logs pod/<pod-name> -n workflows
$ oc logs pod/<pod-name> -n workflows
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
1.2.2.3. ワークフローのデプロイメントの検証 リンクのコピーリンクがクリップボードにコピーされました!
ワークフロー Pod からテスト HTTP 呼び出しを実行して、OpenShift Serverless Logic ワークフローが実行されていることを確認できます。
前提条件
- クラスターに OpenShift Serverless Logic Operator がインストールされている。
- OpenShift Container Platform でアプリケーションやその他のワークロードを作成するための適切なロールと権限を持つ OpenShift Serverless Logic プロジェクトにアクセスできる。
-
OpenShift CLI
(oc)
がインストールされている。
手順
次のようなワークフロー
YAML
ファイルを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを実行して、ワークフローサービスのルートを作成します。
oc expose svc/<workflow-service-name> -n workflows
$ oc expose svc/<workflow-service-name> -n workflows
Copy to Clipboard Copied! Toggle word wrap Toggle overflow このコマンドは、ワークフローサービスにアクセスするためのパブリック URL を作成します。
次のコマンドを実行して、パブリック URL の環境変数を設定します。
WORKFLOW_SVC=$(oc get route/<workflow-service-name> -n <namespace> --template='{{.spec.host}}')
$ WORKFLOW_SVC=$(oc get route/<workflow-service-name> -n <namespace> --template='{{.spec.host}}')
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを実行して、ワークフローに HTTP 呼び出しを行い、サービスに POST リクエストを送信します。
curl -X POST -H 'Content-Type: application/json' -H 'Accept: application/json' -d '{<"your": "json_payload">}' http://$WORKFLOW_SVC/<endpoint>
$ curl -X POST -H 'Content-Type: application/json' -H 'Accept: application/json' -d '{<"your": "json_payload">}' http://$WORKFLOW_SVC/<endpoint>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow この出力は、ワークフローが実行中の場合に予想される応答の例を示しています。
1.2.2.4. ビルドの再実行 リンクのコピーリンクがクリップボードにコピーされました!
ビルドを再実行するには、SonataFlowBuild
インスタンスに sonataflow.org/restartBuild: true
アノテーションを追加または編集します。ワークフローまたは初期ビルドリビジョンに問題がある場合は、ビルドを再実行する必要があります。
前提条件
- クラスターに OpenShift Serverless Logic Operator がインストールされている。
- OpenShift Container Platform でアプリケーションやその他のワークロードを作成するための適切なロールと権限を持つ OpenShift Serverless Logic プロジェクトにアクセスできる。
-
OpenShift CLI
(oc)
がインストールされている。
手順
次のコマンドを実行して、
SonataFlowBuild
インスタンスが存在するかどうかを確認します。oc get sonataflowbuild <name> -n <namespace>
$ oc get sonataflowbuild <name> -n <namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを実行して、
SonataFlowBuild
インスタンスを編集します。oc edit sonataflowbuild/<name> -n <namespace>
$ oc edit sonataflowbuild/<name> -n <namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow <name>
はSonataFlowBuild
インスタンスの名前に、<namespace>
はワークフローがデプロイされている namespace に置き換えます。ビルドを再実行するには、
sonataflow.org/restartBuild: true
アノテーションを追加します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow このアクションにより、OpenShift Serverless Logic Operator がトリガーされ、ワークフローの新しいビルドが開始されます。
ビルドプロセスを監視するには、次のコマンドを実行してビルドログを確認します。
oc logs buildconfig/<name> -n <namespace>
$ oc logs buildconfig/<name> -n <namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow <name>
はSonataFlowBuild
インスタンスの名前に、<namespace>
はワークフローがデプロイされている namespace に置き換えます。
1.2.3. GitOps プロファイルを使用してワークフローをデプロイする リンクのコピーリンクがクリップボードにコピーされました!
GitOps プロファイルは実稼働環境のデプロイメントにのみ使用してください。開発、迅速なイテレーション、またはテストの場合は、代わりに Dev または Preview プロファイルを使用してください。
GitOps プロファイルを使用して、OpenShift Container Platform にローカルワークフローをデプロイできます。GitOps プロファイルは、通常は ArgoCD や Tekton などの CI/CD パイプラインを通じてイメージを外部でビルドおよび管理できるようにすることで、ワークフローコンテナーイメージを完全に制御します。コンテナーイメージが SonataFlow
カスタムリソース (CR) で定義されると、Operator は GitOps プロファイルが使用されていることを自動的に想定し、イメージのビルドや変更を一切行いません。
前提条件
- OpenShift Serverless Logic Operator がクラスターにインストールされている。
- OpenShift Container Platform でアプリケーションやその他のワークロードを作成するための適切なロールと権限を持つ OpenShift Serverless Logic プロジェクトにアクセスできる。
-
OpenShift CLI
(oc)
がインストールされている。
手順
SonataFlow CR でコンテナーイメージを指定します。
GitOps プロファイルが設定された SonataFlow CR の例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
flow
定義は、ビルドプロセス中に使用されるワークフロー定義と一致する必要があります。GitOps プロファイルを使用してワークフローをデプロイすると、Operator はこの定義をコンテナーイメージに埋め込まれたワークフローファイルと比較します。定義とファイルが一致しない場合、デプロイメントは失敗します。
CR を適用してワークフローをデプロイします。
oc apply -f <filename>
$ oc apply -f <filename>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
1.2.4. ワークフローの編集 リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Serverless Logic Operator がワークフローサービスをデプロイすると、ランタイムプロパティーを保存するための 2 つの config map が作成されます。
-
ユーザープロパティー:
SonataFlow
オブジェクトをもとに名前が付けられ、接尾辞が-props
であるConfigMap
で定義されます。たとえば、ワークフロー名がgreeting
の場合、ConfigMap
名はgreeting-props
になります。 -
管理プロパティー:
SonataFlow
オブジェクトをもとに名前が付けられ、接尾辞が-managed-props
であるConfigMap
で定義されます。たとえば、ワークフロー名がgreeting
の場合、ConfigMap
名はgreeting-managed-props
になります。
管理プロパティーは常にキー名が同じユーザープロパティーをすべてオーバーライドし、ユーザーが編集することはできません。すべての変更は、次の調整サイクルで Operator によって上書きされます。
前提条件
- OpenShift Serverless Logic Operator がクラスターにインストールされている。
- OpenShift Container Platform でアプリケーションやその他のワークロードを作成するための適切なロールと権限を持つ OpenShift Serverless Logic プロジェクトにアクセスできる。
-
OpenShift CLI
(oc)
がインストールされている。
手順
以下のコマンドを実行して
ConfigMap
を開き、編集します。oc edit cm <workflow_name>-props -n <namespace>
$ oc edit cm <workflow_name>-props -n <namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow <workflow_name>
はワークフローの名前に、<namespace>
はワークフローがデプロイされている namespace に置き換えます。application.properties
セクションにプロパティーを追加します。ConfigMap
内に保存されるワークフロープロパティーの例:Copy to Clipboard Copied! Toggle word wrap Toggle overflow Operator が設定をデフォルトの設定に置き換えないように、プロパティーが正しくフォーマットされていることを確認してください。
- 必要な変更を行った後、ファイルを保存してエディターを終了します。
1.2.5. ワークフローのテスト リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Serverless Logic ワークフローが正しく実行されていることを確認するには、関連する Pod からテスト HTTP 呼び出しを実行できます。
前提条件
- OpenShift Serverless Logic Operator がクラスターにインストールされている。
- OpenShift Container Platform でアプリケーションやその他のワークロードを作成するための適切なロールと権限を持つ OpenShift Serverless Logic プロジェクトにアクセスできる。
-
OpenShift CLI
(oc)
がインストールされている。
手順
次のコマンドを実行して、namespace 内の指定されたサービスへのルートを作成します。
oc expose svc <service_name> -n <namespace>
$ oc expose svc <service_name> -n <namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 新しく公開されたサービスの URL を取得するには、次のコマンドを実行します。
WORKFLOW_SVC=$(oc get route/<service_name> --template='{{.spec.host}}')
$ WORKFLOW_SVC=$(oc get route/<service_name> --template='{{.spec.host}}')
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを実行して、テスト HTTP 呼び出しを実行し、
POST
リクエストを送信します。curl -X POST -H 'Content-Type:application/json' -H 'Accept:application/json' -d '<request_body>' http://$WORKFLOW_SVC/<endpoint>
$ curl -X POST -H 'Content-Type:application/json' -H 'Accept:application/json' -d '<request_body>' http://$WORKFLOW_SVC/<endpoint>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 応答を検証して、ワークフローが期待どおりに機能していることを確認します。
1.2.6. ワークフローのトラブルシューティング リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Serverless Logic Operator は、ヘルスチェックプローブを備えた Pod をデプロイし、ワークフローが正常な状態で実行されるようにします。変更したことが原因でこれらのヘルスチェックに失敗すると、Pod は応答を停止します。
前提条件
- OpenShift Serverless Logic Operator がクラスターにインストールされている。
- OpenShift Container Platform でアプリケーションやその他のワークロードを作成するための適切なロールと権限を持つ OpenShift Serverless Logic プロジェクトにアクセスできる。
-
OpenShift CLI
(oc)
がインストールされている。
手順
次のコマンドを実行してワークフローのステータスを確認します。
oc get workflow <name> -o jsonpath={.status.conditions} | jq .
$ oc get workflow <name> -o jsonpath={.status.conditions} | jq .
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ワークフローのデプロイメントからログを取得して分析するには、次のコマンドを実行します。
oc logs deployment/<workflow_name> -f
$ oc logs deployment/<workflow_name> -f
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
1.2.7. ワークフローの削除 リンクのコピーリンクがクリップボードにコピーされました!
oc delete
コマンドを使用して、現在のディレクトリーで OpenShift Serverless Logic ワークフローを削除できます。
前提条件
- OpenShift Serverless Logic Operator がクラスターにインストールされている。
- OpenShift Container Platform でアプリケーションやその他のワークロードを作成するための適切なロールと権限を持つ OpenShift Serverless Logic プロジェクトにアクセスできる。
-
OpenShift CLI
(oc)
がインストールされている。
手順
-
削除するワークフローを定義する正しいファイルがあることを確認します。たとえば、
workflow.yaml
などです。 oc delete
コマンドを実行して、指定した namespace からワークフローを削除します。oc delete -f <your_file> -n <your_namespace>
$ oc delete -f <your_file> -n <your_namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow <your_file>
は、ワークフローファイルの名前に、<your_namespace>
を namespace に置き換えます。