3장. 서버리스 애플리케이션 구성
3.1. Knative Serving 시스템 배포 구성 덮어쓰기
KnativeServing
CR(사용자 정의 리소스)의 deployments
사양을 수정하여 일부 특정 배포의 기본 구성을 덮어쓸 수 있습니다.
참고
기본적으로 배포에 정의된 프로브만 덮어쓸 수 있습니다.
모든 Knative Serving 배포는 기본적으로 준비 상태 및 활성 상태 프로브를 정의합니다.
-
net-kourier-controller
및3scale-kourier-gateway
는 준비 상태 프로브만 정의합니다. -
net-istio-controller
및net-istio-webhook
는 프로브를 정의하지 않습니다.
3.1.1. 시스템 배포 구성 덮어쓰기
현재는 프로브 준비
및 활성
필드뿐만 아니라 리소스
,복제본
,레이블
, nodeSelector
필드에 대해 기본 구성 설정을 재정의할 수 있습니다.
다음 예에서 KnativeServing
CR은 다음과 같이 웹 후크
배포를 덮어씁니다.
-
net-kourier-controller
의준비 상태
프로브 시간 초과는 10초로 설정됩니다. - 배포에 CPU 및 메모리 리소스 제한이 지정되어 있습니다.
- 배포에는 3개의 복제본이 있습니다.
-
example-label:
레이블이 추가되었습니다. -
example-annotation: 주석
주석이 추가되었습니다. -
nodeSelector
필드는disktype: hdd
라벨이 있는 노드를 선택하도록 설정됩니다.
참고
KnativeServing
CR 레이블 및 주석 설정은 배포 자체와 결과 Pod 모두에 대한 배포의 레이블 및 주석을 재정의합니다.
KnativeServing CR 예
apiVersion: operator.knative.dev/v1beta1
kind: KnativeServing
metadata:
name: ks
namespace: knative-serving
spec:
high-availability:
replicas: 2
deployments:
- name: net-kourier-controller
readinessProbes: 1
- container: controller
timeoutSeconds: 10
- name: webhook
resources:
- container: webhook
requests:
cpu: 300m
memory: 60Mi
limits:
cpu: 1000m
memory: 1000Mi
replicas: 3
labels:
example-label: label
annotations:
example-annotation: annotation
nodeSelector:
disktype: hdd
- 1
준비
및 활성 상태 프로브 덮어쓰기를 사용하여프로브
처리기와 관련된 필드를 제외하고 Kubernetes API에 지정된 대로 배포 컨테이너에서 프로브의 모든 필드를 덮어쓸 수 있습니다.exec
,grpc
,httpGet
,tcpSocket
.
추가 리소스