7장. DaemonSet [apps/v1]
- 설명
- DaemonSet은 데몬 세트의 구성을 나타냅니다.
- 유형
-
object
7.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 | |
|
| DaemonSetSpec은 데몬 세트의 사양입니다. |
|
| DaemonSetStatus는 데몬 세트의 현재 상태를 나타냅니다. |
7.1.1. .spec
- 설명
- DaemonSetSpec은 데몬 세트의 사양입니다.
- 유형
-
object
- 필수 항목
-
선택기
-
템플릿
-
속성 | 유형 | 설명 |
---|---|---|
|
| 새로 생성된 DaemonSet Pod가 컨테이너 충돌 없이 준비해야 하는 최소 시간(초)을 사용할 수 있는 것으로 간주해야 합니다. 기본값은 0입니다(포드가 준비되는 즉시 사용 가능한 것으로 간주됨). |
|
| 롤백을 허용하기 위해 보유할 이전 기록 수입니다. 이는 명시적 0과 지정되지 않음을 구분하기 위한 포인터입니다. 기본값은 10입니다. |
| 데몬 세트에서 관리하는 Pod에 대한 라벨 쿼리입니다. 제어하려면 일치해야합니다. Pod 템플릿의 레이블과 일치해야 합니다. 자세한 내용은 https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors | |
| 생성할 Pod를 설명하는 오브젝트입니다. DaemonSet은 템플릿의 노드 선택기와 일치하는 모든 노드에서 (또는 노드 선택기를 지정하지 않은 경우 모든 노드에서) 정확히 하나의 복사본을 생성합니다. 자세한 내용은 https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller#pod-template | |
|
| DaemonSetUpdateStrategy는 DaemonSet의 업데이트 전략을 제어하는 데 사용되는 구조입니다. |
7.1.2. .spec.updateStrategy
- 설명
- DaemonSetUpdateStrategy는 DaemonSet의 업데이트 전략을 제어하는 데 사용되는 구조입니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| 데몬 세트 롤링 업데이트의 원하는 동작을 제어하는 사양입니다. |
|
| 데몬 세트 업데이트 유형입니다. "RollingUpdate" 또는 "OnDelete"일 수 있습니다. 기본값은 RollingUpdate입니다.
가능한 enum 값: - |
7.1.3. .spec.updateStrategy.rollingUpdate
- 설명
- 데몬 세트 롤링 업데이트의 원하는 동작을 제어하는 사양입니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
| 업데이트 중 업데이트된 DaemonSet Pod를 보유할 수 있는 기존 사용 가능한 DaemonSet Pod가 있는 최대 노드 수입니다. 값은 절대 숫자(예: 5) 또는 원하는 Pod의 백분율(예: 10%)일 수 있습니다. MaxUnavailable이 0인 경우 이 값은 0이 될 수 없습니다. 절대 숫자는 백분율에서 최소 1까지 반올림하여 계산됩니다. 기본값은 0입니다. 예: 이 값을 30%로 설정하면 데몬 Pod를 실행해야 하는 총 노드 수의 최대 30%(즉, status.desiredNumberScheduled)에서 이전 Pod가 삭제된 것으로 표시되기 전에 생성된 새 Pod를 보유할 수 있습니다. 업데이트는 노드의 30%에서 새 Pod를 시작하여 시작됩니다. 업데이트된 Pod를 사용할 수 있게 되면(최소 minReadySeconds 이상) 해당 노드의 이전 DaemonSet Pod가 삭제됩니다. 어떤 이유로든 기존 Pod를 사용할 수 없게 되면(Ready가 false로 전환되거나 제거됨) 업데이트된 Pod가 급증 제한을 고려하지 않고 해당 노드에 즉시 생성됩니다. 서지 허용은 지정된 노드에서 데몬 세트에서 사용하는 리소스가 두 배가 될 수 있음을 의미합니다. 따라서 준비 상태 점검이 실패하면 리소스 집약적 데몬 세트에서 두 배로 증가할 수 있으므로 중단 중에 제거가 발생할 수 있습니다. | |
| 업데이트 중에 사용할 수 없는 최대 DaemonSet Pod 수입니다. 값은 절대 숫자(예: 5) 또는 업데이트 시작 시 총 DaemonSet Pod 수(예: 10%)일 수 있습니다. 절대 수는 백분율로 반올림하여 계산됩니다. MaxSurge가 0인 경우 0이 될 수 없습니다. 예: 이 값을 30%로 설정하면 데몬 Pod를 실행해야 하는 총 노드 수의 최대 30%(즉, status.desiredNumberScheduled)에서 특정 시간에 업데이트 시 Pod가 중지될 수 있습니다. 업데이트는 해당 DaemonSet Pod의 30 % 이상을 중지한 다음 새 DaemonSet Pod를 순서대로 시작합니다. 새 Pod를 사용할 수 있게 되면 다른 DaemonSet Pod로 진행되므로 업데이트 중에 항상 원래 DaemonSet Pod 수의 70% 이상을 사용할 수 있습니다. |
7.1.4. .status
- 설명
- DaemonSetStatus는 데몬 세트의 현재 상태를 나타냅니다.
- 유형
-
object
- 필수 항목
-
currentNumberScheduled
-
numberMisscheduled
-
desiredNumberScheduled
-
numberReady
-
속성 | 유형 | 설명 |
---|---|---|
|
| DaemonSet의 해시 충돌 수입니다. DaemonSet 컨트롤러는 최신 ControllerRevision의 이름을 생성해야 하는 경우 이 필드를 충돌 방지 메커니즘으로 사용합니다. |
|
| DaemonSet의 현재 상태에 대한 사용 가능한 최신 관찰을 나타냅니다. |
|
| DaemonSetCondition은 특정 시점에서 DaemonSet의 상태를 설명합니다. |
|
| 데몬 Pod가 1개 이상 실행되고 데몬 Pod를 실행해야 하는 노드 수입니다. 자세한 내용은 https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/ |
|
| 데몬 Pod를 실행해야 하는 총 노드 수입니다(임시 Pod를 올바르게 실행하는 노드 포함). 자세한 내용은 https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/ |
|
| 데몬 Pod를 실행하고 하나 이상의 데몬 Pod를 실행하고 사용할 수 있는 노드 수(최소 spec.minReadySeconds 이상) |
|
| 데몬 Pod를 실행 중이지만 데몬 Pod를 실행하지 않는 노드 수입니다. 자세한 내용은 https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/ |
|
| numberReady는 데몬 Pod를 실행해야 하며 Ready 상태에서 하나 이상의 데몬 Pod를 실행해야 하는 노드 수입니다. |
|
| 데몬 Pod를 실행해야 하며 데몬 Pod가 실행되지 않고 사용 가능한 데몬 Pod가 없는 노드 수입니다(최소 spec.minReadySeconds 이상) |
|
| 데몬 세트 컨트롤러에서 관찰하는 최신 생성입니다. |
|
| 업데이트된 데몬 Pod를 실행 중인 총 노드 수 |
7.1.5. .status.conditions
- 설명
- DaemonSet의 현재 상태에 대한 사용 가능한 최신 관찰을 나타냅니다.
- 유형
-
array
7.1.6. .status.conditions[]
- 설명
- DaemonSetCondition은 특정 시점에서 DaemonSet의 상태를 설명합니다.
- 유형
-
object
- 필수 항목
-
type
-
status
-
속성 | 유형 | 설명 |
---|---|---|
| 조건이 한 상태에서 다른 상태로 전환된 마지막 시간입니다. | |
|
| 전환에 대한 세부 정보를 나타내는 사람이 읽을 수 있는 메시지입니다. |
|
| 조건의 마지막 전환 이유는 다음과 같습니다. |
|
| 조건의 상태, True, False, 알 수 없음. |
|
| DaemonSet 조건 유형입니다. |