10.7.7. 템플릿 준비 대기
템플릿 작성자는 템플릿 내의 특정 오브젝트가 일정 시간 대기한 뒤에 서비스 카탈로그, Template Service Broker 또는 TemplateInstance API의 템플릿 인스턴스화가 완료된 것으로 간주된다고 표시할 수 있습니다.
이 기능을 사용하려면 템플릿에서 다음 주석으로 하나 이상의 오브젝트를 Build
, BuildConfig
, Deployment
, DeploymentConfig
, Job
또는 StatefulSet
유형으로 표시하십시오.
"template.alpha.openshift.io/wait-for-ready": "true"
이 주석이 표시된 모든 오브젝트가 준비되었다고 보고할 때까지 템플릿 인스턴스화는 완료되지 않습니다. 마찬가지로 주석이 있는 오브젝트 보고서 중 실패하는 보고서가 있거나 템플릿이 1시간이라는 고정된 제한 시간 내에 준비되지 않으면 템플릿 인스턴스화가 실패합니다.
인스턴스화를 위해 각 오브젝트 유형의 준비 및 실패는 다음과 같이 정의됩니다.
유형 | 준비 | 실패 |
---|---|---|
| 오브젝트가 완료 단계 보고 | 오브젝트가 취소, 오류 또는 실패 단계 보고 |
| 관련된 최신 Build 오브젝트가 완료 단계 보고 | 관련된 최신 Build 오브젝트가 취소, 오류 또는 실패 단계 보고 |
| 오브젝트가 사용 가능한 새로운 ReplicaSet 및 배포를 보고(오브젝트에 정의된 readiness 프로브 준수) | 오브젝트가 진행 상태를 False로 보고 |
| 오브젝트가 사용 가능한 새로운 ReplicationController 및 배포를 보고(오브젝트에 정의된 readiness 프로브 준수) | 오브젝트가 진행 상태를 False로 보고 |
| 오브젝트가 완료 보고 | 오브젝트가 하나 이상의 실패가 발생했음을 보고 |
| 오브젝트가 모든 복제본이 준비되었다고 보고(오브젝트에 정의된 readiness 프로브 준수) | 해당 없음 |
다음은 wait-for-ready
주석을 사용하는 템플릿 추출의 예입니다. 더 많은 예를 보려면 OpenShift 빠른 시작 템플릿에서 찾을 수 있습니다.
kind: Template apiVersion: v1 metadata: name: my-template objects: - kind: BuildConfig apiVersion: v1 metadata: name: ... annotations: # wait-for-ready used on BuildConfig ensures that template instantiation # will fail immediately if build fails template.alpha.openshift.io/wait-for-ready: "true" spec: ... - kind: DeploymentConfig apiVersion: v1 metadata: name: ... annotations: template.alpha.openshift.io/wait-for-ready: "true" spec: ... - kind: Service apiVersion: v1 metadata: name: ... spec: ...