8.4. 트래픽 분할을 위한 CLI 플래그
Knative(kn
) CLI는 kn service update
명령의 일부로 서비스의 트래픽 블록에서 트래픽 작업을 지원합니다.
8.4.1. Knative CLI 트래픽 분할 플래그
다음 테이블에는 트래픽 분할 플래그, 값 형식, 플래그에서 수행하는 작업이 요약되어 있습니다. 반복 열은 kn service update
명령에서 특정 플래그 값을 반복할 수 있는지를 나타냅니다.
플래그 | 값 | 작업 | 반복 |
---|---|---|---|
|
|
| 제공됨 |
|
|
| 제공됨 |
|
|
최신 준비 버전에 | 아니요 |
|
|
| 제공됨 |
|
|
최근 준비된 버전에 | 아니요 |
|
|
버전에서 | 제공됨 |
8.4.1.1. 여러 플래그 및 우선 순위
모든 트래픽 관련 플래그는 단일 kn service update
명령을 사용하여 지정할 수 있습니다. kn
은 이러한 플래그의 우선순위를 정의합니다. 명령을 사용할 때 지정된 플래그의 순서는 고려하지 않습니다.
kn
에 의해 평가되는 플래그의 우선순위는 다음과 같습니다.
-
--untag
: 이 플래그가 있는 참조된 버전은 모두 트래픽 블록에서 제거됩니다. -
--tag
: 버전에는 트래픽 블록에 지정된 대로 태그가 지정됩니다. -
--traffic
: 참조된 버전에는 트래픽 분할의 일부가 할당됩니다.
버전에 태그를 추가한 다음 설정한 태그에 따라 트래픽을 분할할 수 있습니다.
8.4.1.2. 개정버전 사용자 정의 URL
kn service update
명령을 사용하여 서비스에 --tag
플래그를 할당하면 서비스를 업데이트할 때 생성되는 버전에 대한 사용자 정의 URL이 생성됩니다. 사용자 정의 URL은 https://<tag>-<service_name>-<namespace>.<domain
> 또는 http://<tag>-<service_name>-<namespace>.<domain
> 패턴을 따릅니다.
--tag
및 --untag
플래그는 다음 구문을 사용합니다.
- 하나의 값이 필요합니다.
- 서비스의 트래픽 블록에 있는 고유한 태그를 나타냅니다.
- 하나의 명령에서 여러 번 지정할 수 있습니다.
8.4.1.2.1. 예: 태그를 버전에 할당
다음 예제에서는 latest
태그를 example-revision
이라는 버전에 할당합니다.
$ kn service update <service_name> --tag @latest=example-tag
8.4.1.2.2. 예: 버전에서 태그 제거
--untag
플래그를 사용하여 사용자 정의 URL을 제거하도록 태그를 제거할 수 있습니다.
개정 버전에 해당 태그가 제거되고 트래픽의 0%가 할당되면 개정 버전이 트래픽 블록에서 완전히 제거됩니다.
다음 명령은 example-revision
이라는 버전에서 모든 태그를 제거합니다.
$ kn service update <service_name> --untag example-tag