7장. Kubernetes 리소스가 포함된 이미지 스트림 사용


OpenShift Container Platform 네이티브 리소스인 이미지 스트림은 Build 또는 DeploymentConfigs 리소스와 같은 OpenShift Container Platform에서 사용할 수 있는 모든 네이티브 리소스와 함께 작동합니다. 또한 Job,ReplicationController,ReplicaSet 또는 Kubernetes Deployment 리소스와 같은 네이티브 Kubernetes 리소스와 함께 작동하도록 할 수도 있습니다.

7.1. Kubernetes 리소스가 포함된 이미지 스트림 활성화

Kubernetes 리소스가 포함된 이미지 스트림을 사용하는 경우 리소스와 동일한 프로젝트에 상주하는 이미지 스트림만 참조할 수 있습니다. 이미지 스트림 참조는 ruby:2.5와 같은 단일 세그먼트 값으로 구성되어야 합니다. 여기서, ruby2.5라는 태그가 있고 참조하는 리소스와 동일한 프로젝트에 상주하는 이미지 스트림의 이름입니다.

중요

기본 프로젝트에서 워크로드를 실행하거나 기본 프로젝트에 대한 액세스를 공유하지 마세요. 기본 프로젝트는 핵심 클러스터 구성 요소를 실행하기 위해 예약되어 있습니다.

다음 기본 프로젝트는 높은 권한이 있는 것으로 간주됩니다. default, kube-public, kube-system, openshift, openshift-infra, openshift-nodeopenshift.io/run-level 레이블이 0 또는 1 로 설정된 기타 시스템 생성 프로젝트입니다. Pod 보안 승인, 보안 컨텍스트 제약 조건, 클러스터 리소스 할당량 및 이미지 참조 확인과 같은 승인 플러그인에 의존하는 기능은 높은 권한 있는 프로젝트에서 작동하지 않습니다.

Kubernetes 리소스가 포함된 이미지 스트림을 활성화하는 방법은 다음 두 가지가 있습니다.

  • 특정 리소스에서 이미지 스트림 분석을 활성화합니다. 이렇게 하면 해당 리소스만 이미지 필드에서 이미지 스트림 이름을 사용할 수 있습니다.
  • 이미지 스트림에서 이미지 스트림 해석을 활성화합니다. 이렇게 하면 해당 이미지 스트림을 가리키는 모든 리소스가 이미지 필드에서 그 이미지 스트림 이름을 사용할 수 있습니다.

프로세스

oc set image-lookup을 통해 특정 리소스에서 이미지 스트림 분석을 활성화하거나 이미지 스트림에서 이미지 스트림 분석을 활성화할 수 있습니다.

  1. 모든 리소스가 mysql이라는 이미지 스트림을 참조하도록 허용하려면 다음 명령을 입력합니다.

    $ oc set image-lookup mysql

    이렇게 하면 Imagestream.spec.lookupPolicy.local 필드가 True로 설정됩니다.

    이미지 조회가 활성화된 이미지 스트림

    apiVersion: image.openshift.io/v1
    kind: ImageStream
    metadata:
      annotations:
        openshift.io/display-name: mysql
      name: mysql
      namespace: myproject
    spec:
      lookupPolicy:
        local: true

    활성화되는 경우 이미지 스트림 내 모든 태그에 대해 해당 동작이 활성화됩니다.

  2. 그런 다음 이미지 스트림을 조회하여 옵션이 설정되었는지 확인할 수 있습니다.

    $ oc set image-lookup imagestream --list

특정 리소스에서 이미지 조회를 활성화할 수 있습니다.

  • mysql이라는 Kubernetes 배포가 이미지 스트림을 사용하도록 허용하려면 다음 명령을 실행합니다.

    $ oc set image-lookup deploy/mysql

    이렇게 하면 배포에 alpha.image.policy.openshift.io/resolve-names 주석이 설정됩니다.

    이미지 조회가 활성화된 배포

    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: mysql
      namespace: myproject
    spec:
      replicas: 1
      template:
        metadata:
          annotations:
            alpha.image.policy.openshift.io/resolve-names: '*'
        spec:
          containers:
          - image: mysql:latest
            imagePullPolicy: Always
            name: mysql

이미지 조회를 비활성화할 수 있습니다.

  • 이미지 조회를 비활성화하려면 --enabled=false를 전달합니다.

    $ oc set image-lookup deploy/mysql --enabled=false
Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

© 2024 Red Hat, Inc.