4.3. Knative CLI を使用したトラフィック分割
Knative (kn
) CLI を使用してトラフィック分割を作成すると、YAML ファイルを直接変更するよりも合理的で直感的なユーザーインターフェイスが提供されます。kn service update
コマンドを使用して、サービスのリビジョン間でトラフィックを分割できます。
4.3.1. KnativeCLI を使用してトラフィック分割を作成する
前提条件
- OpenShift Serverless Operator および Knative Serving がクラスターにインストールされている。
-
Knative (
kn
) CLI をインストールしている。 - Knative サービスを作成している。
手順
標準の
kn service update
コマンドで--traffic
タグを使用して、サービスのリビジョンとそれにルーティングするトラフィックの割合を指定します。コマンドの例
$ kn service update <service_name> --traffic <revision>=<percentage>
ここでは、以下のようになります。
-
<service_name>
は、トラフィックルーティングを設定する Knative サービスの名前です。 -
<revision>
は、一定の割合のトラフィックを受信するように設定するリビジョンです。リビジョンの名前、または--tag
フラグを使用してリビジョンに割り当てたタグのいずれかを指定できます。 -
<percentage>
は、指定されたリビジョンに送信するトラフィックのパーセンテージです。
-
オプション:
--traffic
フラグは、1 つのコマンドで複数回指定できます。たとえば、@latest
というタグの付いたリビジョンとstable
という名前のリビジョンがある場合、次のように各リビジョンに分割するトラフィックの割合を指定できます。コマンドの例
$ kn service update example-service --traffic @latest=20,stable=80
複数のリビジョンがあり、最後のリビジョンに分割する必要があるトラフィックの割合を指定しない場合、
-traffic
フラグはこれを自動的に計算できます。たとえば、example
という名前の 3 番目のリビジョンがあり、次のコマンドを使用する場合:コマンドの例
$ kn service update example-service --traffic @latest=10,stable=60
トラフィックの残りの 30% は、指定されていなくても、
example
リビジョンに分割されます。