6장. MachineConfigPool [machineconfiguration.openshift.io/v1]
- 설명
- MachineConfigPool은 MachineConfigs 풀을 설명합니다.
- 유형
-
object
6.1. 사양
속성 | 유형 | 설명 |
---|---|---|
|
| APIVersion은 버전이 지정된 이 오브젝트 표현의 스키마를 정의합니다. 서버는 인식된 스키마를 최신 내부 값으로 변환해야 하며, 인식되지 않는 값을 거부할 수 있습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
|
| kind는 이 오브젝트가 나타내는 REST 리소스에 해당하는 문자열 값입니다. 서버는 클라이언트에서 요청을 제출한 끝점에서 이를 유추할 수 있습니다. CamelCase로 업데이트할 수 없습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| 표준 오브젝트의 메타데이터입니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata | |
|
| MachineConfigPoolSpec은 MachineConfigPool 리소스의 사양입니다. |
|
| MachineConfigPoolStatus는 MachineConfigPool 리소스의 상태입니다. |
6.1.1. .spec
- 설명
- MachineConfigPoolSpec은 MachineConfigPool 리소스의 사양입니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| 머신 구성 풀의 대상 MachineConfig 오브젝트입니다. |
|
| machineConfigSelector는 MachineConfig에 대한 라벨 선택기를 지정합니다. 레이블 및 선택기 작동 방법에 대한 https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/ 를 참조하십시오. |
|
| maxUnavailable은 해당 풀에서 정수 수 또는 백분율로, 업데이트 중에 사용할 수 없음으로 이동할 수 있는 노드를 정의합니다. 여기에는 사용자 시작 코드, 실패한 노드 등을 포함하여 어떠한 이유로든 사용할 수 없는 노드가 포함됩니다. 기본값은 1입니다. 1보다 큰 값은 업데이트 중에 사용할 수 없는 여러 노드를 의미하며, 이는 나머지 노드에서 워크로드 부하에 영향을 미칠 수 있습니다. 업데이트를 중지하려면 이 값을 0으로 설정할 수 없습니다(기본값은 1); 업데이트를 중지하려면 대신 '중지됨' 속성을 사용합니다. drain은 maxUnavailable이 하나 이상인 경우에도 etcd 쿼럼 가드와 같은 PDB (Pod Disruption Budgets)를 준수합니다. |
|
| nodeSelector는 머신의 라벨 선택기를 지정합니다. |
|
| paused는 이 머신 구성 풀의 변경 사항을 중지해야 하는지 여부를 지정합니다. 여기에는 새로운 원하는MachineConfig 생성 및 머신 업데이트가 포함됩니다. |
6.1.2. .spec.configuration
- 설명
- 머신 구성 풀의 대상 MachineConfig 오브젝트입니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| 참조의 API 버전입니다. |
|
| 전체 오브젝트 대신 오브젝트 조각을 참조하는 경우 이 문자열에는 desiredState.manifest.containers[2]와 같은 유효한 JSON/Go 필드 액세스 문이 포함되어야 합니다. 예를 들어 오브젝트 참조가 Pod 내의 컨테이너에 대한 경우 "spec.containers{name}"과 같은 값을 사용합니다(여기서 "name"은 이벤트를 트리거한 컨테이너 이름을 참조하거나 컨테이너 이름이 "spec.containers[2]"이 Pod에서 인덱스 2가 있는 컨테이너를 참조하는 경우). 이 구문은 오브젝트의 일부를 참조하는 잘 정의된 방법을 사용하는 경우에만 선택됩니다. TODO: 이 설계는 최종적이지 않으며 이 필드는 향후 변경될 수 있습니다. |
|
| 일종의 추천입니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
|
| 추천자의 이름입니다. 자세한 내용은 https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names |
|
| 참조의 네임스페이스입니다. 자세한 내용은 https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/ |
|
| 이 참조가 수행되는 특정 resourceVersion(있는 경우). 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency |
|
|
source는 |
|
| ObjectReference에는 참조된 오브젝트를 검사하거나 수정할 수 있는 충분한 정보가 포함되어 있습니다. |
|
| 참조의 UID입니다. 자세한 내용은 https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids |
6.1.3. .spec.configuration.source
- 설명
-
source는
콘텐츠에
지정된 단일 MachineConfig 오브젝트를 생성하는 데 사용된 MachineConfig 오브젝트 목록입니다. - 유형
-
array
6.1.4. .spec.configuration.source[]
- 설명
- ObjectReference에는 참조된 오브젝트를 검사하거나 수정할 수 있는 충분한 정보가 포함되어 있습니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| 참조의 API 버전입니다. |
|
| 전체 오브젝트 대신 오브젝트 조각을 참조하는 경우 이 문자열에는 desiredState.manifest.containers[2]와 같은 유효한 JSON/Go 필드 액세스 문이 포함되어야 합니다. 예를 들어 오브젝트 참조가 Pod 내의 컨테이너에 대한 경우 "spec.containers{name}"과 같은 값을 사용합니다(여기서 "name"은 이벤트를 트리거한 컨테이너 이름을 참조하거나 컨테이너 이름이 "spec.containers[2]"이 Pod에서 인덱스 2가 있는 컨테이너를 참조하는 경우). 이 구문은 오브젝트의 일부를 참조하는 잘 정의된 방법을 사용하는 경우에만 선택됩니다. TODO: 이 설계는 최종적이지 않으며 이 필드는 향후 변경될 수 있습니다. |
|
| 일종의 추천입니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
|
| 추천자의 이름입니다. 자세한 내용은 https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names |
|
| 참조의 네임스페이스입니다. 자세한 내용은 https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/ |
|
| 이 참조가 수행되는 특정 resourceVersion(있는 경우). 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency |
|
| 참조의 UID입니다. 자세한 내용은 https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids |
6.1.5. .spec.machineConfigSelector
- 설명
- machineConfigSelector는 MachineConfig에 대한 라벨 선택기를 지정합니다. 레이블 및 선택기 작동 방법에 대한 https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/ 를 참조하십시오.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| matchExpressions는 라벨 선택기 요구 사항 목록입니다. 요구 사항은 AND로 설정됩니다. |
|
| 레이블 선택기 요구 사항은 값, 키 및 키와 관련된 연산자를 포함하는 선택기입니다. |
|
| matchLabels는 {key,value} 쌍으로 구성된 맵입니다. matchLabels 맵의 단일 {key,value}는 키 필드가 "key"이고, 연산자는 "In"이고, values 배열에는 "value"만 포함된 matchExpressions 요소와 동일합니다. 요구 사항은 AND로 설정됩니다. |
6.1.6. .spec.machineConfigSelector.matchExpressions
- 설명
- matchExpressions는 라벨 선택기 요구 사항 목록입니다. 요구 사항은 AND로 설정됩니다.
- 유형
-
array
6.1.7. .spec.machineConfigSelector.matchExpressions[]
- 설명
- 레이블 선택기 요구 사항은 값, 키 및 키와 관련된 연산자를 포함하는 선택기입니다.
- 유형
-
object
- 필수 항목
-
key
-
operator
-
속성 | 유형 | 설명 |
---|---|---|
|
| key는 선택기가 적용되는 라벨 키입니다. |
|
| Operator는 일련의 값과의 키 관계를 나타냅니다. 유효한 연산자는 In, NotIn, Exists 및 DoesNotExist입니다. |
|
| 값은 문자열 값의 배열입니다. 연산자가 In 또는 NotIn인 경우 값 배열은 비어 있지 않아야 합니다. 연산자가 Exists 또는 DoesNotExist인 경우 값 배열은 비어 있어야 합니다. 이 배열은 전략적 병합 패치 중에 교체됩니다. |
6.1.8. .spec.nodeSelector
- 설명
- nodeSelector는 머신의 라벨 선택기를 지정합니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| matchExpressions는 라벨 선택기 요구 사항 목록입니다. 요구 사항은 AND로 설정됩니다. |
|
| 레이블 선택기 요구 사항은 값, 키 및 키와 관련된 연산자를 포함하는 선택기입니다. |
|
| matchLabels는 {key,value} 쌍으로 구성된 맵입니다. matchLabels 맵의 단일 {key,value}는 키 필드가 "key"이고, 연산자는 "In"이고, values 배열에는 "value"만 포함된 matchExpressions 요소와 동일합니다. 요구 사항은 AND로 설정됩니다. |
6.1.9. .spec.nodeSelector.matchExpressions
- 설명
- matchExpressions는 라벨 선택기 요구 사항 목록입니다. 요구 사항은 AND로 설정됩니다.
- 유형
-
array
6.1.10. .spec.nodeSelector.matchExpressions[]
- 설명
- 레이블 선택기 요구 사항은 값, 키 및 키와 관련된 연산자를 포함하는 선택기입니다.
- 유형
-
object
- 필수 항목
-
key
-
operator
-
속성 | 유형 | 설명 |
---|---|---|
|
| key는 선택기가 적용되는 라벨 키입니다. |
|
| Operator는 일련의 값과의 키 관계를 나타냅니다. 유효한 연산자는 In, NotIn, Exists 및 DoesNotExist입니다. |
|
| 값은 문자열 값의 배열입니다. 연산자가 In 또는 NotIn인 경우 값 배열은 비어 있지 않아야 합니다. 연산자가 Exists 또는 DoesNotExist인 경우 값 배열은 비어 있어야 합니다. 이 배열은 전략적 병합 패치 중에 교체됩니다. |
6.1.11. .status
- 설명
- MachineConfigPoolStatus는 MachineConfigPool 리소스의 상태입니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| 조건은 현재 상태에 대한 사용 가능한 최신 관찰을 나타냅니다. |
|
| MachineConfigPoolCondition에는 MachineConfigPool에 대한 조건 정보가 포함되어 있습니다. |
|
| 구성은 머신 구성 풀의 현재 MachineConfig 오브젝트를 나타냅니다. |
|
| degradedMachineCount는 성능이 저하된 머신의 총 수를 나타냅니다(또는 호환되지 않음). 구성을 적용하는 데 실패한 경우 노드가 성능이 저하된 것으로 표시됩니다. |
|
| MACHINECOUNT는 머신 구성 풀의 총 머신 수를 나타냅니다. |
|
| observedGeneration은 컨트롤러에서 관찰하는 생성을 나타냅니다. |
|
| readyMachineCount는 풀을 대상으로 하는 준비된 총 머신 수를 나타냅니다. |
|
| unavailableMachineCount는 풀에서 대상으로 하는 사용 불가능한 (준비되지 않은) 머신의 총 수를 나타냅니다. 상태가 업데이트되었거나 NodeReady 조건이 false인 경우 노드를 사용할 수 없음으로 표시됩니다. |
|
| UPDATEDMACHINECOUNT는 Pool에서 대상으로 하는 총 머신 수를 나타내는 CurrentMachineConfig를 해당 구성으로 설정합니다. |
6.1.12. .status.conditions
- 설명
- 조건은 현재 상태에 대한 사용 가능한 최신 관찰을 나타냅니다.
- 유형
-
array
6.1.13. .status.conditions[]
- 설명
- MachineConfigPoolCondition에는 MachineConfigPool에 대한 조건 정보가 포함되어 있습니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
| `` | lastTransitionTime은 이 조건의 마지막 상태 변경에 해당하는 타임스탬프입니다. |
|
| message는 마지막 전환에 대한 세부 정보에 대해 사람이 읽을 수 있는 설명으로, 이유를 보완합니다. |
|
| 이유는 조건의 마지막 전환에 대한 간단한 머신에서 읽을 수 있는 설명입니다. |
|
| 조건의 상태, ('True', 'False', '알 수 없음') 중 하나입니다. |
|
| 조건의 유형 (''Done', 'Updating', 'Failed') |
6.1.14. .status.configuration
- 설명
- 구성은 머신 구성 풀의 현재 MachineConfig 오브젝트를 나타냅니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| 참조의 API 버전입니다. |
|
| 전체 오브젝트 대신 오브젝트 조각을 참조하는 경우 이 문자열에는 desiredState.manifest.containers[2]와 같은 유효한 JSON/Go 필드 액세스 문이 포함되어야 합니다. 예를 들어 오브젝트 참조가 Pod 내의 컨테이너에 대한 경우 "spec.containers{name}"과 같은 값을 사용합니다(여기서 "name"은 이벤트를 트리거한 컨테이너 이름을 참조하거나 컨테이너 이름이 "spec.containers[2]"이 Pod에서 인덱스 2가 있는 컨테이너를 참조하는 경우). 이 구문은 오브젝트의 일부를 참조하는 잘 정의된 방법을 사용하는 경우에만 선택됩니다. TODO: 이 설계는 최종적이지 않으며 이 필드는 향후 변경될 수 있습니다. |
|
| 일종의 추천입니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
|
| 추천자의 이름입니다. 자세한 내용은 https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names |
|
| 참조의 네임스페이스입니다. 자세한 내용은 https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/ |
|
| 이 참조가 수행되는 특정 resourceVersion(있는 경우). 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency |
|
|
source는 |
|
| ObjectReference에는 참조된 오브젝트를 검사하거나 수정할 수 있는 충분한 정보가 포함되어 있습니다. |
|
| 참조의 UID입니다. 자세한 내용은 https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids |
6.1.15. .status.configuration.source
- 설명
-
source는
콘텐츠에
지정된 단일 MachineConfig 오브젝트를 생성하는 데 사용된 MachineConfig 오브젝트 목록입니다. - 유형
-
array
6.1.16. .status.configuration.source[]
- 설명
- ObjectReference에는 참조된 오브젝트를 검사하거나 수정할 수 있는 충분한 정보가 포함되어 있습니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| 참조의 API 버전입니다. |
|
| 전체 오브젝트 대신 오브젝트 조각을 참조하는 경우 이 문자열에는 desiredState.manifest.containers[2]와 같은 유효한 JSON/Go 필드 액세스 문이 포함되어야 합니다. 예를 들어 오브젝트 참조가 Pod 내의 컨테이너에 대한 경우 "spec.containers{name}"과 같은 값을 사용합니다(여기서 "name"은 이벤트를 트리거한 컨테이너 이름을 참조하거나 컨테이너 이름이 "spec.containers[2]"이 Pod에서 인덱스 2가 있는 컨테이너를 참조하는 경우). 이 구문은 오브젝트의 일부를 참조하는 잘 정의된 방법을 사용하는 경우에만 선택됩니다. TODO: 이 설계는 최종적이지 않으며 이 필드는 향후 변경될 수 있습니다. |
|
| 일종의 추천입니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
|
| 추천자의 이름입니다. 자세한 내용은 https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names |
|
| 참조의 네임스페이스입니다. 자세한 내용은 https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/ |
|
| 이 참조가 수행되는 특정 resourceVersion(있는 경우). 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency |
|
| 참조의 UID입니다. 자세한 내용은 https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids |