13.9.2. Kubernetes 리소스


API 정의의 일부로 를 포함하는 DeploymentConfigs 및 BuildConfigs와 달리 트리거 제어를 위한 필드 집합을 포함하는 Kubernetes 리소스에 트리거를 위한 필드가 없습니다. 대신 OpenShift Container Platform에서는 주석을 사용하여 사용자가 트리거를 요청할 수 있습니다. 주석은 다음과 같이 정의됩니다.

Key: image.openshift.io/triggers
Value: array of triggers, where each item has the schema:
[
 {
   "from" :{
     "kind": "ImageStreamTag", // required, the resource to trigger from, must be ImageStreamTag
     "name": "example:latest", // required, the name of an ImageStreamTag
     "namespace": "myapp",     // optional, defaults to the namespace of the object
   },
   // required, JSON path to change
   // Note that this field is limited today, and only accepts a very specific set
   // of inputs (a JSON path expression that precisely matches a container by ID or index).
   // For pods this would be "spec.containers[?(@.name='web')].image".
   "fieldPath": "spec.template.spec.containers[?(@.name='web')].image",
   // optional, set to true to temporarily disable this trigger.
   "paused": "false"
 },
 ...
]

OpenShift Container Platform에서 Pod 템플릿(예: CronJobs, Deployments, StatefulSets, StatefulSets, DaemonSets, Jobs, ReplicaSets, ReplicationControllers, Pod) 및 이 주석을 모두 포함하는 핵심 Kubernetes 리소스 중 하나를 확인하고 트리거에서 참조하는 ImageStreamTag와 현재 연결된 이미지를 사용하여 오브젝트를 업데이트 시도합니다. 업데이트는 지정된 fieldPath에 대해 수행됩니다.

다음 예에서 example:latest 이미지 스트림 태그가 업데이트되면 트리거가 실행됩니다. 실행 시 컨테이너에 대한 오브젝트의 Pod 템플릿 이미지 참조가 새 이미지 값으로 업데이트됩니다. pod 템플릿이 Deployment 정의에 속하는 경우 pod 템플릿에 대한 변경으로 배포가 자동으로 트리거되어 새 이미지를 효과적으로 롤아웃합니다.

image.openshift.io/triggers=[{"from":{"kind":"ImageStreamTag","name":"example:latest"},"fieldPath":"spec.template.spec.containers[?(@.name='web')].image"}]

배포에 이미지 트리거를 추가할 때 oc set triggers 명령을 사용할 수도 있습니다. 예를 들어 다음 명령은 example:latest 이미지 스트림 태그가 업데이트되면 배포 내의 컨테이너가 새 이미지 값으로 업데이트되도록 이미지 변경 트리거를 예제라는 배포에 추가합니다.

$ oc set triggers deploy/example --from-image=example:latest -c web

배포가 일시 중지되지 않으면 이 pod 템플릿 업데이트로 인해 새 이미지 값으로 배포가 자동으로 수행됩니다.

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

© 2024 Red Hat, Inc.