3.2. TektonConfig CR을 사용한 성능 튜닝
TektonConfig
CR(사용자 정의 리소스)의 .spec.pipeline.performance
매개변수 아래에 있는 필드를 수정하여 OpenShift Pipelines 컨트롤러의 HA(고가용성) 지원 및 성능 구성을 변경할 수 있습니다.
TektonConfig 성능 필드의 예
apiVersion: operator.tekton.dev/v1alpha1 kind: TektonConfig metadata: name: config spec: pipeline: performance: disable-ha: false buckets: 7 replicas: 5 threads-per-controller: 2 kube-api-qps: 5.0 kube-api-burst: 10
모든 필드는 선택 사항입니다. 이를 설정하면 Red Hat OpenShift Pipelines Operator에 대부분의 필드가 openshift-pipelines-controller
컨테이너의 openshift-pipelines-controller
배포에 인수로 포함됩니다. OpenShift Pipelines Operator는 openshift-pipelines
네임스페이스의 config-leader-election
구성 맵의 buckets
필드도 업데이트합니다.
값을 지정하지 않으면 OpenShift Pipelines Operator에서 해당 필드를 업데이트하지 않고 OpenShift Pipelines 컨트롤러의 기본값을 적용합니다.
성능 필드를 수정하거나 제거하는 경우 OpenShift Pipelines Operator는 openshift-pipelines-controller
배포 및 config-leader-election
구성 맵( buckets
필드가 변경된 경우) 구성 맵을 업데이트하고 openshift-pipelines-controller
Pod를 다시 생성합니다.
HA(고가용성) 모드는 파이프라인 실행 및 작업 실행 정의를 기반으로 Pod를 생성하고 시작하는 OpenShift Pipelines 컨트롤러에 적용됩니다. HA 모드가 없으면 단일 Pod가 이러한 작업을 실행하여 로드가 길어지고 상당한 지연이 발생할 수 있습니다.
HA 모드에서 OpenShift Pipelines는 여러 Pod(복제본)를 사용하여 이러한 작업을 실행합니다. 처음에는 OpenShift Pipelines에서 모든 컨트롤러 작업을 버킷에 할당합니다. 각 복제본은 하나 이상의 버킷에서 작업을 선택합니다. 두 복제본이 동시에 동일한 작업을 선택할 수 있는 경우 컨트롤러는 내부적으로 이 작업을 실행하는 리더를 결정합니다.
HA 모드는 Pod를 생성한 후 작업 실행 실행에 영향을 미치지 않습니다.
이름 | 설명 | OpenShift Pipelines 컨트롤러의 기본값 |
---|---|---|
| HA(고가용성) 모드를 활성화하거나 비활성화합니다. 기본적으로 HA 모드는 활성화됩니다. |
|
|
HA 모드에서 컨트롤러 작업을 처리하는 데 사용되는 버킷 수입니다. 최대값은 |
|
|
HA 모드에서 컨트롤러 작업을 처리하기 위해 생성된 Pod 수입니다. 이 값을 |
|
| OpenShift Pipelines 컨트롤러의 작업 대기열이 처리될 때 사용할 스레드(작업자) 수입니다. |
|
| REST 클라이언트에서 클러스터 마스터에 대한 초당 최대 쿼리(QPS)입니다. |
|
| 스로틀의 최대 버스트입니다. |
|
OpenShift Pipelines Operator는 OpenShift Pipelines 컨트롤러의 복제본 수를 제어하지 않습니다. 배포의 replicas
설정에 따라 복제본 수가 결정됩니다. 예를 들어 복제본 수를 3으로 변경하려면 다음 명령을 입력합니다.
$ oc --namespace openshift-pipelines scale deployment openshift-pipelines-controller --replicas=3
OpenShift Pipelines 컨트롤러에서 kube-api-qps
및 kube-api-burst
필드에 2를 곱합니다. 예를 들어 kube-api-qps
및 kube-api-burst
값이 10
이면 실제 QPS 및 burst 값은 20
이 됩니다.