1.3. 이미지 릴리스
Kubernetes용 Red Hat Advanced Cluster Management를 사용하여 공급자에 클러스터를 생성할 때 새 클러스터에 사용할 릴리스 이미지를 지정해야 합니다. 릴리스 이미지는 클러스터를 빌드하는 데 사용되는 Red Hat OpenShift Container Platform 버전을 지정합니다.
릴리스 이미지를 참조하는 파일은 acm-hive-openshift-releases
GitHub 리포지토리에서 유지 관리되는 YAML 파일입니다. Red Hat Advanced Cluster Management는 해당 파일을 사용하여 콘솔에서 사용 가능한 릴리스 이미지 목록을 생성합니다. 여기에는 OpenShift Container Platform의 최신 빠른 채널 이미지가 포함됩니다. 콘솔은 최신 OpenShift Container Platform의 최신 버전용 최신 릴리스 이미지만 표시합니다. 예를 들어 콘솔 옵션에 다음 릴리스 이미지가 표시될 수 있습니다.
- quay.io/openshift-release-dev/ocp-release:4.6.23-x86_64
- quay.io/openshift-release-dev/ocp-release:4.10.1-x86_64
참고: console에서 클러스터를 생성할 때: visible: 'true'
레이블이 있는 이미지만 선택할 수 있습니다. ClusterImageSet
리소스의 이 레이블 예는 다음 콘텐츠에서 제공됩니다.
apiVersion: config.openshift.io/v1 kind: ClusterImageSet metadata: labels: channel: fast visible: 'true' name: img4.10.1-x86-64-appsub spec: releaseImage: quay.io/openshift-release-dev/ocp-release:4.10.1-x86_64
추가 릴리스 이미지가 저장되지만 콘솔에는 표시되지 않습니다. 사용 가능한 릴리스 이미지를 모두 보려면 CLI에서 kubectl get clusterimageset
를 실행합니다. 최신 릴리스 이미지로 클러스터를 생성하도록 최신 버전만 콘솔에 있습니다. 경우에 따라 특정 버전인 클러스터를 생성해야 할 수도 있습니다. 따라서 이전 버전을 사용할 수 있습니다. Red Hat Advanced Cluster Management는 해당 파일을 사용하여 콘솔에서 사용 가능한 릴리스 이미지 목록을 생성합니다. 여기에는 OpenShift Container Platform의 최신 빠른 채널 이미지가 포함됩니다.
리포지토리에는 릴리스 이미지로 작업할 때 사용하는 디렉터리인 clusterImageSets
디렉터리와 서브스크립션
디렉터리가 포함되어 있습니다.
clusterImageSets
디렉터리에는 다음 디렉터리가 포함되어 있습니다.
- fast: 지원되는 각 OpenShift Container Platform 버전의 최신 릴리스 이미지를 참조하는 파일이 포함되어 있습니다. 이 폴더의 릴리스 이미지는 테스트, 확인 및 지원됩니다.
- 릴리스: 각 OpenShift Container Platform 버전(테이블, 빠른, 후보 채널)의 모든 릴리스 이미지를 참조하는 파일이 포함되어 있습니다. 이러한 릴리스는 모두 테스트되고 안정적인 것으로 확인되지 않았습니다.
- stable: 지원되는 각 OpenShift Container Platform 버전에 대한 릴리스 이미지의 최신 두 가지 안정적인 버전을 참조하는 파일이 포함되어 있습니다.
참고: 기본적으로 현재 릴리스 이미지 목록은 한 시간씩 업데이트됩니다. 제품을 업그레이드한 후 새 버전의 제품에 권장되는 릴리스 이미지 버전을 반영하는 데 최대 1시간이 걸릴 수 있습니다.
다음과 같은 세 가지 방법으로 자체 ClusterImageSets
를 큐레이션할 수 있습니다.
세 가지 방법 중 첫 번째 단계는 포함된 서브스크립션을 비활성화하여 최신 빠른 채널 이미지를 자동으로 업데이트하는 것입니다. multiclusterhub
리소스에서 installer 매개변수를 사용하여 최신 fast ClusterImageSets
의 자동 큐레이션을 비활성화할 수 있습니다. spec.disableUpdateClusterImageSets
매개변수를 true
와 false
로 전환하면 Red Hat Advanced Cluster Management와 함께 설치된 서브스크립션이 각각 비활성화 또는 활성화됩니다. 자체 이미지를 큐레이팅하려면 spec.disableUpdateClusterImageSets
를 true
로 설정하여 서브스크립션을 비활성화합니다.
옵션 1: 클러스터를 생성할 때 콘솔에서 사용할 특정 ClusterImageSet
의 이미지 참조를 지정합니다. 지정한 각 새 항목은 persists이며 향후 모든 클러스터 프로비저닝에 사용할 수 있습니다. 항목의 예는 quay.io/openshift-release-dev/ocp-release:4.6.8-x86_64
입니다.
옵션 2: acm-hive-openshift-releases
GitHub 리포지토리에서 ClusterImageSets
YAML 파일을 수동으로 생성하고 적용합니다.
옵션 3: acm-hive-openshift-releases
GitHub 리포지토리의 README.md
를 따라 분기된 GitHub 리포지토리에서 ClusterImageSets
자동 업데이트를 활성화합니다.
Subscription
디렉터리에는 릴리스 이미지 목록을 가져올 위치를 지정하는 파일이 포함되어 있습니다.
Red Hat Advanced Cluster Management의 기본 릴리스 이미지는 Quay.io 디렉터리에 제공됩니다.
이미지는 릴리스 2.5의 acm-hive-openshift-releases GitHub 리포지토리에 있는 파일에서 참조합니다.
1.3.1. 다른 아키텍처에 클러스터를 배포할 릴리스 이미지 생성
두 아키텍처의 파일이 포함된 릴리스 이미지를 수동으로 생성하여 허브 클러스터의 아키텍처와 다른 아키텍처에 클러스터를 생성할 수 있습니다.
예를 들어 ppc64le
,aarch64
또는 s390x
아키텍처에서 실행 중인 허브 클러스터에서 x86_64
클러스터를 생성해야 할 수 있습니다. 새 릴리스 이미지를 사용하면 OpenShift Container Platform 릴리스 레지스트리에서 다중 아키텍처 이미지 매니페스트를 제공할 수 있으므로 두 파일 세트로 릴리스 이미지를 생성하면 클러스터 생성에 성공합니다.
릴리스 이미지를 생성하려면 아키텍처 유형에 대한 다음 예제와 유사한 단계를 완료합니다.
OpenShift Container Platform 릴리스 레지스트리에서
x86_64
,s390x
,aarch64
및ppc64le
릴리스 이미지가 포함된 매니페스트 목록을 생성합니다.다음 예제 명령을 사용하여 Quay 리포지토리에서 해당 환경의 두 아키텍처에 대한 매니페스트 목록을 가져옵니다.
podman pull quay.io/openshift-release-dev/ocp-release:4.10.1-x86_64 podman pull quay.io/openshift-release-dev/ocp-release:4.10.1-ppc64le podman pull quay.io/openshift-release-dev/ocp-release:4.10.1-s390x podman pull quay.io/openshift-release-dev/ocp-release:4.10.1-aarch64
이미지를 유지보수하는 프라이빗 리포지토리에 로그인합니다.
podman login <private-repo>
private-repo
를 리포지토리 경로로 바꿉니다.환경에 적용되는 다음 명령을 실행하여 프라이빗 리포지토리에 릴리스 이미지 매니페스트를 추가합니다.
podman push quay.io/openshift-release-dev/ocp-release:4.10.1-x86_64 <private-repo>/ocp-release:4.10.1-x86_64 podman push quay.io/openshift-release-dev/ocp-release:4.10.1-ppc64le <private-repo>/ocp-release:4.10.1-ppc64le podman push quay.io/openshift-release-dev/ocp-release:4.10.1-s390x <private-repo>/ocp-release:4.10.1-s390x podman push quay.io/openshift-release-dev/ocp-release:4.10.1-aarch64 <private-repo>/ocp-release:4.10.1-aarch64
private-repo
를 리포지토리 경로로 바꿉니다.새 정보에 대한 매니페스트를 생성합니다.
podman manifest create mymanifest
두 릴리스 이미지에 대한 참조를 매니페스트 목록에 추가합니다.
podman manifest add mymanifest <private-repo>/ocp-release:4.10.1-x86_64 podman manifest add mymanifest <private-repo>/ocp-release:4.10.1-ppc64le podman manifest add mymanifest <private-repo>/ocp-release:4.10.1-s390x podman manifest add mymanifest <private-repo>/ocp-release:4.10.1-aarch64
private-repo
를 리포지토리 경로로 바꿉니다.매니페스트 목록의 목록을 기존 매니페스트와 병합합니다.
podman manifest push mymanifest docker://<private-repo>/ocp-release:4.10.1
private-repo
를 리포지토리 경로로 바꿉니다.
hub 클러스터에서 리포지터리의 매니페스트를 참조하는 릴리스 이미지를 만듭니다.
다음 예와 유사한 정보가 포함된 YAML 파일을 생성합니다.
apiVersion: hive.openshift.io/v1 kind: ClusterImageSet metadata: labels: channel: fast visible: "true" name: img4.10.1-appsub spec: releaseImage: <private-repo>/ocp-release:4.10.1
private-repo
를 리포지토리 경로로 바꿉니다.hub 클러스터에서 다음 명령을 실행하여 변경 사항을 적용합니다.
oc apply -f <file-name>.yaml
file-name
을 방금 생성한 YAML 파일의 이름으로 바꿉니다.
- OpenShift Container Platform 클러스터를 생성할 때 새 릴리스 이미지를 선택합니다.
- Red Hat Advanced Cluster Management 콘솔을 사용하여 관리형 클러스터를 배포하는 경우 클러스터 생성 프로세스 중 아키텍처 필드에서 관리 클러스터의 아키텍처를 지정합니다.
생성 프로세스에서는 병합된 릴리스 이미지를 사용하여 클러스터를 생성합니다.
1.3.2. 사용 가능한 릴리스 이미지 동기화
릴리스 이미지가 자주 업데이트되므로 릴리스 이미지 목록을 동기화하여 사용 가능한 최신 버전을 선택할 수 있습니다. 릴리스 이미지는 릴리스 2.5용 acm-hive-openshift-releases GitHub 리포지토리에서 사용할 수 있습니다.
릴리스 이미지의 안정성에는 세 가지 수준이 있습니다.
카테고리 | 설명 |
stable | 클러스터 설치 및 빌드가 올바르게 확인되는 완전히 테스트된 이미지입니다. |
신속 (Fast) | 부분적으로 테스트되었지만 안정된 버전보다 안정적이지 않을 수 있습니다. |
candidate | 아직 테스트되지 않았지만 가장 최신 이미지입니다. 버그가 있을 수 있습니다. |
다음 단계를 완료하여 목록을 새로 고칩니다.
-
설치 관리자 관리
acm-hive-openshift-releases
서브스크립션이 활성화된 경우multiclusterhub
리소스에서disableUpdateClusterImageSets
값을true
로 설정하여 서브스크립션을 비활성화합니다. - 릴리스 2.5에 대해 acm-hive-openshift-releases GitHub 리포지토리를 복제합니다.
다음 명령과 유사한 명령을 입력하여 서브스크립션을 제거합니다.
oc delete -f subscribe/subscription-fast
안정적인 릴리스 이미지에 연결하고 다음 명령을 입력하여 Kubernetes 허브 클러스터용 Red Hat Advanced Cluster Management 클러스터를 동기화합니다.
make subscribe-stable
참고: Linux 또는 MacOS 운영 체제를 사용하는 경우에만 이
make
명령을 실행할 수 있습니다.약 1분 후에
안정적인
릴리스 이미지의 최신 목록을 사용할 수 있습니다.빠른 릴리스 이미지를 동기화하고 표시하려면 다음 명령을 입력합니다.
make subscribe-fast
참고: Linux 또는 MacOS 운영 체제를 사용하는 경우에만 이
make
명령을 실행할 수 있습니다.명령을 실행한 후 약 1분 후에 사용 가능한
안정적인
빠른
릴리스 이미지 목록이 현재 사용 가능한 이미지로 업데이트됩니다.후보
릴리스 이미지를 동기화하고 표시하려면 다음 명령을 입력합니다.make subscribe-candidate
참고: Linux 또는 MacOS 운영 체제를 사용하는 경우에만 이
make
명령을 실행할 수 있습니다.명령을 실행한 후 약 1분 후 사용 가능한
안정적인
,fast
및candidate
릴리스 이미지 목록이 현재 사용 가능한 이미지로 업데이트됩니다.
- 클러스터를 생성할 때 Red Hat Advanced Cluster Management 콘솔에서 현재 사용 가능한 릴리스 이미지 목록을 확인합니다.
다음 형식으로 명령을 입력하여 이러한 채널에서 업데이트 보기를 취소하여 업데이트 보기를 중지할 수 있습니다.
oc delete -f subscribe/subscription-fast
1.3.3. 연결된 경우 릴리스 이미지의 사용자 정의 목록 유지
모든 클러스터에 동일한 릴리스 이미지를 사용하도록 할 수 있습니다. 단순화하기 위해 클러스터를 생성할 때 사용할 수 있는 자체 사용자 정의 릴리스 이미지 목록을 생성할 수 있습니다. 사용 가능한 릴리스 이미지를 관리하려면 다음 단계를 완료합니다.
-
설치 관리자 관리
acm-hive-openshift-releases
서브스크립션이 활성화된 경우multiclusterhub
리소스에서disableUpdateClusterImageSets
값을true
로 설정하여 비활성화합니다. - acm-hive-openshift-releases GitHub 리포지토리 2.5 브랜치 를 분기합니다.
stolostron
대신 분기된 리포지토리의 GitHub 이름에 액세스하도록spec: pathname
을 변경하여./subscribe/channel.yaml
파일을 업데이트합니다. 이 단계에서는 hub 클러스터가 릴리스 이미지를 검색하는 위치를 지정합니다. 업데이트된 콘텐츠는 다음 예와 유사해야 합니다.spec: type: Git pathname: https://github.com/<forked_content>/acm-hive-openshift-releases.git
forked_content
를 분기된 리포지토리의 경로로 바꿉니다.Kubernetes 콘솔을 사용하여 클러스터를 생성할 때 사용할 수 있는 이미지의 YAML 파일을 ./clusterImageSets/stable/* 또는 ./clusterImageSets/fast/* 디렉터리에 추가합니다.
팁: 분기된 리포지토리에 변경 사항을 병합하여 기본 리포지토리에서 사용 가능한 YAML 파일을 검색할 수 있습니다.
- 분기된 리포지토리에 변경 사항을 커밋하고 병합합니다.
acm-hive-openshift-releases
리포지토리를 복제한 후 빠른 릴리스 이미지 목록을 동기화하려면 다음 명령을 입력하여 빠른 이미지를 업데이트합니다.make subscribe-fast
참고: Linux 또는 MacOS 운영 체제를 사용하는 경우에만 이
make
명령을 실행할 수 있습니다.이 명령을 실행하면 사용 가능한 빠른 릴리스 이미지 목록이 현재 사용 가능한 이미지로 약 1분 후에 업데이트됩니다.
기본적으로 빠른 이미지만 나열됩니다. 안정적인 릴리스 이미지를 동기화하고 표시하려면 다음 명령을 입력합니다.
make subscribe-stable
참고: Linux 또는 MacOS 운영 체제를 사용하는 경우에만 이
make
명령을 실행할 수 있습니다.이 명령을 실행하면 약 1분 후에 현재 사용 가능한 이미지와 함께 사용 가능한 안정적인 릴리스 이미지 목록이 업데이트됩니다.
기본적으로 Red Hat Advanced Cluster Management는 몇 가지 ClusterImageSets를 사전 로드합니다. 다음 명령을 사용하여 사용 가능한 항목을 나열하고 기본값을 제거할 수 있습니다.
oc get clusterImageSets oc delete clusterImageSet <clusterImageSet_NAME>
참고:
다중 클러스터hub
리소스에서disableUpdate
값을ClusterImageSets
true
로 설정하여 설치 관리자 관리 자동 업데이트를 비활성화하지 않은 경우 삭제한 모든 이미지가 자동으로 다시 생성됩니다.- 클러스터를 생성할 때 Red Hat Advanced Cluster Management 콘솔에서 현재 사용 가능한 릴리스 이미지 목록을 확인합니다.
1.3.4. 연결이 끊긴 동안 사용자 정의 릴리스 이미지 목록 유지
허브 클러스터에 인터넷 연결이 없는 경우 릴리스 이미지의 사용자 정의 목록을 유지 관리해야 하는 경우도 있습니다. 클러스터를 생성할 때 사용 가능한 릴리스 이미지의 자체 사용자 정의 목록을 생성할 수 있습니다. 연결이 끊긴 동안 사용 가능한 릴리스 이미지를 관리하려면 다음 단계를 완료합니다.
- 연결된 시스템에 있는 동안 acm-hive-openshift-releases GitHub 리포지토리로 이동하여 버전 2.5에 사용할 수 있는 클러스터 이미지 세트에 액세스합니다.
-
Kubernetes 허브 클러스터의 연결이 끊긴 Red Hat Advanced Cluster Management에 액세스할 수 있는 시스템에
clusterImageSets
디렉터리를 복사합니다. 관리형 클러스터에 적합한 다음 단계를 완료하여 관리 대상 클러스터와 연결이 끊긴 리포지토리와 클러스터 이미지 세트 간의 매핑을 추가합니다.
-
OpenShift Container Platform 관리 클러스터의 경우
ImageContentSourcePolicy
오브젝트를 사용하여 매핑을 완료하는 방법에 대한 정보는 이미지 레지스트리 저장소 미러링 구성을 참조하십시오. -
OpenShift Container Platform 클러스터가 아닌 관리형 클러스터의 경우
ManageClusterImageRegistry
CRD를 사용하여 이미지 세트의 위치를 덮어씁니다. 매핑 을 위해 클러스터를 덮어쓰는 방법에 대한 정보는 사용자 정의 ManagedClusterImageRegistry CRD를 사용하여 클러스터 가져오기 를 참조하십시오.
-
OpenShift Container Platform 관리 클러스터의 경우
-
clusterImageSet
YAML 콘텐츠를 수동으로 추가하여 Red Hat Advanced Cluster Management 콘솔을 사용하여 클러스터를 생성할 때 사용 가능한 이미지의 YAML 파일을 추가합니다. 나머지 OpenShift Container Platform 릴리스 이미지의
clusterImageSet
YAML 파일을 수정하여 이미지를 저장하는 올바른 오프라인 리포지토리를 참조합니다. 업데이트는 다음 예와 유사해야 합니다.apiVersion: hive.openshift.io/v1 kind: ClusterImageSet metadata: name: img4.4.0-rc.6-x86-64 spec: releaseImage: IMAGE_REGISTRY_IPADDRESS_or_DNSNAME/REPO_PATH/ocp-release:4.4.0-rc.6-x86_64
이미지가 YAML 파일에서 참조되는 오프라인 이미지 레지스트리에 로드되었는지 확인합니다.
각 YAML 파일에 대해 다음 명령을 입력하여 각
clusterImageSets
를 생성합니다.oc create -f <clusterImageSet_FILE>
clusterImageSet_FILE
을 클러스터 이미지 세트 파일의 이름으로 교체합니다. 예를 들면 다음과 같습니다.oc create -f img4.9.9-x86_64.yaml
추가할 각 리소스에 대해 이 명령을 실행하면 사용 가능한 릴리스 이미지 목록이 제공됩니다.
- 또는 Red Hat Advanced Cluster Management의 create 클러스터 콘솔에 이미지 URL을 직접 붙여넣을 수 있습니다. 이미지 URL을 추가하면 새 clusterImageSets가 생성되지 않는 경우 생성됩니다.
- 클러스터를 생성할 때 Red Hat Advanced Cluster Management 콘솔에서 현재 사용 가능한 릴리스 이미지 목록을 확인합니다.