4.8. 머신 자동 스케일러 정보
머신 자동 스케일러는 OpenShift Container Platform 클러스터에 배포하는 머신 세트의 Machine 수를 조정합니다. 기본 worker
머신 세트와 사용자가 만든 다른 머신 세트를 모두 확장할 수 있습니다. 머신 자동 스케일러는 클러스터에 더 많은 배포를 지원하기에 충분한 리소스가 없으면 Machine을 추가합니다. 최소 또는 최대 인스턴스 수와 같은 MachineAutoscaler
리소스의 값에 대한 모든 변경 사항은 대상이 되는 머신 세트에 즉시 적용됩니다.
머신을 확장하려면 클러스터 자동 스케일러의 머신 자동 스케일러를 배포해야합니다. 클러스터 자동 스케일러는 머신 자동 스케일러가 설정한 머신 세트의 주석을 사용하여 확장할 수있는 리소스를 결정합니다. 머신 자동 스케일러도 정의하지 않고 클러스터 자동 스케일러를 정의하면 클러스터 자동 스케일러는 클러스터를 확장하지 않습니다.
4.8.1. MachineAutoscaler 리소스 정의
이 MachineAutoscaler
리소스 정의는 머신 자동 스케일러의 매개 변수 및 샘플 값을 표시합니다.
apiVersion: "autoscaling.openshift.io/v1beta1" kind: "MachineAutoscaler" metadata: name: "worker-us-east-1a" 1 namespace: "openshift-machine-api" spec: minReplicas: 1 2 maxReplicas: 12 3 scaleTargetRef: 4 apiVersion: machine.openshift.io/v1beta1 kind: MachineSet 5 name: worker-us-east-1a 6
- 1
- 머신 자동 스케일러 이름을 지정합니다. 이 머신 자동 스케일러가 스케일링하는 머신 세트 보다 쉽게 식별할 수 있도록 스케일링할 머신 세트의 이름을 지정하거나 포함합니다. 머신 세트 이름의 형식은 <
clusterid>-<machineset>-<region>입니다
. - 2
- 클러스터 자동 스케일러가 클러스터 스케일링을 시작한 후 지정된 영역에 남아 있어야하는 지정된 유형의 최소 머신 수를 지정하십시오. AWS, GCP, Azure, RHOSP, vSphere에서 실행중인 경우 이 값을
0
으로 설정할 수 있습니다. 다른 공급 업체의 경우 이 값을0
으로 설정하지 마십시오.특수 워크로드에 사용되는 비용이 많이 드는 하드웨어 또는 대규모 머신으로 머신 세트를 확장하는 등의 사용 사례에 이 값을
0
으로 설정하여 비용을 절감할 수 있습니다. 머신을 사용하지 않는 경우 클러스터 자동 스케일러가 머신 세트를 0으로 축소합니다.중요설치 관리자 프로비저닝 인프라의 OpenShift Container Platform 설치 프로세스 중에 생성된 세 개의 컴퓨팅 머신 세트의
spec.minReplicas
값을0
으로 설정하지 마십시오. - 3
- 클러스터 자동 스케일러가 클러스터 스케일링을 초기화한 후 지정된 영역에 배포할 수 있는 지정된 유형의 최대 머신 수를 지정합니다.
ClusterAutoscaler
리소스 정의에서maxNodesTotal
값이 머신 자동 스케일러가 머신 수를 배포할 수 있는 충분한 크기의 값임을 확인합니다. - 4
- 이 섹션에서는 스케일링할 기존 머신 세트를 설명하는 값을 지정합니다.
- 5
kind
매개 변수 값은 항상MachineSet
입니다.- 6
metadata.name
매개 변수 값에 표시된 것처럼name
값은 기존 머신 세트의 이름과 일치해야합니다.
4.8.2. 머신 자동 스케일러 배포
머신 자동 스케일러를 배포하려면 MachineAutoscaler
리소스의 인스턴스를 만듭니다.
절차
-
사용자 정의된 리소스 정의가 포함된
MachineAutoscaler
리소스의 YAML 파일을 생성합니다. 클러스터에서 리소스를 생성합니다.
$ oc create -f <filename>.yaml 1
- 1
<filename>
은 사용자 정의 리소스 파일의 이름입니다.