Kubernetes API 우선순위 및 공정성 설정

Red Hat OpenShift on IBM Cloud 클러스터에는 API 서버에 대한 동시 요청을 처리하고 트래픽 과부하를 방지하기 위한 기본 설정이 있습니다. 클러스터의 API 서버에 작성되는 요청에 대해 고유의 플로우 스키마 및 우선순위 레벨을 구성할 수 있습니다. 자세한 내용은 ‘ Kubernetes ’ 문서의 ‘API 우선순위 및 공정성’ 항목을 참조하십시오.

예를 들어, 프로덕션에서 중요한 앱을 실행하는 사용자 또는 네임스페이스가 있을 수 있습니다. 플로우 스키마 및 우선순위를 작성하여 중요한 앱이 클러스터의 다른 앱보다 요청을 이행하기 위해 API 서버에 대해 더 높은 우선순위를 갖도록 할 수 있습니다.

기본 플로우 스키마 및 우선순위 레벨 검토

Red Hat OpenShift on IBM Cloud는 Kubernetes에서 기본 설정 외에 특정 기본 플로우 스키마 및 우선순위 레벨을 설정합니다.

기본 플로우 스키마 및 우선순위 레벨
플로우 스키마 요청이 발생하는 리소스 우선순위 레벨
apiserver-health Kubernetes API 서버 상태 리소스 이러한 리소스에 대한 사용자 정의 우선순위 레벨
calico-apiserver-service-accounts 네임스페이스의 서비스 계정을 사용하는 calico-apiserver 네임스페이스의 리소스 kube-system 네임스페이스 서비스 계정과 동일한 우선순위를 가집니다. 이 스키마는 Red Hat OpenShift on IBM Cloud 의 4.16 버전 이상에서 사용할 수 있습니다.
calico-system-service-accounts 네임스페이스의 서비스 계정을 사용하는 calico-system 네임스페이스의 리소스 kube-system 네임스페이스 서비스 계정과 동일한 우선순위를 가집니다.
ibm-admin IBM 클러스터 관리자의 리소스 클러스터 관리자가 요청을 우선순위 제한사항에서 면제합니다.
ibm-system-service-accounts 네임스페이스의 서비스 계정을 사용하는 ibm-system 네임스페이스의 리소스 kube-system 네임스페이스 서비스 계정과 동일한 우선순위
tigera-operator-service-accounts 네임스페이스의 서비스 계정을 사용하는 tigera-operator 네임스페이스의 리소스 kube-system 네임스페이스 서비스 계정과 동일한 우선순위를 가집니다.

사용자 고유의 플로우 스키마 및 우선순위를 작성할 수 있지만 기본 설정을 수정하지는 마십시오. API 요청 우선순위를 수정할 때 클러스터에서 예기치 않은 결과가 발생할 수 있습니다.

단계를 따라 Red Hat OpenShift on IBM Cloud별 플로우 스키마 및 우선순위 레벨 세트를 검토하십시오.

  1. Red Hat OpenShift on IBM Cloud 에 의해 설정된 것을 포함하여 클러스터 내의 모든 플로우 스키마와 해당 우선순위 수준을 나열합니다.
    oc get flowschemas
    
  2. 우선순위 지정된 API 요청을 작성할 수 있는 리소스, 작성될 수 있는 API 요청 유형, 요청이 수정할 수 있는 오브젝트를 포함하여 특정 플로우 스키마의 세부사항을 검토하십시오.
    oc describe flowschema <flow-schema-name>
    

Red Hat OpenShift on IBM Cloud 작성 우선순위 레벨 구성 보기

Red Hat OpenShift on IBM Cloud는 apiserver-health 리소스에 대한 사용자 정의 우선순위 레벨 구성을 설정합니다.

구성에 대한 세부사항을 보려면 다음 명령을 사용하십시오.

oc get prioritylevelconfiguration apiserver-health
oc describe prioritylevelconfiguration apiserver-health