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.8.5. Knative Client を使用したトラフィック分割
kn は、Knative サービス上でルート指定されたトラフィックを取得するリビジョンを制御するのに役立ちます。
Knative サービスは、トラフィックのマッピングを許可します。これは、サービスのリビジョンのトラフィックの割り当てられた部分へのマッピングです。これは特定のリビジョンに固有の URL を作成するオプションを提供し、トラフィックを最新リビジョンに割り当てる機能を持ちます。
サービスの設定が更新されるたびに、サービスルートがすべてのトラフィックを準備状態にある最新リビジョンにポイントする状態で、新規リビジョンが作成されます。
この動作は、トラフィックの一部を取得するリビジョンを定義して変更することができます。
手順
-
kn service updateコマンドを--trafficフラグと共に使用して、トラフィックを更新します。
--traffic RevisionName=Percent は以下の構文を使用します。
-
--trafficフラグには、等号 (=) で区切られた 2 つの値が必要です。 -
RevisionName文字列はリビジョンの名前を参照します。 -
Percent整数はトラフィックのリビジョンに割り当てられた部分を示します。 -
RevisionName の識別子
@latestを使用して、サービスの準備状態にある最新のリビジョンを参照します。この識別子は--trafficフラグと共に 1 回のみ使用できます。 -
service updateコマンドがトラフィックフラグと共にサービスの設定値を更新する場合、@latest参照は更新が適用される作成済みリビジョンをポイントします。 -
--trafficフラグは複数回指定でき、すべてのフラグのPercent値の合計が 100 になる場合にのみ有効です。
たとえば、すべてのトラフィックを配置する前に 10% のトラフィックを新規リビジョンにルート指定するには、以下のコマンドを使用します。
kn service update svc --traffic @latest=10 --traffic svc-vwxyz=90
$ kn service update svc --traffic @latest=10 --traffic svc-vwxyz=90
8.5.1. タグリビジョンの割り当て リンクのコピーリンクがクリップボードにコピーされました!
サービスのトラフィックブロック内のタグは、参照されるリビジョンをポイントするカスタム URL を作成します。ユーザーは、http(s)://TAG-SERVICE.DOMAIN 形式を使用して、カスタム URL を作成するサービスの利用可能なリビジョンの固有タグを定義できます。
指定されたタグは、サービスのトラフィックブロックに固有のものである必要があります。kn は kn service update コマンドの一環として、サービスのリビジョンのカスタムタグの割り当ておよび割り当て解除に対応します。
タグを特定のリビジョンに割り当てた場合、ユーザーは、--traffic フラグ内で --traffic Tag=Percent として示されるタグでこのリビジョンを参照できます。
手順
以下のコマンドを使用します。
kn service update svc --tag @latest=candidate --tag svc-vwxyz=current
$ kn service update svc --tag @latest=candidate --tag svc-vwxyz=currentCopy to Clipboard Copied! Toggle word wrap Toggle overflow
--tag RevisionName=Tag は以下の構文を使用します。
-
--tagフラグには、=で区切られる 2 つの値が必要です。 -
RevisionName文字列はRevisionの名前を参照します。 -
Tag文字列は、このリビジョンに指定されるカスタムタグを示します。 -
RevisionName の識別子
@latestを使用して、サービスの準備状態にある最新のリビジョンを参照します。この識別子は--tagフラグで 1 回のみ使用できます。 -
service updateコマンドがサービスの設定値を (タグフラグと共に) 更新している場合、@latest参照は更新の適用後に作成されるリビジョンをポイントします。 -
--tagフラグは複数回指定できます。 -
--tagフラグは、同じリビジョンに複数の異なるタグを割り当てる場合があります。
8.5.2. タグリビジョンの割り当て解除 リンクのコピーリンクがクリップボードにコピーされました!
トラフィックブロックのリビジョンに割り当てられたタグは、割り当て解除できます。タグの割り当てを解除すると、カスタム URL が削除されます。
リビジョンのタグが解除され、0% のトラフィックが割り当てられる場合、このリビジョンはトラフィックブロックから完全に削除されます。
手順
ユーザーは、
kn service updateコマンドを使用してリビジョンのタグの割り当てを解除できます。kn service update svc --untag candidate
$ kn service update svc --untag candidateCopy to Clipboard Copied! Toggle word wrap Toggle overflow
--untag Tag は以下の構文を使用します。
-
--untagフラグには 1 つの値が必要です。 -
tag文字列は、割り当てを解除する必要のあるサービスのトラフィックブロックの固有のタグを示します。これにより、それぞれのカスタム URL も削除されます。 -
--untagフラグは複数回指定できます。
8.5.3. トラフィックフラグ操作の優先順位 リンクのコピーリンクがクリップボードにコピーされました!
すべてのトラフィック関連のフラグは、単一の kn service update コマンドを使用して指定できます。 kn はこれらのフラグの優先順位を定義します。コマンドの使用時に指定されるフラグの順番は考慮に入れられません。
kn で評価されるフラグの優先順位は以下のとおりです。
-
--untag: このフラグで参照されるすべてのリビジョンはトラフィックブロックから削除されます。 -
--tag: リビジョンはトラフィックブロックで指定されるようにタグ付けされます。 -
--traffic: 参照されるリビジョンには、分割されたトラフィックの一部が割り当てられます。
8.5.4. トラフィック分割フラグ リンクのコピーリンクがクリップボードにコピーされました!
kn は kn service update コマンドの一環として、サービスのトラフィックブロックでのトラフィック操作に対応します。
以下の表は、トラフィック分割フラグ、値の形式、およびフラグが実行する操作の概要を表示しています。「繰り返し」列は、フラグの特定の値が kn service update コマンドで許可されるかどうかを示します。
| フラグ | 値 | オペレーション | 繰り返し |
|---|---|---|---|
|
|
|
| Yes |
|
|
|
| Yes |
|
|
|
| No |
|
|
|
| Yes |
|
|
|
| No |
|
| tag |
リビジョンから | Yes |