This documentation is for a release that is no longer maintained
See documentation for the latest supported version 3 or the latest supported version 4.11.4.2. YAML ファイルを使用した ping ソースの作成
以下のセクションでは、YAML ファイルを使用して基本的な ping ソースを作成し、検証し、削除する方法を説明します。
前提条件
- Knative Serving および Eventing がインストールされている。
以下の手順では、YAML ファイルを作成する必要があります。
サンプルで使用されたもので YAML ファイルの名前を変更する場合は、必ず対応する CLI コマンドを更新する必要があります。
手順
PingSource が機能していることを確認するには、受信メッセージをサービスのログにダンプする単純な Knative サービスを作成します。
サンプル YAML を
service.yaml
という名前のファイルにコピーします。Copy to Clipboard Copied! Toggle word wrap Toggle overflow service.yaml
ファイルを適用します。oc apply --filename service.yaml
$ oc apply --filename service.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
要求する必要のある ping イベントのセットごとに、
PingSource
オブジェクトをイベントコンシューマーと同じ namespace に作成します。サンプル YAML を
ping-source.yaml
という名前のファイルにコピーします。Copy to Clipboard Copied! Toggle word wrap Toggle overflow ping-source.yaml
ファイルを適用します。oc apply --filename ping-source.yaml
$ oc apply --filename ping-source.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
以下のコマンドを入力し、出力を検査して、コントローラーが正しくマップされていることを確認します。
oc get pingsource.sources.knative.dev test-ping-source -oyaml
$ oc get pingsource.sources.knative.dev test-ping-source -oyaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
検証
シンク Pod のログを確認して、Kubernetes イベントが Knative イベントに送信されていることを確認できます。
デフォルトで、Knative サービスは、トラフィックが 60 秒以内に受信されない場合に Pod を終了します。本書の例では、新たに作成される Pod で各メッセージが確認されるように 2 分ごとにメッセージを送信する PingSource
オブジェクトを作成します。
作成された新規 Pod を監視します。
watch oc get pods
$ watch oc get pods
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Ctrl+C
を使用して Pod の監視をキャンセルし、作成された Pod のログを確認します。oc logs $(oc get pod -o name | grep event-display) -c user-container
$ oc logs $(oc get pod -o name | grep event-display) -c user-container
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
11.4.2.1. PingSource の削除 リンクのコピーリンクがクリップボードにコピーされました!
以下のコマンドを入力してサービスを削除します。
oc delete --filename service.yaml
$ oc delete --filename service.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下のコマンドを入力して
PingSource
オブジェクトを削除します。oc delete --filename ping-source.yaml
$ oc delete --filename ping-source.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow