4.2. 공통 설정 옵션
미터링은 더 이상 사용되지 않는 기능입니다. 더 이상 사용되지 않는 기능은 여전히 OpenShift Container Platform에 포함되어 있으며 계속 지원됩니다. 그러나 이 기능은 향후 릴리스에서 제거될 예정이므로 새로운 배포에는 사용하지 않는 것이 좋습니다.
OpenShift Container Platform에서 더 이상 사용되지 않거나 삭제된 주요 기능의 최신 목록은 OpenShift Container Platform 릴리스 노트에서 더 이상 사용되지 않고 삭제된 기능 섹션을 참조하십시오.
4.2.1. 리소스 요청 및 제한
Pod 및 볼륨의 CPU, 메모리 또는 스토리지 리소스 요청 및/또는 제한을 조정할 수 있습니다. 아래 default-resource-limits.yaml
은 각 구성 요소에 대한 리소스 요청 및 제한 설정의 예를 제공합니다.
apiVersion: metering.openshift.io/v1 kind: MeteringConfig metadata: name: "operator-metering" spec: reporting-operator: spec: resources: limits: cpu: 1 memory: 500Mi requests: cpu: 500m memory: 100Mi presto: spec: coordinator: resources: limits: cpu: 4 memory: 4Gi requests: cpu: 2 memory: 2Gi worker: replicas: 0 resources: limits: cpu: 8 memory: 8Gi requests: cpu: 4 memory: 2Gi hive: spec: metastore: resources: limits: cpu: 4 memory: 2Gi requests: cpu: 500m memory: 650Mi storage: class: null create: true size: 5Gi server: resources: limits: cpu: 1 memory: 1Gi requests: cpu: 500m memory: 500Mi
4.2.2. 노드 선택기
특정 노드 집합에서 미터링 구성 요소를 실행할 수 있습니다. 미터링 구성 요소에서 nodeSelector
를 설정하여 구성 요소가 예약된 위치를 제어합니다. 아래 node-selectors.yaml
파일은 각 구성 요소에 대한 노드 선택기를 설정하는 예를 제공합니다.
피연산자 Pod에 대한 특정 노드 선택기를 구성하기 전에 openshift.io/node-selector: ""
네임스페이스 주석을 미터링 네임스페이스 YAML 파일에 추가합니다. 주석 값으로 ""
를 지정합니다.
apiVersion: metering.openshift.io/v1 kind: MeteringConfig metadata: name: "operator-metering" spec: reporting-operator: spec: nodeSelector: "node-role.kubernetes.io/infra": "" 1 presto: spec: coordinator: nodeSelector: "node-role.kubernetes.io/infra": "" 2 worker: nodeSelector: "node-role.kubernetes.io/infra": "" 3 hive: spec: metastore: nodeSelector: "node-role.kubernetes.io/infra": "" 4 server: nodeSelector: "node-role.kubernetes.io/infra": "" 5
피연산자 Pod에 대한 특정 노드 선택기를 구성하기 전에 openshift.io/node-selector: ""
네임스페이스 주석을 미터링 네임스페이스 YAML 파일에 추가합니다. 프로젝트에 openshift.io/node-selector
주석이 설정되어 있으면 해당 값은 클러스터 전체 Scheduler
오브젝트에서 spec.defaultNodeSelector
필드의 값보다 우선하여 사용됩니다.
검증
다음 점검 중 하나를 수행하여 미터링 노드 선택기를 확인할 수 있습니다.
MeteringConfig
사용자 정의 리소스에 구성된 노드의 IP에 미터링의 모든 Pod가 올바르게 예약되어 있는지 확인합니다.openshift-metering
네임스페이스의 모든 Pod를 확인합니다.$ oc --namespace openshift-metering get pods -o wide
출력에는
openshift-metering
네임스페이스에서 실행되는 각 Pod의NODE
및 해당IP
가 표시됩니다.출력 예
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES hive-metastore-0 1/2 Running 0 4m33s 10.129.2.26 ip-10-0-210-167.us-east-2.compute.internal <none> <none> hive-server-0 2/3 Running 0 4m21s 10.128.2.26 ip-10-0-150-175.us-east-2.compute.internal <none> <none> metering-operator-964b4fb55-4p699 2/2 Running 0 7h30m 10.131.0.33 ip-10-0-189-6.us-east-2.compute.internal <none> <none> nfs-server 1/1 Running 0 7h30m 10.129.2.24 ip-10-0-210-167.us-east-2.compute.internal <none> <none> presto-coordinator-0 2/2 Running 0 4m8s 10.131.0.35 ip-10-0-189-6.us-east-2.compute.internal <none> <none> reporting-operator-869b854c78-8g2x5 1/2 Running 0 7h27m 10.128.2.25 ip-10-0-150-175.us-east-2.compute.internal <none> <none>
openshift-metering
네임스페이스의 노드를 클러스터의 각 노드NAME
과 비교합니다.$ oc get nodes
출력 예
NAME STATUS ROLES AGE VERSION ip-10-0-147-106.us-east-2.compute.internal Ready master 14h v1.21.0+6025c28 ip-10-0-150-175.us-east-2.compute.internal Ready worker 14h v1.21.0+6025c28 ip-10-0-175-23.us-east-2.compute.internal Ready master 14h v1.21.0+6025c28 ip-10-0-189-6.us-east-2.compute.internal Ready worker 14h v1.21.0+6025c28 ip-10-0-205-158.us-east-2.compute.internal Ready master 14h v1.21.0+6025c28 ip-10-0-210-167.us-east-2.compute.internal Ready worker 14h v1.21.0+6025c28
MeteringConfig
사용자 정의 리소스의 노드 선택기 구성이 미터링 피연산자 Pod가 예약되지 않도록 클러스터 전체 노드 선택기 설정을 적용하지 않는지 확인합니다.기본적으로 Pod 예약 위치를 표시하는
spec.defaultNodeSelector
필드에 대해 클러스터 전체Scheduler
오브젝트를 확인합니다.$ oc get schedulers.config.openshift.io cluster -o yaml