8장. 배포 [apps/v1]


설명
배포를 사용하면 Pod 및 ReplicaSet에 대한 선언적 업데이트가 활성화됩니다.
유형
object

8.1. 사양

속성유형설명

apiVersion

string

APIVersion은 버전이 지정된 이 오브젝트 표현의 스키마를 정의합니다. 서버는 인식된 스키마를 최신 내부 값으로 변환해야 하며, 인식되지 않는 값을 거부할 수 있습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

string

kind는 이 오브젝트가 나타내는 REST 리소스에 해당하는 문자열 값입니다. 서버는 클라이언트에서 요청을 제출한 끝점에서 이를 유추할 수 있습니다. CamelCase로 업데이트할 수 없습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

메타데이터

ObjectMeta

표준 오브젝트의 메타데이터입니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

object

DeploymentSpec은 원하는 배포 동작의 사양입니다.

status

object

DeploymentStatus는 가장 최근에 관찰된 배포 상태입니다.

8.1.1. .spec

설명
DeploymentSpec은 원하는 배포 동작의 사양입니다.
유형
object
필수 항목
  • 선택기
  • 템플릿
속성유형설명

minReadySeconds

integer

컨테이너 충돌 없이 새로 생성된 Pod를 준비해야 하는 최소 시간(초)을 사용할 수 있습니다. 기본값은 0입니다 (pod는 준비되는 즉시 사용 가능한 것으로 간주됨)

일시 중지됨

boolean

배포가 일시 중지되었음을 나타냅니다.

progressDeadlineSeconds

integer

배포가 실패로 간주되기 전에 진행할 수 있는 최대 시간(초)입니다. 배포 컨트롤러는 실패한 배포를 계속 처리하고 ProgressDeadlineExceeded 이유가 있는 조건이 배포 상태에 표시됩니다. 배포가 일시 중지되는 동안 진행 상황을 추정하지 않습니다. 기본값은 600입니다.

replicas

integer

원하는 Pod 수입니다. 이는 명시적 0과 지정되지 않음을 구분하기 위한 포인터입니다. 기본값은 1입니다.

revisionHistoryLimit

integer

롤백을 허용하기 위해 보유할 이전 ReplicaSet 수입니다. 이는 명시적 0과 지정되지 않음을 구분하기 위한 포인터입니다. 기본값은 10입니다.

선택기

LabelSelector

Pod의 라벨 선택기입니다. 이 과정에서 선택한 Pod가 있는 기존 ReplicaSet은 이 배포의 영향을 받는 것입니다. Pod 템플릿의 레이블과 일치해야 합니다.

전략

object

DeploymentStrategy는 기존 Pod를 새 Pod로 교체하는 방법을 설명합니다.

템플릿

PodTemplateSpec

템플릿은 생성할 Pod를 설명합니다.

8.1.2. .spec.strategy

설명
DeploymentStrategy는 기존 Pod를 새 Pod로 교체하는 방법을 설명합니다.
유형
object
속성유형설명

rollingUpdate

object

롤링 업데이트의 원하는 동작을 제어하는 사양입니다.

type

string

배포 유형입니다. "Recreate" 또는 "RollingUpdate"일 수 있습니다. 기본값은 RollingUpdate입니다.

가능한 enum 값: - "Recreate" 새 포드를 만들기 전에 기존 Pod를 모두 종료합니다. - "RollingUpdate" 는 롤링 업데이트를 사용하여 이전 ReplicaSet을 새 Pod로 교체합니다. 즉, 이전 ReplicaSet을 점진적으로 축소하고 새 Pod를 확장합니다.

8.1.3. .spec.strategy.rollingUpdate

설명
롤링 업데이트의 원하는 동작을 제어하는 사양입니다.
유형
object
속성유형설명

maxSurge

IntOrString

원하는 Pod 수 이상으로 예약할 수 있는 최대 Pod 수입니다. 값은 절대 숫자(예: 5) 또는 원하는 Pod의 백분율(예: 10%)일 수 있습니다. MaxUnavailable이 0인 경우 이 값은 0이 될 수 없습니다. 절대 수는 백분율로 반올림하여 계산됩니다. 기본값은 25%입니다. 예: 이 값을 30 %로 설정하면 롤링 업데이트가 시작될 때 새 ReplicaSet을 즉시 확장할 수 있으므로 이전 Pod와 새 Pod의 총 수가 원하는 Pod의30%를 초과하지 않습니다. 이전 Pod가 종료되면 새 ReplicaSet을 추가로 확장할 수 있으므로 업데이트 중에 언제든지 실행 중인 총 Pod 수가 원하는 Pod의 최대 192.0.2.%가 되도록 할 수 있습니다.

maxUnavailable

IntOrString

업데이트 중에 사용할 수 없는 최대 Pod 수입니다. 값은 절대 숫자(예: 5) 또는 원하는 Pod의 백분율(예: 10%)일 수 있습니다. 절대 수는 백분율로 반올림하여 계산됩니다. MaxSurge가 0인 경우 이 값은 0이 될 수 없습니다. 기본값은 25%입니다. 예: 이 값을 30%로 설정하면 롤링 업데이트가 시작될 때 이전 ReplicaSet을 원하는 Pod의 70%로 즉시 축소할 수 있습니다. 새 Pod가 준비되면 이전 ReplicaSet을 추가로 축소한 후 새 ReplicaSet을 확장하여 업데이트 중에 항상 사용 가능한 총 Pod 수가 필요한 Pod의 70% 이상인지 확인할 수 있습니다.

8.1.4. .status

설명
DeploymentStatus는 가장 최근에 관찰된 배포 상태입니다.
유형
object
속성유형설명

availableReplicas

integer

이 배포를 대상으로 하는 사용 가능한 총 Pod 수(최소 minReadySeconds) 수입니다.

collisionCount

integer

배포에 대한 해시 충돌 수입니다. 배포 컨트롤러는 최신 ReplicaSet의 이름을 생성해야 하는 경우 이 필드를 충돌 방지 메커니즘으로 사용합니다.

conditions

array

배포의 현재 상태에 대한 사용 가능한 최신 관찰을 나타냅니다.

conditions[]

object

DeploymentCondition은 특정 시점에서 배포 상태를 설명합니다.

observedGeneration

integer

배포 컨트롤러에서 관찰하는 생성입니다.

readyReplicas

integer

ReadyReplicas는 이 배포에서 Ready 상태가 되는 Pod 수입니다.

replicas

integer

이 배포를 대상으로 하는 총 종료되지 않은 Pod 수입니다(해당 레이블은 선택기와 일치).

unavailableReplicas

integer

이 배포에서 대상으로 하는 총 사용 불가능한 Pod 수입니다. 이는 배포에 필요한 총 Pod 수에 100% 사용 가능한 용량이 있습니다. 실행 중이지만 아직 사용할 수 없는 Pod 또는 아직 생성되지 않은 Pod일 수 있습니다.

updatedReplicas

integer

원하는 템플릿 사양이 있는 이 배포를 대상으로 하는 총 종료되지 않은 Pod 수입니다.

8.1.5. .status.conditions

설명
배포의 현재 상태에 대한 사용 가능한 최신 관찰을 나타냅니다.
유형
array

8.1.6. .status.conditions[]

설명
DeploymentCondition은 특정 시점에서 배포 상태를 설명합니다.
유형
object
필수 항목
  • type
  • status
속성유형설명

lastTransitionTime

시간

조건이 한 상태에서 다른 상태로 전환된 마지막 시간입니다.

lastUpdateTime

시간

이 조건이 마지막으로 업데이트된 시간입니다.

message

string

전환에 대한 세부 정보를 나타내는 사람이 읽을 수 있는 메시지입니다.

reason

string

조건의 마지막 전환 이유는 다음과 같습니다.

status

string

조건의 상태, True, False, 알 수 없음.

type

string

배포 조건 유형입니다.

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.