6.2. チャネルの作成
チャネルは、単一のイベント転送および永続レイヤーを定義するカスタムリソースです。イベントがイベントソースまたは生成側からチャネルに送信された後に、これらのイベントはサブスクリプションを使用して複数の Knative サービスまたは他のシンクに送信できます。
				サポートされている Channel オブジェクトをインスタンス化することでチャネルを作成し、Subscription オブジェクトの delivery 仕様を変更して再配信の試行を設定できます。
			
6.2.1. チャネルの作成 リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Container Platform Web コンソールを使用すると、チャネルを作成するための合理的で直感的なユーザーインターフェイスが提供されます。Knative Eventing がクラスターにインストールされると、Web コンソールを使用してチャネルを作成できます。
前提条件
- OpenShift Container Platform Web コンソールにログインしている。
 - OpenShift Serverless Operator および Knative Eventing が OpenShift Container Platform クラスターにインストールされている。
 - OpenShift Container Platform でアプリケーションおよび他のワークロードを作成するために、プロジェクトを作成しているか、適切なロールおよびパーミッションを持つプロジェクトにアクセスできる。
 
手順
- 
							+Add 
Channel に移動します。  タイプ リストで、作成する
Channelオブジェクトのタイプを選択します。注記現時点で、
InMemoryChannelチャネルオブジェクトのみがデフォルトでサポートされます。Apache Kafka の Knative チャネルは、OpenShift Serverless に Apache Kafka の Knative ブローカー実装をインストールしている場合に使用できます。- Create をクリックします。
 
検証
Topology ページに移動して、チャネルが存在することを確認します。
6.2.2. Knative CLI を使用したチャネルの作成 リンクのコピーリンクがクリップボードにコピーされました!
					チャネルを作成するために Knative (kn) CLI を使用すると、YAML ファイルを直接修正するよりも合理的で直感的なユーザーインターフェイスが得られます。kn channel create コマンドを使用してチャネルを作成できます。
				
前提条件
- OpenShift Serverless Operator および Knative Eventing がクラスターにインストールされている。
 - 
							Knative (
kn) CLI がインストールされている。 - OpenShift Container Platform でアプリケーションおよび他のワークロードを作成するために、プロジェクトを作成しているか、適切なロールおよびパーミッションを持つプロジェクトにアクセスできる。
 
手順
チャネルを作成します。
kn channel create <channel_name> --type <channel_type>
$ kn channel create <channel_name> --type <channel_type>Copy to Clipboard Copied! Toggle word wrap Toggle overflow チャネルタイプはオプションですが、指定する場合は、
Group:Version:Kindの形式で指定する必要があります。たとえば、InMemoryChannelオブジェクトを作成できます。kn channel create mychannel --type messaging.knative.dev:v1:InMemoryChannel
$ kn channel create mychannel --type messaging.knative.dev:v1:InMemoryChannelCopy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
Channel 'mychannel' created in namespace 'default'.
Channel 'mychannel' created in namespace 'default'.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 
検証
チャネルが存在することを確認するには、既存のチャネルをリスト表示し、出力を検査します。
kn channel list
$ kn channel listCopy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
kn channel list NAME TYPE URL AGE READY REASON mychannel InMemoryChannel http://mychannel-kn-channel.default.svc.cluster.local 93s True
kn channel list NAME TYPE URL AGE READY REASON mychannel InMemoryChannel http://mychannel-kn-channel.default.svc.cluster.local 93s TrueCopy to Clipboard Copied! Toggle word wrap Toggle overflow 
チャネルの削除
チャネルを削除します。
kn channel delete <channel_name>
$ kn channel delete <channel_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 
6.2.3. YAML を使用したデフォルト実装チャネルの作成 リンクのコピーリンクがクリップボードにコピーされました!
					YAML ファイルを使用して Knative リソースを作成する場合は、宣言的 API を使用するため、再現性の高い方法でチャネルを宣言的に記述できます。YAML を使用して Serverless チャネルを作成するには、Channel オブジェクトを定義する YAML ファイルを作成し、oc apply コマンドを使用してそれを適用する必要があります。
				
前提条件
- OpenShift Serverless Operator および Knative Eventing がクラスターにインストールされている。
 - 
							OpenShift CLI (
oc) がインストールされている。 - OpenShift Container Platform でアプリケーションおよび他のワークロードを作成するために、プロジェクトを作成しているか、適切なロールおよびパーミッションを持つプロジェクトにアクセスできる。
 
手順
Channelオブジェクトを YAML ファイルとして作成します。apiVersion: messaging.knative.dev/v1 kind: Channel metadata: name: example-channel namespace: default
apiVersion: messaging.knative.dev/v1 kind: Channel metadata: name: example-channel namespace: defaultCopy to Clipboard Copied! Toggle word wrap Toggle overflow YAML ファイルを適用します。
oc apply -f <filename>
$ oc apply -f <filename>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 
6.2.4. YAML を使用した Apache Kafka のチャネルの作成 リンクのコピーリンクがクリップボードにコピーされました!
					YAML ファイルを使用して Knative リソースを作成する場合は、宣言的 API を使用するため、再現性の高い方法でチャネルを宣言的に記述できます。Kafka チャネルを作成することで、Kafka トピックに裏打ちされた Knative Eventing チャネルを作成できます。YAML を使用して Kafka チャネルを作成するには、KafkaChannel オブジェクトを定義する YAML ファイルを作成し、oc apply コマンドを使用してそれを適用する必要があります。
				
前提条件
- 
							OpenShift Serverless Operator、Knative Eventing、および 
KnativeKafkaカスタムリソースが OpenShift Container Platform クラスターにインストールされている。 - 
							OpenShift CLI (
oc) がインストールされている。 - OpenShift Container Platform でアプリケーションおよび他のワークロードを作成するために、プロジェクトを作成しているか、適切なロールおよびパーミッションを持つプロジェクトにアクセスできる。
 
手順
KafkaChannelオブジェクトを YAML ファイルとして作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 重要OpenShift Serverless 上の
KafkaChannelオブジェクトの API のv1beta1バージョンのみがサポートされます。非推奨となったv1alpha1バージョンの API は使用しないでください。KafkaChannelYAML ファイルを適用します。oc apply -f <filename>
$ oc apply -f <filename>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 
6.2.5. 次のステップ リンクのコピーリンクがクリップボードにコピーされました!
- チャネルの作成後に、チャネルをシンクに 接続して、シンクがイベント を受信できるようにします。
 - イベントがイベントシンクに配信されなかった場合に適用される イベント配信パラメーター を設定します。