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. PingSource の使用
PingSource は、一定のペイロードを使用して ping イベントをイベントコンシューマーに定期的に送信するために使用され、タイマーと同様にイベント送信をスケジュールするために使用されます。
PingSource YAML の例
11.4.1. kn CLI での PingSource の使用 リンクのコピーリンクがクリップボードにコピーされました!
以下のセクションでは、kn
CLI を使用して基本的な PingSource を作成し、検証し、削除する方法を説明します。
前提条件
- Knative Serving および Eventing がインストールされている。
-
kn
CLI がインストールされている。
手順
PingSource が機能していることを確認するには、受信メッセージをサービスのログにダンプする単純な Knative サービスを作成します。
kn service create event-display \ --image quay.io/openshift-knative/knative-eventing-sources-event-display:latest
$ kn service create event-display \ --image quay.io/openshift-knative/knative-eventing-sources-event-display:latest
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 要求する必要のある ping イベントのセットごとに、イベントコンシューマーと同じ namespace に PingSource を作成します。
kn source ping create test-ping-source \ --schedule "*/2 * * * *" \ --data '{"message": "Hello world!"}' \ --sink svc:event-display
$ kn source ping create test-ping-source \ --schedule "*/2 * * * *" \ --data '{"message": "Hello world!"}' \ --sink svc:event-display
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下のコマンドを入力し、出力を検査して、コントローラーが正しくマップされていることを確認します。
kn source ping describe test-ping-source
$ kn source ping describe test-ping-source
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.1.1. PingSource の削除 リンクのコピーリンクがクリップボードにコピーされました!
PingSource を削除します。
kn delete pingsources.sources.knative.dev test-ping-source
$ kn delete pingsources.sources.knative.dev test-ping-source
Copy to Clipboard Copied! Toggle word wrap Toggle overflow event-display
サービスを削除します。kn delete service.serving.knative.dev event-display
$ kn delete service.serving.knative.dev event-display
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
11.4.2. YAML での PingSource の使用 リンクのコピーリンクがクリップボードにコピーされました!
以下のセクションでは、YAML ファイルを使用して基本的な PingSource を作成し、検証し、削除する方法を説明します。
前提条件
- Knative Serving および Eventing がインストールされている。
以下の手順では、YAML ファイルを作成する必要があります。
サンプルで使用されたもので YAML ファイルの名前を変更する場合は、必ず対応する CLI コマンドを更新する必要があります。
手順
PingSource が機能していることを確認するには、受信メッセージをサービスのログにダンプする単純な Knative サービスを作成します。
サンプル YAML を
service.yaml
という名前のファイルにコピーします。Copy to Clipboard Copied! Toggle word wrap Toggle overflow サービスを作成します。
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 PingSource を作成します。
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