4장. ControlPlaneMachineSet [machine.openshift.io/v1]
- 설명
- ControlPlaneMachineSet을 사용하면 지정된 수의 컨트롤 플레인 시스템 복제본이 언제든지 실행됩니다. 호환성 수준 1: 최소 12 개월 또는 3 개의 마이너 릴리스 (더 긴 버전) 동안 주요 릴리스 내에서 사용할 수 있습니다.
- 유형
-
object
4.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 | |
|
| ControlPlaneMachineSet은 ControlPlaneMachineSet의 구성을 나타냅니다. |
|
| ControlPlaneMachineSetStatus는 ControlPlaneMachineSet CRD의 상태를 나타냅니다. |
4.1.1. .spec
- 설명
- ControlPlaneMachineSet은 ControlPlaneMachineSet의 구성을 나타냅니다.
- 유형
-
object
- 필수 항목
-
replicas
-
선택기
-
템플릿
-
속성 | 유형 | 설명 |
---|---|---|
|
| 복제본은 이 ControlPlaneMachineSet에서 생성해야 하는 컨트롤 플레인 머신 수를 정의합니다. 이 필드는 변경할 수 없으며 클러스터 설치 후에는 변경할 수 없습니다. ControlPlaneMachineSet은 3개 또는 5개의 노드 컨트롤 플레인, 3 및 5에서만 작동합니다. |
|
| 머신의 라벨 선택기입니다. 이 선택기에서 선택한 기존 머신은 이 ControlPlaneMachineSet의 영향을 받는 머신이 됩니다. 템플릿의 레이블과 일치해야 합니다. 이 필드는 리소스를 생성한 후 변경할 수 없는 것으로 간주됩니다. |
|
| state는 ControlPlaneMachineSet이 Active 또는 Inactive인지 여부를 정의합니다. Inactive인 경우 ControlPlaneMachineSet은 클러스터 내의 머신 상태에 대해 작업을 수행하지 않습니다. Active인 경우 ControlPlaneMachineSet은 머신을 조정하고 필요에 따라 머신을 업데이트합니다. 활성 후에는 ControlPlaneMachineSet을 Inactive로 만들 수 없습니다. 추가 작업을 방지하려면 ControlPlaneMachineSet을 제거하십시오. |
|
| strategy는 ProviderSpec의 변경 사항을 감지하면 ControlPlaneMachineSet이 머신을 업데이트하는 방법을 정의합니다. |
|
| 템플릿은 이 ControlPlaneMachineSet에서 생성할 컨트롤 플레인 머신을 설명합니다. |
4.1.2. .spec.selector
- 설명
- 머신의 라벨 선택기입니다. 이 선택기에서 선택한 기존 머신은 이 ControlPlaneMachineSet의 영향을 받는 머신이 됩니다. 템플릿의 레이블과 일치해야 합니다. 이 필드는 리소스를 생성한 후 변경할 수 없는 것으로 간주됩니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| matchExpressions는 라벨 선택기 요구 사항 목록입니다. 요구 사항은 AND로 설정됩니다. |
|
| 레이블 선택기 요구 사항은 값, 키 및 키와 관련된 연산자를 포함하는 선택기입니다. |
|
| matchLabels는 {key,value} 쌍으로 구성된 맵입니다. matchLabels 맵의 단일 {key,value}는 키 필드가 "key"이고, 연산자는 "In"이고, values 배열에는 "value"만 포함된 matchExpressions 요소와 동일합니다. 요구 사항은 AND로 설정됩니다. |
4.1.3. .spec.selector.matchExpressions
- 설명
- matchExpressions는 라벨 선택기 요구 사항 목록입니다. 요구 사항은 AND로 설정됩니다.
- 유형
-
array
4.1.4. .spec.selector.matchExpressions[]
- 설명
- 레이블 선택기 요구 사항은 값, 키 및 키와 관련된 연산자를 포함하는 선택기입니다.
- 유형
-
object
- 필수 항목
-
key
-
operator
-
속성 | 유형 | 설명 |
---|---|---|
|
| key는 선택기가 적용되는 라벨 키입니다. |
|
| Operator는 일련의 값과의 키 관계를 나타냅니다. 유효한 연산자는 In, NotIn, Exists 및 DoesNotExist입니다. |
|
| 값은 문자열 값의 배열입니다. 연산자가 In 또는 NotIn인 경우 값 배열은 비어 있지 않아야 합니다. 연산자가 Exists 또는 DoesNotExist인 경우 값 배열은 비어 있어야 합니다. 이 배열은 전략적 병합 패치 중에 교체됩니다. |
4.1.5. .spec.strategy
- 설명
- strategy는 ProviderSpec의 변경 사항을 감지하면 ControlPlaneMachineSet이 머신을 업데이트하는 방법을 정의합니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| type은 ControlPlaneMachineSet이 소유한 머신을 업데이트할 때 사용해야 하는 업데이트 전략 유형을 정의합니다. 유효한 값은 "RollingUpdate" 및 "OnDelete"입니다. 현재 기본값은 "RollingUpdate"입니다. |
4.1.6. .spec.template
- 설명
- 템플릿은 이 ControlPlaneMachineSet에서 생성할 컨트롤 플레인 머신을 설명합니다.
- 유형
-
object
- 필수 항목
-
machineType
-
속성 | 유형 | 설명 |
---|---|---|
|
| MachineType은 ControlPlaneMachineSet에서 관리해야 하는 머신 유형을 결정합니다. 현재 유효한 값은 machine_v1beta1_machine_openshift_io입니다. |
|
| OpenShiftMachineV1Beta1Machine은 v1beta1.machine.openshift.io API 그룹에서 머신을 생성하기 위한 템플릿을 정의합니다. |
4.1.7. .spec.template.machines_v1beta1_machine_openshift_io
- 설명
- OpenShiftMachineV1Beta1Machine은 v1beta1.machine.openshift.io API 그룹에서 머신을 생성하기 위한 템플릿을 정의합니다.
- 유형
-
object
- 필수 항목
-
메타데이터
-
spec
-
속성 | 유형 | 설명 |
---|---|---|
|
| FailureDomains는 ControlPlaneMachineSet이 컨트롤 플레인 머신의 균형을 유지해야 하는 실패 도메인 목록(때로 가용성 영역이라고 함)입니다. 이는 템플릿에 지정된 ProviderSpec에 병합됩니다. 이 필드는 배치 정보가 필요하지 않은 플랫폼에서 선택 사항입니다. |
|
| ObjectMeta는 표준 오브젝트 메타데이터입니다. https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata 레이블은 ControlPlaneMachineSet 선택기와 일치해야 합니다. |
|
| spec에는 원하는 컨트롤 플레인 머신 구성이 포함되어 있습니다. 내부 ProviderSpec에는 컨트롤 플레인 머신을 생성하기 위한 플랫폼별 세부 정보가 포함되어 있습니다. ProviderSe는 플랫폼별 실패 도메인 필드와는 별도로 완료되어야 합니다. FailureDomains 필드를 기반으로 머신이 생성될 때 재정의됩니다. |
4.1.8. .spec.template.machines_v1beta1_machine_openshift_io.failureDomains
- 설명
- FailureDomains는 ControlPlaneMachineSet이 컨트롤 플레인 머신의 균형을 유지해야 하는 실패 도메인 목록(때로 가용성 영역이라고 함)입니다. 이는 템플릿에 지정된 ProviderSpec에 병합됩니다. 이 필드는 배치 정보가 필요하지 않은 플랫폼에서 선택 사항입니다.
- 유형
-
object
- 필수 항목
-
platform
-
속성 | 유형 | 설명 |
---|---|---|
|
| AWS는 AWS 플랫폼에 대한 장애 도메인 정보를 구성합니다. |
|
| AWSFailureDomain은 AWS 플랫폼에 대한 장애 도메인 정보를 구성합니다. |
|
| Azure는 Azure 플랫폼에 대한 장애 도메인 정보를 구성합니다. |
|
| AzureFailureDomain은 Azure 플랫폼에 대한 장애 도메인 정보를 구성합니다. |
|
| GCP는 GCP 플랫폼에 대한 장애 도메인 정보를 구성합니다. |
|
| GCPFailureDomain에서 GCP 플랫폼에 대한 장애 도메인 정보 구성 |
|
| Nutanix는 Nutanix 플랫폼에 대한 실패 도메인 정보를 구성합니다. |
|
| NutanixFailureDomainReference는 Nutanix 플랫폼의 실패 도메인을 나타냅니다. |
|
| OpenStack은 OpenStack 플랫폼에 대한 장애 도메인 정보를 구성합니다. |
|
| OpenStackFailureDomain은 OpenStack 플랫폼에 대한 장애 도메인 정보를 구성합니다. |
|
| 플랫폼은 FailureDomain이 나타내는 플랫폼을 식별합니다. 현재 지원되는 값은 AWS, Azure, GCP, OpenStack, VSphere 및 Nutanix입니다. |
|
| vSphere는 VSphere 플랫폼에 대한 장애 도메인 정보를 구성합니다. |
|
| VSphereFailureDomain은 vSphere 플랫폼에 대한 장애 도메인 정보를 구성합니다. |
4.1.9. .spec.template.machines_v1beta1_machine_openshift_io.failureDomains.aws
- 설명
- AWS는 AWS 플랫폼에 대한 장애 도메인 정보를 구성합니다.
- 유형
-
array
4.1.10. .spec.template.machines_v1beta1_machine_openshift_io.failureDomains.aws[]
- 설명
- AWSFailureDomain은 AWS 플랫폼에 대한 장애 도메인 정보를 구성합니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| 배치는 이 인스턴스에 대한 배치 정보를 구성합니다. |
|
| subnet은 이 인스턴스에 사용할 서브넷에 대한 참조입니다. |
4.1.11. .spec.template.machines_v1beta1_machine_openshift_io.failureDomains.aws[].placement
- 설명
- 배치는 이 인스턴스에 대한 배치 정보를 구성합니다.
- 유형
-
object
- 필수 항목
-
availabilityZone
-
속성 | 유형 | 설명 |
---|---|---|
|
| AvailabilityZone은 인스턴스의 가용성 영역입니다. |
4.1.12. .spec.template.machines_v1beta1_machine_openshift_io.failureDomains.aws[].subnet
- 설명
- subnet은 이 인스턴스에 사용할 서브넷에 대한 참조입니다.
- 유형
-
object
- 필수 항목
-
type
-
속성 | 유형 | 설명 |
---|---|---|
|
| 리소스의 ARN입니다. |
|
| 필터는 리소스를 식별하는 데 사용되는 필터 세트입니다. |
|
| AWSResourceFilter는 AWS 리소스를 식별하는 데 사용되는 필터입니다. |
|
| 리소스의 ID입니다. |
|
| type은 참조가 AWS 리소스를 가져오는 방법을 결정합니다. |
4.1.13. .spec.template.machines_v1beta1_machine_openshift_io.failureDomains.aws[].subnet.filters
- 설명
- 필터는 리소스를 식별하는 데 사용되는 필터 세트입니다.
- 유형
-
array
4.1.14. .spec.template.machines_v1beta1_machine_openshift_io.failureDomains.aws[].subnet.filters[]
- 설명
- AWSResourceFilter는 AWS 리소스를 식별하는 데 사용되는 필터입니다.
- 유형
-
object
- 필수 항목
-
name
-
속성 | 유형 | 설명 |
---|---|---|
|
| 필터의 이름입니다. 필터 이름은 대소문자를 구분합니다. |
|
| 값에는 하나 이상의 필터 값이 포함됩니다. 필터 값은 대소문자를 구분합니다. |
4.1.15. .spec.template.machines_v1beta1_machine_openshift_io.failureDomains.azure
- 설명
- Azure는 Azure 플랫폼에 대한 장애 도메인 정보를 구성합니다.
- 유형
-
array
4.1.16. .spec.template.machines_v1beta1_machine_openshift_io.failureDomains.azure[]
- 설명
- AzureFailureDomain은 Azure 플랫폼에 대한 장애 도메인 정보를 구성합니다.
- 유형
-
object
- 필수 항목
-
영역
-
속성 | 유형 | 설명 |
---|---|---|
|
| 서브넷은 VM을 생성할 네트워크 서브넷의 이름입니다. 생략하면 머신 providerSpec 템플릿의 subnet 값이 사용됩니다. |
|
| 가상 머신의 가용성 영역입니다. nil인 경우 가상 시스템을 영역 없음에 배포해야 합니다. |
4.1.17. .spec.template.machines_v1beta1_machine_openshift_io.failureDomains.gcp
- 설명
- GCP는 GCP 플랫폼에 대한 장애 도메인 정보를 구성합니다.
- 유형
-
array
4.1.18. .spec.template.machines_v1beta1_machine_openshift_io.failureDomains.gcp[]
- 설명
- GCPFailureDomain에서 GCP 플랫폼에 대한 장애 도메인 정보 구성
- 유형
-
object
- 필수 항목
-
영역
-
속성 | 유형 | 설명 |
---|---|---|
|
| zone은 GCP 머신 공급자가 VM을 생성할 영역입니다. |
4.1.19. .spec.template.machines_v1beta1_machine_openshift_io.failureDomains.nutanix
- 설명
- Nutanix는 Nutanix 플랫폼에 대한 실패 도메인 정보를 구성합니다.
- 유형
-
array
4.1.20. .spec.template.machines_v1beta1_machine_openshift_io.failureDomains.nutanix[]
- 설명
- NutanixFailureDomainReference는 Nutanix 플랫폼의 실패 도메인을 나타냅니다.
- 유형
-
object
- 필수 항목
-
name
-
속성 | 유형 | 설명 |
---|---|---|
|
| nutanix 시스템 공급자가 VM을 생성할 실패 도메인의 이름입니다. 실패 도메인은 클러스터의 config.openshift.io/Infrastructure 리소스에 정의됩니다. |
4.1.21. .spec.template.machines_v1beta1_machine_openshift_io.failureDomains.openstack
- 설명
- OpenStack은 OpenStack 플랫폼에 대한 장애 도메인 정보를 구성합니다.
- 유형
-
array
4.1.22. .spec.template.machines_v1beta1_machine_openshift_io.failureDomains.openstack[]
- 설명
- OpenStackFailureDomain은 OpenStack 플랫폼에 대한 장애 도메인 정보를 구성합니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| AvailabilityZone은 OpenStack 머신 공급자가 VM을 생성할 nova 가용성 영역입니다. 지정하지 않으면 nova 구성에 지정된 기본 가용성 영역에 VM이 생성됩니다. 가용성 영역 이름에는 다음이 포함되어야 합니다. 관리 사용자가 서버 생성에서 인스턴스가 시작되는 호스트를 지정하는 데 사용하기 때문입니다. 또한 공백을 포함하지 않아야 합니다. 추가 정보는 kubernetes/cloud-provider-openstack#1379를 참조하십시오. 가용성 영역 이름의 최대 길이는 라벨 제한에 따라 63입니다. |
|
| rootVolume에는 OpenStack 시스템 공급자가 VM에 연결된 루트 볼륨을 생성하는 데 사용할 설정이 포함되어 있습니다. 지정하지 않으면 루트 볼륨이 생성되지 않습니다. |
4.1.23. .spec.template.machines_v1beta1_machine_openshift_io.failureDomains.openstack[].rootVolume
- 설명
- rootVolume에는 OpenStack 시스템 공급자가 VM에 연결된 루트 볼륨을 생성하는 데 사용할 설정이 포함되어 있습니다. 지정하지 않으면 루트 볼륨이 생성되지 않습니다.
- 유형
-
object
- 필수 항목
-
volumeType
-
속성 | 유형 | 설명 |
---|---|---|
|
| availabilityZone은 루트 볼륨이 생성될 Cinder 가용성 영역을 지정합니다. 지정하지 않으면 Cinder 구성의 볼륨 유형으로 지정된 가용성 영역에 루트 볼륨이 생성됩니다. 볼륨 유형(OpenStack 클러스터에서 구성)이 가용성 영역을 지정하지 않으면 루트 볼륨이 cinder 구성에 지정된 기본 가용성 영역에 생성됩니다. 자세한 내용은 https://docs.openstack.org/cinder/latest/admin/availability-zone-type.html 을 참조하십시오. cross_az_attach 구성 옵션을 false로 설정하여 OpenStack 클러스터를 배포하는 경우 루트 볼륨이 VM(OpenStackFailureDomain.AvailabilityZone에 의해 정의됨)과 동일한 가용성 영역에 있어야 합니다. 가용성 영역 이름에는 공백을 포함하지 않아야 합니다. 그렇지 않으면 이 가용성 영역 레지스터 실패에 속하는 볼륨이 됩니다. 자세한 내용은 kubernetes/cloud-provider-openstack#1379를 참조하십시오. 가용성 영역 이름의 최대 길이는 라벨 제한에 따라 63입니다. |
|
| volumeType은 프로비저닝할 루트 볼륨의 유형을 지정합니다. 볼륨 유형 이름의 최대 길이는 OpenStack 제한에 따라 255자입니다. |
4.1.24. .spec.template.machines_v1beta1_machine_openshift_io.failureDomains.vsphere
- 설명
- vSphere는 VSphere 플랫폼에 대한 장애 도메인 정보를 구성합니다.
- 유형
-
array
4.1.25. .spec.template.machines_v1beta1_machine_openshift_io.failureDomains.vsphere[]
- 설명
- VSphereFailureDomain은 vSphere 플랫폼에 대한 장애 도메인 정보를 구성합니다.
- 유형
-
object
- 필수 항목
-
name
-
속성 | 유형 | 설명 |
---|---|---|
|
| vSphere 머신 공급자가 VM을 생성할 실패 도메인의 이름입니다. 실패 도메인은 클러스터의 config.openshift.io/Infrastructure 리소스에 정의됩니다. 장애 도메인에서 시스템을 분산할 때 컨트롤 플레인 머신 세트는 인프라 리소스의 구성을 머신 providerSpec에 삽입하여 머신을 장애 도메인에 할당합니다. |
4.1.26. .spec.template.machines_v1beta1_machine_openshift_io.metadata
- 설명
- ObjectMeta는 표준 오브젝트 메타데이터입니다. https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata 레이블은 ControlPlaneMachineSet 선택기와 일치해야 합니다.
- 유형
-
object
- 필수 항목
-
labels
-
속성 | 유형 | 설명 |
---|---|---|
|
| 주석은 임의의 메타데이터를 저장 및 검색하기 위해 외부 툴에서 설정할 수 있는 리소스와 함께 저장되는 구조화되지 않은 키 값 맵입니다. 오브젝트를 수정할 때 쿼리할 수 없으며 보존해야 합니다. 자세한 내용은 http://kubernetes.io/docs/user-guide/annotations |
|
| 개체를 구성 및 분류(범위 및 선택)하는 데 사용할 수 있는 문자열 키와 값의 맵입니다. 복제 컨트롤러 및 서비스의 선택기와 일치할 수 있습니다. 자세한 내용은 http://kubernetes.io/docs/user-guide/labels. 이 필드에는 값이 'master'인 'machine.openshift.io/cluster-api-machine-role' 레이블과 'machine.openshift.io/cluster-api-machine-type' 라벨이 모두 포함되어야 합니다. 'machine.openshift.io/cluster-api-cluster' 키가 있는 레이블도 포함해야 합니다. |
4.1.27. .spec.template.machines_v1beta1_machine_openshift_io.spec
- 설명
- spec에는 원하는 컨트롤 플레인 머신 구성이 포함되어 있습니다. 내부 ProviderSpec에는 컨트롤 플레인 머신을 생성하기 위한 플랫폼별 세부 정보가 포함되어 있습니다. ProviderSe는 플랫폼별 실패 도메인 필드와는 별도로 완료되어야 합니다. FailureDomains 필드를 기반으로 머신이 생성될 때 재정의됩니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| LifecycleHooks를 사용하면 머신 라이프사이클 내에서 사전 정의된 특정 시점에서 머신에서 작업을 일시 중지할 수 있습니다. |
|
| ObjectMeta가 생성된 노드를 자동으로 채웁니다. 이를 사용하여 노드를 생성할 때 사용해야 하는 레이블, 주석, 이름 접두사 등을 나타냅니다. |
|
| providerID는 공급자가 제공하는 머신의 ID입니다. 이 필드는 이 머신에 해당하는 노드 오브젝트에 표시된 공급자 ID와 일치해야 합니다. 이 필드는 cluster-api의 상위 수준 소비자에 필요합니다. 사용 사례는 cluster-api가 공급자인 클러스터 자동 스케일러입니다. 자동 스케일러의 정리 논리는 머신을 노드와 비교하여 Kubernetes 노드로 등록할 수 없는 공급자의 시스템을 찾습니다. 자동 스케일러의 일반 out-of-tree 공급자인 cluster-api를 사용하면 자동 스케일러에 시스템 목록의 공급자 보기를 사용할 수 있어야 합니다. k8s apiserver에서 다른 노드 목록을 쿼리한 다음, 등록되지 않은 시스템을 확인하기 위해 비교가 수행되며 삭제로 표시됩니다. 이 필드는 액추에이터에 의해 설정되며 일반 공급자로서 cluster-api와 상호 작용할 자동 스케일러와 같은 상위 수준 엔티티에서 사용합니다. |
|
| 노드 생성 중에 사용할 providerSpec 세부 정보 공급자별 구성입니다. |
|
| 추가 방식으로 해당 노드에 적용할 테인트 목록입니다. 이 목록은 다른 엔티티에 의해 지속적으로 노드에 추가된 다른 테인트를 덮어쓰지 않습니다. 예를 들어 머신 컨트롤러에서 테인트를 적용하도록 요청한 다음 테인트를 수동으로 제거하도록 요청하는 경우 이러한 테인트를 적극적으로 조정해야 하지만 머신 컨트롤러에서 테인트를 제거하지는 않습니다. |
|
| 이 테인트가 연결된 노드에는 테인트를 허용하지 않는 Pod에 "효과"가 있습니다. |
4.1.28. .spec.template.machines_v1beta1_machine_openshift_io.spec.lifecycleHooks
- 설명
- LifecycleHooks를 사용하면 머신 라이프사이클 내에서 사전 정의된 특정 시점에서 머신에서 작업을 일시 중지할 수 있습니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| PreDrain 후크를 사용하면 시스템이 드레이닝되지 않습니다. 또한 종료와 같은 추가 라이프사이클 이벤트가 차단됩니다. |
|
| LifecycleHook은 라이프사이클 후크의 단일 인스턴스를 나타냅니다. |
|
| 사전 종료 후크를 사용하면 시스템이 종료되지 않습니다. 사전 종료 후크는 머신이 드레인된 후 작동합니다. |
|
| LifecycleHook은 라이프사이클 후크의 단일 인스턴스를 나타냅니다. |
4.1.29. .spec.template.machines_v1beta1_machine_openshift_io.spec.lifecycleHooks.preDrain
- 설명
- PreDrain 후크를 사용하면 시스템이 드레이닝되지 않습니다. 또한 종료와 같은 추가 라이프사이클 이벤트가 차단됩니다.
- 유형
-
array
4.1.30. .spec.template.machines_v1beta1_machine_openshift_io.spec.lifecycleHooks.preDrain[]
- 설명
- LifecycleHook은 라이프사이클 후크의 단일 인스턴스를 나타냅니다.
- 유형
-
object
- 필수 항목
-
name
-
소유자
-
속성 | 유형 | 설명 |
---|---|---|
|
| name은 lifcycle 후크의 고유한 이름을 정의합니다. 이름은 CamelCase에서 고유하고 설명적으로 1~3단어여야 하며, 네임스페이스(예: foo.example.com/CamelCase)여야 합니다. 이름은 고유해야 하며 단일 엔티티에서만 관리해야 합니다. |
|
| owner는 라이프사이클 후크의 소유자를 정의합니다. 이는 사용자가 라이프사이클 차단을 담당하는 사람/누구를 식별할 수 있도록 충분히 설명해야 합니다. 컨트롤러의 이름(예: clusteroperator/etcd) 또는 후크를 관리하는 관리자일 수 있습니다. |
4.1.31. .spec.template.machines_v1beta1_machine_openshift_io.spec.lifecycleHooks.preTerminate
- 설명
- 사전 종료 후크를 사용하면 시스템이 종료되지 않습니다. 사전 종료 후크는 머신이 드레인된 후 작동합니다.
- 유형
-
array
4.1.32. .spec.template.machines_v1beta1_machine_openshift_io.spec.lifecycleHooks.preTerminate[]
- 설명
- LifecycleHook은 라이프사이클 후크의 단일 인스턴스를 나타냅니다.
- 유형
-
object
- 필수 항목
-
name
-
소유자
-
속성 | 유형 | 설명 |
---|---|---|
|
| name은 lifcycle 후크의 고유한 이름을 정의합니다. 이름은 CamelCase에서 고유하고 설명적으로 1~3단어여야 하며, 네임스페이스(예: foo.example.com/CamelCase)여야 합니다. 이름은 고유해야 하며 단일 엔티티에서만 관리해야 합니다. |
|
| owner는 라이프사이클 후크의 소유자를 정의합니다. 이는 사용자가 라이프사이클 차단을 담당하는 사람/누구를 식별할 수 있도록 충분히 설명해야 합니다. 컨트롤러의 이름(예: clusteroperator/etcd) 또는 후크를 관리하는 관리자일 수 있습니다. |
4.1.33. .spec.template.machines_v1beta1_machine_openshift_io.spec.metadata
- 설명
- ObjectMeta가 생성된 노드를 자동으로 채웁니다. 이를 사용하여 노드를 생성할 때 사용해야 하는 레이블, 주석, 이름 접두사 등을 나타냅니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| 주석은 임의의 메타데이터를 저장 및 검색하기 위해 외부 툴에서 설정할 수 있는 리소스와 함께 저장되는 구조화되지 않은 키 값 맵입니다. 오브젝트를 수정할 때 쿼리할 수 없으며 보존해야 합니다. 자세한 내용은 http://kubernetes.io/docs/user-guide/annotations |
|
| generateName은 서버에서 사용하는 선택적 접두사로, Name 필드가 제공되지 않은 고유한 이름만 생성하는 데 사용됩니다. 이 필드를 사용하면 클라이언트에 반환되는 이름이 전달된 이름과 다릅니다. 이 값은 고유한 접미사와 결합됩니다. 제공된 값은 Name 필드와 동일한 검증 규칙을 가지며 서버에서 고유 값을 만드는 데 필요한 접미사 길이로 잘릴 수 있습니다. 이 필드가 지정되고 생성된 이름이 있는 경우 서버는 409를 반환하지 않습니다. 대신 201 Created 또는 500을 반환합니다. Reason ServerTimeout은 할당된 시간에 고유 이름을 찾을 수 없으며 클라이언트가 재시도해야 함을 나타냅니다(선택적으로 Retry-After 헤더에 표시된 시간 후). Name이 지정되지 않은 경우에만 적용됩니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#idempotency |
|
| 개체를 구성 및 분류(범위 및 선택)하는 데 사용할 수 있는 문자열 키와 값의 맵입니다. 복제 컨트롤러 및 서비스의 선택기와 일치할 수 있습니다. 자세한 내용은 http://kubernetes.io/docs/user-guide/labels |
|
| 이름은 네임스페이스 내에서 고유해야 합니다. 일부 리소스는 클라이언트가 적절한 이름의 생성을 자동으로 요청할 수 있지만 리소스를 생성할 때 필요합니다. 이름은 주로 생성 멱등 및 구성 정의를 위한 것입니다. CamelCase로 자세한 내용은 http://kubernetes.io/docs/user-guide/identifiers#names |
|
| namespace는 각 이름 내의 공간을 고유해야 합니다. 빈 네임스페이스는 "default" 네임스페이스와 동일하지만 "default"는 표준 표현입니다. 모든 오브젝트의 범위를 네임스페이스로 지정해야 하는 것은 아닙니다. 해당 오브젝트에 대한 이 필드의 값은 비어 있습니다. DNS_LABEL이어야 합니다. CamelCase로 자세한 내용은 http://kubernetes.io/docs/user-guide/namespaces |
|
| 이 오브젝트에서 사용하는 오브젝트 목록입니다. 목록에 있는 모든 개체가 삭제된 경우 이 개체는 가비지 수집됩니다. 컨트롤러에서 이 오브젝트를 관리하는 경우 이 목록의 항목이 이 컨트롤러를 가리키며 controller 필드가 true로 설정됩니다. 컨트롤러가 여러 개 있을 수 없습니다. |
|
| OwnerReference에는 소유 개체를 식별할 수 있는 충분한 정보가 포함되어 있습니다. 소유 오브젝트는 종속 항목과 동일한 네임스페이스에 있거나 클러스터 범위여야 하므로 네임스페이스 필드가 없습니다. |
4.1.34. .spec.template.machines_v1beta1_machine_openshift_io.spec.metadata.ownerReferences
- 설명
- 이 오브젝트에서 사용하는 오브젝트 목록입니다. 목록에 있는 모든 개체가 삭제된 경우 이 개체는 가비지 수집됩니다. 컨트롤러에서 이 오브젝트를 관리하는 경우 이 목록의 항목이 이 컨트롤러를 가리키며 controller 필드가 true로 설정됩니다. 컨트롤러가 여러 개 있을 수 없습니다.
- 유형
-
array
4.1.35. .spec.template.machines_v1beta1_machine_openshift_io.spec.metadata.ownerReferences[]
- 설명
- OwnerReference에는 소유 개체를 식별할 수 있는 충분한 정보가 포함되어 있습니다. 소유 오브젝트는 종속 항목과 동일한 네임스페이스에 있거나 클러스터 범위여야 하므로 네임스페이스 필드가 없습니다.
- 유형
-
object
- 필수 항목
-
apiVersion
-
kind
-
name
-
uid
-
속성 | 유형 | 설명 |
---|---|---|
|
| 참조의 API 버전입니다. |
|
| If true, and if the owner has the "foreworkspaceDeletion" finalizer, then the owner cannot be deleted from the key-value store until this reference is removed. 가비지 수집기가 이 필드와 상호 작용하고 전경 삭제를 적용하는 방법은 https://kubernetes.io/docs/concepts/architecture/garbage-collection/#foreground-deletion 를 참조하십시오. 기본값은 false입니다. 이 필드를 설정하려면 사용자에게 소유자의 "삭제" 권한이 필요하며, 그렇지 않으면 422(프로세스할 수 없는 엔티티)가 반환됩니다. |
|
| true인 경우 이 참조는 관리 컨트롤러를 가리킵니다. |
|
| 일종의 추천입니다. 자세한 내용은 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 |
|
| 참조의 UID입니다. 자세한 내용은 https://kubernetes.io/docs/concepts/overview/working-with-objects/names#uids |
4.1.36. .spec.template.machines_v1beta1_machine_openshift_io.spec.providerSpec
- 설명
- 노드 생성 중에 사용할 providerSpec 세부 정보 공급자별 구성입니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
| `` | value는 리소스 구성을 인라인으로 직렬화한 표현입니다. 공급자는 이 필드에서 직렬화/직렬화해야 하는 자체 버전이 지정된 API 유형을 구성 요소와 유사한 상태로 유지하는 것이 좋습니다. |
4.1.37. .spec.template.machines_v1beta1_machine_openshift_io.spec.taints
- 설명
- 추가 방식으로 해당 노드에 적용할 테인트 목록입니다. 이 목록은 다른 엔티티에 의해 지속적으로 노드에 추가된 다른 테인트를 덮어쓰지 않습니다. 예를 들어 머신 컨트롤러에서 테인트를 적용하도록 요청한 다음 테인트를 수동으로 제거하도록 요청하는 경우 이러한 테인트를 적극적으로 조정해야 하지만 머신 컨트롤러에서 테인트를 제거하지는 않습니다.
- 유형
-
array
4.1.38. .spec.template.machines_v1beta1_machine_openshift_io.spec.taints[]
- 설명
- 이 테인트가 연결된 노드에는 테인트를 허용하지 않는 Pod에 "효과"가 있습니다.
- 유형
-
object
- 필수 항목
-
effect
-
key
-
속성 | 유형 | 설명 |
---|---|---|
|
| 필수 항목입니다. 테인트를 허용하지 않는 pod에 테인트의 영향을 미칩니다. 유효한 영향은 NoSchedule, PreferNoSchedule 및 NoExecute입니다. |
|
| 필수 항목입니다. 노드에 적용할 taint 키입니다. |
|
| TimeAdded는 테인트가 추가된 시간을 나타냅니다. NoExecute 테인트에만 작성됩니다. |
|
| taint 키에 해당하는 taint 값입니다. |
4.1.39. .status
- 설명
- ControlPlaneMachineSetStatus는 ControlPlaneMachineSet CRD의 상태를 나타냅니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| 조건은 ControlPlaneMachineSet의 현재 상태를 관찰합니다. 알려진 .status.conditions.type은 Available, Degraded, Progressing입니다. |
|
|
condition에는 이 API 리소스의 현재 상태에 대한 세부 정보가 포함됩니다. --- 이 구조는 필드 경로 .status.conditions에서 배열로 직접 사용하기 위한 것입니다. 예를 들어 FooStatus struct{ // foo의 현재 상태의 관찰을 나타냅니다. // knownn .status.conditions.type are: "Available", "Progressing", and "Degraded" // +patchStrategy=merge // +listType=map // +listKey=type // +listKey=type [] |
|
| observedGeneration은 이 ControlPlaneMachineSet에서 관찰되는 가장 최근 세대입니다. 이는 API 서버에서 변경 시 업데이트되는 ControlPlaneMachineSets의 생성에 해당합니다. |
|
| readyReplicas는 준비된 ControlPlaneMachineSet 컨트롤러에서 생성한 컨트롤 플레인 머신 수입니다. 롤링 업데이트가 진행 중인 상태에서 이 값은 원하는 복제본 수보다 클 수 있습니다. |
|
| replicas는 ControlPlaneMachineSet 컨트롤러에서 생성한 컨트롤 플레인 머신 수입니다. 업데이트 작업 중에 이 값은 원하는 복제본 수와 다를 수 있습니다. |
|
| UnavailableReplicas는 ControlPlaneMachineSet이 원하는 용량에 도달하기 전에 여전히 필요한 컨트롤 플레인 머신의 수입니다. 이 값이 0이 아닌 경우 ReadyReplicas 수는 원하는 Replicas보다 적습니다. |
|
| UpdatedReplicas는 원하는 공급자 사양이 있고 준비되는 ControlPlaneMachineSet 컨트롤러에서 생성한 종료되지 않은 컨트롤 플레인 머신의 수입니다. 이 값은 원하는 사양으로 변경 사항이 감지되면 0으로 설정됩니다. 업데이트 전략이 RollingUpdate인 경우 머신 업데이트 프로세스 시작과도 일치합니다. 업데이트 전략이 OnDelete이면 이 값은 사용자가 기존 복제본을 삭제하고 교체가 준비될 때까지 0으로 유지됩니다. |
4.1.40. .status.conditions
- 설명
- 조건은 ControlPlaneMachineSet의 현재 상태를 관찰합니다. 알려진 .status.conditions.type은 Available, Degraded, Progressing입니다.
- 유형
-
array
4.1.41. .status.conditions[]
- 설명
-
condition에는 이 API 리소스의 현재 상태에 대한 세부 정보가 포함됩니다. --- 이 구조는 필드 경로 .status.conditions에서 배열로 직접 사용하기 위한 것입니다. 예를 들어 FooStatus struct{ // foo의 현재 상태의 관찰을 나타냅니다. // knownn .status.conditions.type are: "Available", "Progressing", and "Degraded" // +patchStrategy=merge // +listType=map // +listKey=type // +listKey=type []
omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"
// 기타 필드 } - 유형
-
object
- 필수 항목
-
lastTransitionTime
-
message
-
reason
-
status
-
type
-
속성 | 유형 | 설명 |
---|---|---|
|
| lastTransitionTime은 마지막으로 한 상태에서 다른 상태로 전환된 시간입니다. 기본 조건이 변경된 경우여야 합니다. 이를 알 수 없는 경우 API 필드가 변경된 시간을 사용합니다. |
|
| message는 변환에 대한 세부 정보를 나타내는 사람이 읽을 수 있는 메시지입니다. 빈 문자열일 수 있습니다. |
|
| observedGeneration은 조건에 따라 설정된 .metadata.generation을 나타냅니다. 예를 들어 .metadata.generation이 현재 12이지만 .status.conditions[x].observedGeneration이 9인 경우 현재 인스턴스 상태와 관련된 조건이 최신 상태가 아닙니다. |
|
| 이유에는 조건의 마지막 전환 이유를 나타내는 프로그래밍 식별자가 포함되어 있습니다. 특정 조건 유형의 생산자는 이 필드에 예상되는 값과 의미를 정의할 수 있으며 값이 보장된 API로 간주되는지 여부를 정의할 수 있습니다. 값은 CamelCase 문자열이어야 합니다. 이 필드는 비어 있지 않을 수 있습니다. |
|
| 조건의 상태, True, False, 알 수 없음. |
|
| CamelCase 또는 foo.example.com/CamelCase의 조건 유형. --- many .condition.type 값은 Available와 같은 리소스 간에 일관되지만 임의의 조건이 유용할 수 있으므로 (.node.status.conditions 참조), deconflict 기능이 중요합니다. 정규 표현식이 일치하는 정규 표현식은 (dns1123SubdomainFmt/)?(qualifiedNameFmt)입니다. |