8.2. Kubernetes 리소스 트리거


DeploymentsStatefulSets 와 같은 Kubernetes 리소스를 활성화하여 새 이미지 버전을 원활하게 사용하려면 AWS의 Red Hat OpenShift Service에서 이미지 스트림 변경 트리거를 구성합니다. 이렇게 하면 연결된 이미지 스트림이 변경 사항을 감지하면 애플리케이션 배포가 자동으로 업데이트됩니다.

Kubernetes 리소스에는 API 정의의 일부로 트리거 제어를 위한 필드 집합을 포함하는 배포 및 빌드 구성과 달리 트리거를 위한 필드가 없습니다. 대신 AWS의 Red Hat OpenShift Service에서 주석을 사용하여 트리거를 요청할 수 있습니다.

주석은 다음과 같이 정의됩니다.

apiVersion: v1
kind: Pod
metadata:
  annotations:
    image.openshift.io/triggers:
      [
       {
         "from": {
           "kind": "ImageStreamTag",
           "name": "example:latest",
           "namespace": "myapp"
         },
         "fieldPath": "spec.template.spec.containers[?(@.name==\"web\")].image",
         "paused": false
       },
      # ...
      ]
# ...

다음과 같습니다.

kind
트리거할 리소스를 지정하고 ImageStreamTag 값이 있어야 합니다.
name
이미지 스트림 태그의 이름을 지정합니다.
네임스페이스
오브젝트의 네임스페이스를 지정합니다. 이 필드는 선택 사항입니다.
fieldPath
변경할 JSON 경로를 지정합니다. 이 필드는 제한되어 ID 또는 인덱스로 컨테이너와 정확히 일치하는 JSON 경로식만 허용됩니다. Pod의 경우 JSON 경로는 spec.containers[?(@.name='web')].image 입니다.
paused
트리거가 일시 중지되었는지 여부를 지정합니다. 이 필드는 선택 사항이며 기본값은 false 입니다. 이 트리거를 일시적으로 비활성화하려면 값을 true 로 설정합니다.

핵심 Kubernetes 리소스 중 하나에 pod 템플릿과 이 주석이 모두 포함된 경우 AWS의 Red Hat OpenShift Service는 트리거에서 참조하는 이미지 스트림 태그와 현재 연결된 이미지를 사용하여 오브젝트를 업데이트하려고 합니다. 업데이트는 지정된 fieldPath에 대해 수행됩니다.

pod 템플릿 및 주석을 모두 포함하는 코어 Kubernetes 리소스의 예는 다음과 같습니다.

  • CronJobs
  • Deployments
  • StatefulSets
  • DaemonSets
  • Jobs
  • ReplicationControllers
  • Pods
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 소개

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

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

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

Red Hat 문서 정보

Legal Notice

Theme

© 2026 Red Hat
맨 위로 이동