연결 해제된 설치 미러링
설치 컨테이너 이미지 미러링
초록
1장. 연결 해제된 설치 미러링 정보 링크 복사링크가 클립보드에 복사되었습니다!
클러스터 관리자는 미러 레지스트리를 사용하여 클러스터가 외부 콘텐츠에 대한 조직의 제어를 충족하는 컨테이너 이미지만 사용하도록 할 수 있습니다.
1.1. 연결이 끊긴 환경에 클러스터를 설치하기 위한 미러 레지스트리 링크 복사링크가 클립보드에 복사되었습니다!
클러스터를 설치하고 프로비저닝하려면 필요한 컨테이너 이미지를 연결이 끊긴 환경에 미러링해야 합니다. 이러한 컨테이너 이미지를 미러링하려면 미러 레지스트리가 있어야 합니다. 미러 레지스트리를 생성하고 사용하려면 다음 옵션을 고려하십시오.
- Red Hat Quay와 같은 컨테이너 이미지 레지스트리가 이미 있는 경우 이를 미러 레지스트리로 사용할 수 있습니다. 아직 레지스트리가 없는 경우 레지스트리를 생성해야 합니다.
-
레지스트리를 설정한 후에는 미러링 도구가 필요합니다. OpenShift Container Platform 이미지 저장소를 연결이 끊긴 환경의 미러 레지스트리에 미러링하려면 oc-mirror OpenShift CLI(
oc) 플러그인을 사용할 수 있습니다. oc-mirror 플러그인은 필요한 모든 OpenShift Container Platform 콘텐츠 및 기타 이미지를 미러 레지스트리에 미러링하는 단일 툴입니다. oc-mirror 플러그인은 미러링을 위한 기본 방법입니다. -
또는
oc adm명령을 사용하여 OpenShift Container Platform의 릴리스 및 카탈로그 이미지만 미러링할 수 있습니다.
2장. Red Hat OpenShift용 미러 레지스트리를 사용하여 미러 레지스트리 생성 링크 복사링크가 클립보드에 복사되었습니다!
Red Hat OpenShift의 미러 레지스트리는 연결이 끊긴 설치에 필요한 OpenShift Container Platform 컨테이너 이미지를 미러링하기 위한 대상으로 사용할 수 있는 작고 간소화된 컨테이너 레지스트리입니다.
Red Hat Quay와 같은 컨테이너 이미지 레지스트리가 이미 있는 경우 이 섹션을 건너뛰고 OpenShift Container Platform 이미지 리포지토리 미러링으로 바로 이동할 수 있습니다.
Red Hat OpenShift의 미러 레지스트리 는 Red Hat Quay의 프로덕션 배포를 대체하기 위한 것이 아닙니다.
2.1. 사전 요구 사항 링크 복사링크가 클립보드에 복사되었습니다!
- OpenShift Container Platform 서브스크립션
- Podman 3.4.2 이상 및 OpenSSL이 설치된 RHEL(Red Hat Enterprise Linux) 8 및 9.
- DNS 서버를 통해 확인해야 하는 Red Hat Quay 서비스의 정규화된 도메인 이름입니다.
- 대상 호스트의 키 기반 SSH 연결 로컬 설치를 위해 SSH 키가 자동으로 생성됩니다. 원격 호스트의 경우 자체 SSH 키를 생성해야 합니다.
- 2개 이상의 vCPU
- 8GB RAM.
OpenShift Container Platform 4.16 릴리스 이미지의 경우 약 12GB 또는 OpenShift Container Platform 4.16 릴리스 이미지 및 OpenShift Container Platform 4.16 Red Hat Operator 이미지의 경우 약 358GB입니다.
중요- 스트림당 최대 1TB 또는 그 이상이 권장됩니다.
- 이러한 요구 사항은 릴리스 이미지 및 Operator 이미지만을 사용한 로컬 테스트 결과를 기반으로 합니다. 스토리지 요구 사항은 조직의 요구에 따라 다를 수 있습니다. 예를 들어 여러 z-streams를 미러링할 때 더 많은 공간이 필요할 수 있습니다. 표준 Red Hat Quay 기능 또는 적절한 API 호출 을 사용하여 불필요한 이미지를 제거하고 공간을 확보할 수 있습니다.
2.2. Red Hat OpenShift 배포를 위한 미러 레지스트리 링크 복사링크가 클립보드에 복사되었습니다!
OpenShift Container Platform의 연결이 끊긴 배포의 경우 클러스터 설치를 수행하려면 컨테이너 레지스트리가 필요합니다. 이러한 클러스터에서 프로덕션 레벨 레지스트리 서비스를 실행하려면 첫 번째 클러스터를 설치하기 위해 별도의 레지스트리 배포를 생성해야 합니다. Red Hat OpenShift의 미러 레지스트리는 이러한 요구 사항을 충족하며 모든 OpenShift 서브스크립션에 포함되어 있습니다. OpenShift 콘솔 다운로드 페이지에서 다운로드할 수 있습니다.
Red Hat OpenShift의 미러 레지스트리를 사용하면 mirror-registry CLI(명령줄 인터페이스) 툴을 사용하여 Red Hat Quay의 소규모 버전과 필요한 구성 요소를 설치할 수 있습니다. Red Hat OpenShift의 미러 레지스트리 는 사전 구성된 로컬 스토리지 및 로컬 데이터베이스와 함께 자동으로 배포됩니다. 또한 단일 입력 세트로 자동 생성된 사용자 자격 증명 및 액세스 권한이 포함되며, 추가 구성 옵션 없이 시작할 수 있습니다.
Red Hat OpenShift의 미러 레지스트리 는 사전 결정된 네트워크 구성을 제공하고 성공한 경우 배포된 구성 요소 인증 정보 및 액세스 URL을 보고합니다. FQDN(정규화된 도메인 이름) 서비스, 슈퍼유저 이름 및 암호, 사용자 지정 TLS 인증서와 같은 제한된 선택적 구성 입력 세트도 제공됩니다. 이를 통해 제한된 네트워크 환경에서 OpenShift Container Platform을 실행할 때 모든 OpenShift Container Platform 릴리스 콘텐츠의 오프라인 미러를 쉽게 생성할 수 있도록 컨테이너 레지스트리가 제공됩니다.
설치 환경에서 다른 컨테이너 레지스트리를 이미 사용할 수 있는 경우 Red Hat OpenShift에 미러 레지스트리를 사용하는 것이 선택 사항입니다.
2.2.1. Red Hat OpenShift 제한 사항을 위한 미러 레지스트리 링크 복사링크가 클립보드에 복사되었습니다!
다음 제한 사항은 Red Hat OpenShift의 미러 레지스트리에 적용됩니다.
- Red Hat OpenShift의 미러 레지스트리 는 고가용성 레지스트리가 아니며 로컬 파일 시스템 스토리지만 지원됩니다. Red Hat Quay 또는 OpenShift Container Platform의 내부 이미지 레지스트리를 대체하기 위한 것이 아닙니다.
- Red Hat OpenShift의 미러 레지스트리 는 Red Hat Quay의 프로덕션 배포를 대체하기 위한 것이 아닙니다.
Red Hat OpenShift의 미러 레지스트리 는 릴리스 이미지 또는 Red Hat Operator 이미지와 같은 연결이 끊긴 OpenShift Container Platform 클러스터를 설치하는 데 필요한 이미지 호스팅에만 지원됩니다. RHEL(Red Hat Enterprise Linux) 머신의 로컬 스토리지를 사용하고 RHEL에서 지원하는 스토리지는 Red Hat OpenShift의 미러 레지스트리에서 지원합니다.
참고Red Hat OpenShift의 미러 레지스트리 는 로컬 스토리지를 사용하므로 이미지를 미러링하고 Red Hat Quay의 가비지 컬렉션 기능을 사용하여 잠재적인 문제를 완화할 때 사용되는 스토리지 사용량을 계속 알고 있어야 합니다. 이 기능에 대한 자세한 내용은 "Red Hat Quay 가비지 컬렉션"을 참조하십시오.
- 부트스트랩 목적으로 Red Hat OpenShift의 미러 레지스트리로 푸시된 Red Hat 제품 이미지에 대한 지원은 각 제품에 유효한 서브스크립션이 적용됩니다. 부트스트랩 환경을 추가로 활성화하는 예외 목록은 Self-managed Red Hat OpenShift 크기 조정 및 서브스크립션 가이드에서 확인할 수 있습니다.
- 고객이 빌드한 콘텐츠는 Red Hat OpenShift의 미러 레지스트리에서 호스팅해서는 안 됩니다.
- 클러스터 플릿을 업데이트할 때 여러 클러스터가 단일 장애 지점을 생성할 수 있으므로 클러스터가 두 개 이상 있는 Red Hat OpenShift의 미러 레지스트리 를 사용하는 것은 권장되지 않습니다. 대신 Red Hat OpenShift의 미러 레지스트리를 사용하여 OpenShift Container Platform 콘텐츠를 다른 클러스터에 제공할 수 있는 Red Hat Quay와 같은 프로덕션 수준의 고가용성 레지스트리를 호스팅할 수 있는 클러스터를 설치합니다.
2.3. Red Hat OpenShift의 미러 레지스트리를 사용하여 로컬 호스트에서 미러링 링크 복사링크가 클립보드에 복사되었습니다!
다음 절차에서는 mirror-registry 설치 프로그램 도구를 사용하여 로컬 호스트에 Red Hat OpenShift 의 미러 레지스트리를 설치하는 방법을 설명합니다. 이렇게 하면 OpenShift Container Platform 이미지의 미러를 저장하기 위해 포트 443에서 실행되는 로컬 호스트 레지스트리를 생성할 수 있습니다.
mirror-registry CLI 툴을 사용하여 Red Hat OpenShift 의 미러 레지스트리를 설치하면 시스템에 몇 가지 변경 사항이 적용됩니다. 설치 후 설치 파일, 로컬 스토리지 및 구성 번들이 있는 $HOME/quay-install 디렉터리가 생성됩니다. 배포 대상이 로컬 호스트인 경우 신뢰할 수 있는 SSH 키가 생성되고, 컨테이너 런타임이 영구적인지 확인하기 위해 호스트 시스템의 systemd 파일이 설정됩니다. 또한 init라는 초기 사용자는 자동으로 생성된 암호를 사용하여 생성됩니다. 모든 액세스 인증 정보는 설치 루틴이 끝나면 출력됩니다.
프로세스
-
OpenShift 콘솔 다운로드 페이지에 있는 Red Hat OpenShift의 미러 레지스트리 최신 버전의
mirror-registry.tar.gz 패키지를 다운로드합니다. mirror-registry 툴을 사용하여 현재 사용자 계정으로 로컬 호스트에 Red Hat OpenShift의 미러 레지스트리를 설치합니다. 사용 가능한 플래그의 전체 목록은 "Red Hat OpenShift 플래그의 미러 레지스트리"를 참조하십시오../mirror-registry install \ --quayHostname <host_example_com> \ --quayRoot <example_directory_name>
$ ./mirror-registry install \ --quayHostname <host_example_com> \ --quayRoot <example_directory_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 설치 중에 생성된 사용자 이름과 암호를 사용하여 다음 명령을 실행하여 레지스트리에 로그인합니다.
podman login -u init \ -p <password> \ <host_example_com>:8443> \ --tls-verify=false
$ podman login -u init \ -p <password> \ <host_example_com>:8443> \ --tls-verify=false1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 생성된 rootCA 인증서를 신뢰하도록 시스템을 구성하여
--tls-verify=false실행을 방지할 수 있습니다. 자세한 내용은 "Red Hat Quay 확인" 및 "인증 기관을 신뢰하도록 시스템 구성"을 참조하십시오.
참고설치 후
https://<host.example.com>:8443에서 UI에 액세스하여 로그인할 수도 있습니다.로그인 후 OpenShift Container Platform 이미지를 미러링할 수 있습니다. 필요에 따라 이 문서의 "OpenShift Container Platform 이미지 리포지토리 미러링" 또는 "연결이 끊긴 클러스터에 사용할 Operator 카탈로그 미러링" 섹션을 참조하십시오.
참고스토리지 계층 문제로 인해 Red Hat OpenShift의 미러 레지스트리에 저장된 이미지에 문제가 있는 경우 OpenShift Container Platform 이미지를 다시 미러링하거나 더 안정적인 스토리지에 미러 레지스트리를 다시 설치할 수 있습니다.
2.4. 로컬 호스트에서 Red Hat OpenShift의 미러 레지스트리 업데이트 링크 복사링크가 클립보드에 복사되었습니다!
다음 절차에서는 upgrade 명령을 사용하여 로컬 호스트에서 Red Hat OpenShift의 미러 레지스트리 를 업데이트하는 방법을 설명합니다. 최신 버전으로 업데이트하면 새로운 기능, 버그 수정 및 보안 취약점 수정이 제공됩니다.
버전 1에서 버전 2로 업그레이드할 때 다음 제약 조건을 유의하십시오.
-
SQLite에서 여러 쓰기가 허용되지 않기 때문에 작업자 수가
1로 설정됩니다. - Red Hat OpenShift 사용자 인터페이스(UP)에는 미러 레지스트리를 사용해서는 안 됩니다.
-
업그레이드하는 동안
sqlite-storagePodman 볼륨에 액세스하지 마십시오. - 업그레이드 프로세스 중에 다시 시작되므로 미러 레지스트리의 간헐적 다운 타임이 발생합니다.
-
PostgreSQL 데이터는 복구를 위해
/$HOME/quay-install/quay-postgres-backup/디렉터리에 백업됩니다.
사전 요구 사항
- 로컬 호스트에 Red Hat OpenShift의 미러 레지스트리 가 설치되어 있습니다.
프로세스
Red Hat OpenShift의 미러 레지스트리를 1.3 → 2.y에서 업그레이드하는 중이며 설치 디렉터리가
/etc/quay-install에서 기본값인 경우 다음 명령을 입력할 수 있습니다.sudo ./mirror-registry upgrade -v
$ sudo ./mirror-registry upgrade -vCopy to Clipboard Copied! Toggle word wrap Toggle overflow 참고-
Red Hat OpenShift의 미러 레지스트리 는 Red Hat Quay 스토리지, Postgres 데이터 및
/etc/quay-install데이터를 새로운$HOME/quay-install위치에 대한 Podman 볼륨을 마이그레이션합니다. 이를 통해 향후 업그레이드 중에--quayRoot플래그 없이 Red Hat OpenShift에 미러 레지스트리 를 사용할 수 있습니다. -
./ mirror-registry upgrade -v 플래그를 사용하여 Red Hat OpenShift의 미러 레지스트리를 업그레이드하는 사용자는 미러 레지스트리를 생성할 때 사용되는 것과 동일한 인증 정보를 포함해야 합니다. 예를 들어--quayHostname <host_example_com> 및를 사용하여 Red Hat OpenShift의 미러 레지스트리 를 설치한 경우 미러 레지스트리를 올바르게 업그레이드하려면 해당 문자열을 포함해야 합니다.--quayRoot <example_directory_name>
-
Red Hat OpenShift의 미러 레지스트리 는 Red Hat Quay 스토리지, Postgres 데이터 및
Red Hat OpenShift의 미러 레지스트리를 1.3 → 2.y에서 업그레이드하고 1.y 배포에서 사용자 지정 quay 구성 및 스토리지 디렉토리를 사용한 경우
--quayRoot및--quayStorage플래그를 전달해야 합니다. 예를 들면 다음과 같습니다.sudo ./mirror-registry upgrade --quayHostname <host_example_com> --quayRoot <example_directory_name> --quayStorage <example_directory_name>/quay-storage -v
$ sudo ./mirror-registry upgrade --quayHostname <host_example_com> --quayRoot <example_directory_name> --quayStorage <example_directory_name>/quay-storage -vCopy to Clipboard Copied! Toggle word wrap Toggle overflow Red Hat OpenShift의 미러 레지스트리를 1.3 → 2.y에서 업그레이드하고 사용자 정의 SQLite 스토리지 경로를 지정하려면
--sqliteStorage플래그를 전달해야 합니다. 예를 들면 다음과 같습니다.sudo ./mirror-registry upgrade --sqliteStorage <example_directory_name>/sqlite-storage -v
$ sudo ./mirror-registry upgrade --sqliteStorage <example_directory_name>/sqlite-storage -vCopy to Clipboard Copied! Toggle word wrap Toggle overflow
검증
다음 명령을 실행하여 Red Hat OpenShift의 미러 레지스트리 가 업데이트되었는지 확인합니다.
podman ps
$ podman psCopy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
registry.redhat.io/quay/quay-rhel8:v3.12.10
registry.redhat.io/quay/quay-rhel8:v3.12.10Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.5. Red Hat OpenShift의 미러 레지스트리를 사용하여 원격 호스트에서 미러링 링크 복사링크가 클립보드에 복사되었습니다!
다음 절차에서는 mirror-registry 툴을 사용하여 원격 호스트에 Red Hat OpenShift 의 미러 레지스트리를 설치하는 방법을 설명합니다. 이렇게 하면 사용자가 OpenShift Container Platform 이미지의 미러를 저장할 레지스트리를 생성할 수 있습니다.
mirror-registry CLI 툴을 사용하여 Red Hat OpenShift 의 미러 레지스트리를 설치하면 시스템에 몇 가지 변경 사항이 적용됩니다. 설치 후 설치 파일, 로컬 스토리지 및 구성 번들이 있는 $HOME/quay-install 디렉터리가 생성됩니다. 배포 대상이 로컬 호스트인 경우 신뢰할 수 있는 SSH 키가 생성되고, 컨테이너 런타임이 영구적인지 확인하기 위해 호스트 시스템의 systemd 파일이 설정됩니다. 또한 init라는 초기 사용자는 자동으로 생성된 암호를 사용하여 생성됩니다. 모든 액세스 인증 정보는 설치 루틴이 끝나면 출력됩니다.
프로세스
-
OpenShift 콘솔 다운로드 페이지에 있는 Red Hat OpenShift의 미러 레지스트리 최신 버전의
mirror-registry.tar.gz 패키지를 다운로드합니다. mirror-registry 툴을 사용하여 현재 사용자 계정으로 로컬 호스트에 Red Hat OpenShift의 미러 레지스트리를 설치합니다. 사용 가능한 플래그의 전체 목록은 "Red Hat OpenShift 플래그의 미러 레지스트리"를 참조하십시오.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 설치 중에 생성된 사용자 이름과 암호를 사용하여 미러 레지스트리에 로그인합니다.
podman login -u init \ -p <password> \ <host_example_com>:8443> \ --tls-verify=false
$ podman login -u init \ -p <password> \ <host_example_com>:8443> \ --tls-verify=false1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 생성된 rootCA 인증서를 신뢰하도록 시스템을 구성하여
--tls-verify=false실행을 방지할 수 있습니다. 자세한 내용은 "SSL을 사용하여 Red Hat Quay에 대한 연결 보호" 및 "인증 기관을 신뢰하도록 시스템 구성"을 참조하십시오.
참고설치 후
https://<host.example.com>:8443에서 UI에 액세스하여 로그인할 수도 있습니다.로그인 후 OpenShift Container Platform 이미지를 미러링할 수 있습니다. 필요에 따라 이 문서의 "OpenShift Container Platform 이미지 리포지토리 미러링" 또는 "연결이 끊긴 클러스터에 사용할 Operator 카탈로그 미러링" 섹션을 참조하십시오.
참고스토리지 계층 문제로 인해 Red Hat OpenShift의 미러 레지스트리에 저장된 이미지에 문제가 있는 경우 OpenShift Container Platform 이미지를 다시 미러링하거나 더 안정적인 스토리지에 미러 레지스트리를 다시 설치할 수 있습니다.
2.6. 원격 호스트에서 Red Hat OpenShift의 미러 레지스트리 업데이트 링크 복사링크가 클립보드에 복사되었습니다!
다음 절차에서는 upgrade 명령을 사용하여 원격 호스트에서 Red Hat OpenShift의 미러 레지스트리 를 업데이트하는 방법을 설명합니다. 최신 버전으로 업데이트하면 버그 수정 및 보안 취약점 수정이 제공됩니다.
버전 1에서 버전 2로 업그레이드할 때 다음 제약 조건을 유의하십시오.
-
SQLite에서 여러 쓰기가 허용되지 않기 때문에 작업자 수가
1로 설정됩니다. - Red Hat OpenShift 사용자 인터페이스(UP)에는 미러 레지스트리를 사용해서는 안 됩니다.
-
업그레이드하는 동안
sqlite-storagePodman 볼륨에 액세스하지 마십시오. - 업그레이드 프로세스 중에 다시 시작되므로 미러 레지스트리의 간헐적 다운 타임이 발생합니다.
-
PostgreSQL 데이터는 복구를 위해
/$HOME/quay-install/quay-postgres-backup/디렉터리에 백업됩니다.
사전 요구 사항
- 원격 호스트에 Red Hat OpenShift의 미러 레지스트리 가 설치되어 있습니다.
프로세스
원격 호스트에서 Red Hat OpenShift의 미러 레지스트리를 업그레이드하려면 다음 명령을 입력합니다.
./mirror-registry upgrade -v --targetHostname <remote_host_url> --targetUsername <user_name> -k ~/.ssh/my_ssh_key
$ ./mirror-registry upgrade -v --targetHostname <remote_host_url> --targetUsername <user_name> -k ~/.ssh/my_ssh_keyCopy to Clipboard Copied! Toggle word wrap Toggle overflow 참고./ mirror-registry upgrade -v 플래그를 사용하여 Red Hat OpenShift의 미러 레지스트리를 업그레이드하는 사용자는 미러 레지스트리를 생성할 때 사용되는 것과 동일한 인증 정보를 포함해야 합니다. 예를 들어--quayHostname <host_example_com> 및를 사용하여 Red Hat OpenShift의 미러 레지스트리 를 설치한 경우 미러 레지스트리를 올바르게 업그레이드하려면 해당 문자열을 포함해야 합니다.--quayRoot <example_directory_name>Red Hat OpenShift의 미러 레지스트리를 1.3 → 2.y에서 업그레이드하고 사용자 정의 SQLite 스토리지 경로를 지정하려면
--sqliteStorage플래그를 전달해야 합니다. 예를 들면 다음과 같습니다../mirror-registry upgrade -v --targetHostname <remote_host_url> --targetUsername <user_name> -k ~/.ssh/my_ssh_key --sqliteStorage <example_directory_name>/quay-storage
$ ./mirror-registry upgrade -v --targetHostname <remote_host_url> --targetUsername <user_name> -k ~/.ssh/my_ssh_key --sqliteStorage <example_directory_name>/quay-storageCopy to Clipboard Copied! Toggle word wrap Toggle overflow
검증
다음 명령을 실행하여 Red Hat OpenShift의 미러 레지스트리 가 업데이트되었는지 확인합니다.
podman ps
$ podman psCopy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
registry.redhat.io/quay/quay-rhel8:v3.12.10
registry.redhat.io/quay/quay-rhel8:v3.12.10Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.7. Red Hat OpenShift SSL/TLS 인증서의 미러 레지스트리 교체 링크 복사링크가 클립보드에 복사되었습니다!
경우에 따라 Red Hat OpenShift 의 미러 레지스트리에 대한 SSL/TLS 인증서를 업데이트할 수 있습니다. 이 기능은 다음 시나리오에서 유용합니다.
- Red Hat OpenShift 인증서의 현재 미러 레지스트리를 교체하는 경우.
- Red Hat OpenShift 설치를 위해 이전 미러 레지스트리와 동일한 인증서를 사용하는 경우
- Red Hat OpenShift 인증서의 미러 레지스트리를 주기적으로 업데이트하는 경우.
Red Hat OpenShift SSL/TLS 인증서의 미러 레지스트리를 교체하려면 다음 절차를 사용하십시오.
사전 요구 사항
프로세스
다음 명령을 입력하여 Red Hat OpenShift의 미러 레지스트리를 설치합니다.
./mirror-registry install \ --quayHostname <host_example_com> \ --quayRoot <example_directory_name>
$ ./mirror-registry install \ --quayHostname <host_example_com> \ --quayRoot <example_directory_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 이렇게 하면 Red Hat OpenShift의 미러 레지스트리 가
$HOME/quay-install디렉터리에 설치됩니다.-
새 CA(인증 기관) 번들을 준비하고 새
ssl.key및ssl.crt키 파일을 생성합니다. 자세한 내용은 Red Hat Quay용 SSL 및 TLS 구성 을 참조하십시오. 다음 명령을 입력하여
/$HOME/quay-install환경 변수(예:QUAY)를 할당합니다.export QUAY=/$HOME/quay-install
$ export QUAY=/$HOME/quay-installCopy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 입력하여 새
ssl.crt파일을/$HOME/quay-install디렉터리에 복사합니다.cp ~/ssl.crt $QUAY/quay-config
$ cp ~/ssl.crt $QUAY/quay-configCopy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 입력하여 새
ssl.key파일을/$HOME/quay-install디렉터리에 복사합니다.cp ~/ssl.key $QUAY/quay-config
$ cp ~/ssl.key $QUAY/quay-configCopy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 입력하여
quay-app애플리케이션 포드를 다시 시작합니다.systemctl --user restart quay-app
$ systemctl --user restart quay-appCopy to Clipboard Copied! Toggle word wrap Toggle overflow
2.8. Red Hat OpenShift의 미러 레지스트리 설치 제거 링크 복사링크가 클립보드에 복사되었습니다!
로컬 호스트에서 Red Hat OpenShift의 미러 레지스트리를 제거하려면 다음 절차를 사용하십시오.
사전 요구 사항
- 로컬 호스트에 Red Hat OpenShift의 미러 레지스트리 가 설치되어 있습니다.
프로세스
다음 명령을 실행하여 로컬 호스트에서 Red Hat OpenShift의 미러 레지스트리 를 설치 제거합니다.
./mirror-registry uninstall -v \ --quayRoot <example_directory_name>
$ ./mirror-registry uninstall -v \ --quayRoot <example_directory_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 참고-
Red Hat OpenShift의 미러 레지스트리를 삭제하면 삭제하기 전에 사용자에게 메시지를 표시합니다.
--autoApprove를 사용하여 이 프롬프트를 건너뛸 수 있습니다. -
--quayRoot플래그를 사용하여 Red Hat OpenShift의 미러 레지스트리 를 설치하는 사용자는 제거할 때--quayRoot플래그를 포함해야 합니다. 예를 들어--quayRoot example_directory_name을 사용하여 Red Hat OpenShift의 미러 레지스트리 를 설치한 경우 미러 레지스트리를 올바르게 제거하려면 해당 문자열을 포함해야 합니다.
-
Red Hat OpenShift의 미러 레지스트리를 삭제하면 삭제하기 전에 사용자에게 메시지를 표시합니다.
2.9. Red Hat OpenShift 플래그의 미러 레지스트리 링크 복사링크가 클립보드에 복사되었습니다!
다음 플래그는 Red Hat OpenShift의 미러 레지스트리에 사용할 수 있습니다.
| 플래그 | 설명 |
|---|---|
|
|
대화형 프롬프트를 비활성화하는 부울 값입니다. |
|
| Quay 설치 중에 생성된 init 사용자의 암호입니다. 8자 이상이어야 하며 공백을 포함하지 않아야 합니다. |
|
|
초기 사용자의 사용자 이름을 표시합니다. 지정되지 않은 경우 기본값은 |
|
| 사용자는 색상 시퀀스를 비활성화하고 설치, 제거 및 업그레이드 명령을 실행할 때 Ansible에 이를 전파할 수 있습니다. |
|
|
클라이언트가 레지스트리에 연결하는 데 사용할 미러 레지스트리의 정규화된 도메인 이름입니다. Quay |
|
|
Quay 영구 스토리지 데이터가 저장되는 폴더입니다. 기본값은 |
|
|
|
|
|
SQLite 데이터베이스 데이터가 저장되는 폴더입니다. 지정되지 않은 경우 기본값은 |
|
|
SSH ID 키의 경로입니다. 지정되지 않은 경우 기본값은 |
|
|
SSL/TLS 공개 키 / 인증서의 경로입니다. 기본값은 |
|
|
|
|
|
HTTPS 통신에 사용되는 SSL/TLS 개인 키의 경로입니다. 기본값은 |
|
|
Quay를 설치할 대상의 호스트 이름입니다. 지정되지 않은 경우 기본값은 |
|
|
SSH에 사용할 대상 호스트의 사용자입니다. 기본값은 |
|
| 디버그 로그 및 Ansible 플레이북 출력을 표시합니다. |
|
| Red Hat OpenShift의 미러 레지스트리 버전을 보여줍니다. |
-
시스템의 공용 DNS 이름이 로컬 호스트 이름과 다른 경우
--quayHostname을 수정해야 합니다. 또한--quayHostname플래그는 IP 주소와 함께 설치를 지원하지 않습니다. 호스트 이름으로 설치해야 합니다. -
--sslCheckSkip은 미러 레지스트리가 프록시 뒤에 설정되고 노출된 호스트 이름이 내부 Quay 호스트 이름과 다른 경우 사용됩니다. 설치하는 동안 제공된 Quay 호스트 이름에 대해 인증서의 유효성을 검사하는 것을 원하지 않을 때 사용할 수도 있습니다.
2.10. Red Hat OpenShift 릴리스 노트의 미러 레지스트리 링크 복사링크가 클립보드에 복사되었습니다!
Red Hat OpenShift의 미러 레지스트리 는 연결이 끊긴 설치에 필요한 OpenShift Container Platform 컨테이너 이미지를 미러링하기 위해 대상으로 사용할 수 있는 작고 간소화된 컨테이너 레지스트리입니다.
이 릴리스 노트에서는 OpenShift Container Platform의 Red Hat OpenShift의 미러 레지스트리 개발을 추적합니다.
2.10.1. Red Hat OpenShift 2.0 릴리스 노트의 미러 레지스트리 링크 복사링크가 클립보드에 복사되었습니다!
다음 섹션에서는 Red Hat OpenShift의 미러 레지스트리 각 2.0 릴리스에 대한 세부 정보를 제공합니다.
2.10.1.1. Red Hat OpenShift 2.0.8의 미러 레지스트리 링크 복사링크가 클립보드에 복사되었습니다!
출시 날짜: 2025년 10월 16일
Red Hat OpenShift의 미러 레지스트리 는 이제 Red Hat Quay 3.12.12에서 사용할 수 있습니다.
다음 권고는 Red Hat OpenShift의 미러 레지스트리에 사용할 수 있습니다.
2.10.1.2. Red Hat OpenShift 2.0.7의 미러 레지스트리 링크 복사링크가 클립보드에 복사되었습니다!
출시 날짜: 2025년 7월 14일
Red Hat OpenShift의 미러 레지스트리 는 이제 Red Hat Quay 3.12.10에서 사용할 수 있습니다.
다음 권고는 Red Hat OpenShift의 미러 레지스트리에 사용할 수 있습니다.
2.10.1.3. Red Hat OpenShift 2.0.6의 미러 레지스트리 링크 복사링크가 클립보드에 복사되었습니다!
출시 날짜: 2025년 4월 28일
Red Hat OpenShift의 미러 레지스트리 는 이제 Red Hat Quay 3.12.8에서 사용할 수 있습니다.
다음 권고는 Red Hat OpenShift의 미러 레지스트리에 사용할 수 있습니다.
2.10.1.4. Red Hat OpenShift 2.0.5의 미러 레지스트리 링크 복사링크가 클립보드에 복사되었습니다!
출시 날짜: 2025년 1월 13일
Red Hat OpenShift의 미러 레지스트리 는 이제 Red Hat Quay 3.12.5에서 사용할 수 있습니다.
다음 권고는 Red Hat OpenShift의 미러 레지스트리에 사용할 수 있습니다.
2.10.1.5. Red Hat OpenShift 2.0.4의 미러 레지스트리 링크 복사링크가 클립보드에 복사되었습니다!
출시 날짜: 2025년 1월 06일
Red Hat OpenShift의 미러 레지스트리 는 이제 Red Hat Quay 3.12.4에서 사용할 수 있습니다.
다음 권고는 Red Hat OpenShift의 미러 레지스트리에 사용할 수 있습니다.
2.10.1.6. Red Hat OpenShift 2.0.3의 미러 레지스트리 링크 복사링크가 클립보드에 복사되었습니다!
출시 날짜: 2024년 11월 25일
Red Hat OpenShift의 미러 레지스트리 는 이제 Red Hat Quay 3.12.3에서 사용할 수 있습니다.
다음 권고는 Red Hat OpenShift의 미러 레지스트리에 사용할 수 있습니다.
2.10.1.7. Red Hat OpenShift 2.0.2의 미러 레지스트리 링크 복사링크가 클립보드에 복사되었습니다!
출시 날짜: 2024년 10월 31일
Red Hat OpenShift의 미러 레지스트리 는 이제 Red Hat Quay 3.12.2에서 사용할 수 있습니다.
다음 권고는 Red Hat OpenShift의 미러 레지스트리에 사용할 수 있습니다.
2.10.1.8. Red Hat OpenShift 2.0.1의 미러 레지스트리 링크 복사링크가 클립보드에 복사되었습니다!
출시 날짜: 2024년 9월 26일
Red Hat OpenShift의 미러 레지스트리 는 이제 Red Hat Quay 3.12.1에서 사용할 수 있습니다.
다음 권고는 Red Hat OpenShift의 미러 레지스트리에 사용할 수 있습니다.
2.10.1.9. Red Hat OpenShift 2.0.0의 미러 레지스트리 링크 복사링크가 클립보드에 복사되었습니다!
출시 날짜: 2024년 9월 3일
Red Hat OpenShift의 미러 레지스트리 는 이제 Red Hat Quay 3.12.0에서 사용할 수 있습니다.
다음 권고는 Red Hat OpenShift의 미러 레지스트리에 사용할 수 있습니다.
Red Hat OpenShift 2.0.0의 미러 레지스트리와 함께 다음과 같은 새로운 기능을 사용할 수 있습니다.
Red Hat OpenShift 용 미러 레지스트리 가 릴리스되면서 내부 데이터베이스가 PostgreSQL에서 SQLite로 업그레이드되었습니다. 결과적으로 데이터가 기본적으로
sqlite-storagePodman 볼륨에 저장되고 전체 tarball 크기는 300MB로 줄어듭니다.새 설치에서는 기본적으로 SQLite를 사용합니다. 버전 2.0으로 업그레이드하기 전에 환경에 따라 "로컬 호스트에서 Red Hat OpenShift의 미러 레지스트리 업그레이드" 또는 "원격 호스트에서 Red Hat OpenShift용 미러 레지스트리 업그레이드"를 참조하십시오.
-
새로운 기능 플래그
--sqliteStorage가 추가되었습니다. 이 플래그를 사용하면 SQLite 데이터베이스 데이터가 저장되는 위치를 수동으로 설정할 수 있습니다. -
Red Hat OpenShift의 미러 레지스트리 는 IBM Power 및 IBM Z 아키텍처(
s390x및ppc64le)에서 사용할 수 있습니다.
2.10.2. Red Hat OpenShift 1.3 릴리스 노트의 미러 레지스트리 링크 복사링크가 클립보드에 복사되었습니다!
Red Hat OpenShift 1.3 릴리스 노트의 미러 레지스트리를 보려면 Red Hat OpenShift 1.3 릴리스 노트의 미러 레지스트리 를 참조하십시오.
2.10.3. Red Hat OpenShift 1.2 릴리스 노트의 미러 레지스트리 링크 복사링크가 클립보드에 복사되었습니다!
Red Hat OpenShift 1.2 릴리스 노트의 미러 레지스트리를 보려면 Red Hat OpenShift 1.2 릴리스 노트의 미러 레지스트리 를 참조하십시오.
2.10.4. Red Hat OpenShift 1.1 릴리스 노트의 미러 레지스트리 링크 복사링크가 클립보드에 복사되었습니다!
Red Hat OpenShift 1.1 릴리스 노트의 미러 레지스트리를 보려면 Red Hat OpenShift 1.1 릴리스 노트의 미러 레지스트리 를 참조하십시오.
2.11. Red Hat OpenShift의 미러 레지스트리 문제 해결 링크 복사링크가 클립보드에 복사되었습니다!
Red Hat OpenShift의 미러 레지스트리 문제 해결을 지원하기 위해 미러 레지스트리에서 설치한 systemd 서비스의 로그를 수집할 수 있습니다. 다음 서비스가 설치됩니다.
- quay-app.service
- quay-postgres.service
- quay-redis.service
- quay-pod.service
사전 요구 사항
- Red Hat OpenShift용 미러 레지스트리 가 설치되어 있어야 합니다.
프로세스
루트 권한으로 Red Hat OpenShift의 미러 레지스트리를 설치한 경우 다음 명령을 입력하여 systemd 서비스의 상태 정보를 가져올 수 있습니다.
sudo systemctl status <service>
$ sudo systemctl status <service>Copy to Clipboard Copied! Toggle word wrap Toggle overflow Red Hat OpenShift의 미러 레지스트리를 표준 사용자로 설치한 경우 다음 명령을 입력하여 systemd 서비스의 상태 정보를 가져올 수 있습니다.
systemctl --user status <service>
$ systemctl --user status <service>Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.12. 추가 리소스 링크 복사링크가 클립보드에 복사되었습니다!
3장. 연결 해제된 설치를 위한 이미지 미러링 링크 복사링크가 클립보드에 복사되었습니다!
클러스터가 외부 콘텐츠에 대한 조직의 제어를 충족하는 컨테이너 이미지만 사용하도록 할 수 있습니다. 제한된 네트워크에서 프로비저닝된 인프라에 클러스터를 설치하기 전에 필요한 컨테이너 이미지를 해당 환경에 미러링해야 합니다. 컨테이너 이미지를 미러링하려면 미러링을 위한 레지스트리가 있어야 합니다.
필요한 컨테이너 이미지를 얻으려면 인터넷에 액세스해야 합니다. 이 절차에서는 네트워크와 인터넷에 모두 액세스할 수 있는 미러 호스트에 미러 레지스트리를 배치합니다. 미러 호스트에 액세스할 수 없는 경우 연결이 끊긴 클러스터에 사용할 Operator 카탈로그를 미러링하여 네트워크 경계를 이동할 수 있는 장치에 이미지를 복사합니다.
3.1. 사전 요구 사항 링크 복사링크가 클립보드에 복사되었습니다!
다음 레지스트리 중 하나와 같이 OpenShift Container Platform 클러스터를 호스팅할 위치에 Docker v2-2를 지원하는 컨테이너 이미지 레지스트리가 있어야 합니다.
Red Hat Quay에 대한 인타이틀먼트가 있는 경우 개념 증명 목적으로 또는 Red Hat Quay Operator를 사용하여 Red Hat Quay 배포에 대한 설명서를 참조하십시오. 레지스트리를 선택 및 설치하는 데 추가 지원이 필요한 경우 영업 담당자 또는 Red Hat 지원팀에 문의하십시오.
- 컨테이너 이미지 레지스트리에 대한 기존 솔루션이 없는 경우 OpenShift Container Platform 구독자에게 Red Hat OpenShift의 미러 레지스트리가 제공됩니다. Red Hat OpenShift의 미러 레지스트리 는 서브스크립션에 포함되어 있으며 연결이 끊긴 설치에서 OpenShift Container Platform의 필요한 컨테이너 이미지를 미러링하는 데 사용할 수 있는 소규모 컨테이너 레지스트리입니다.
3.2. 미러 레지스트리 정보 링크 복사링크가 클립보드에 복사되었습니다!
OpenShift Container Platform 설치 및 후속 제품 업데이트에 필요한 이미지를 Red Hat Quay, JFrog Artifactory, Sonatype Nexus Repository 또는 Harbor와 같은 컨테이너 미러 레지스트리에 미러링할 수 있습니다. 대규모 컨테이너 레지스트리에 액세스할 수 없는 경우 OpenShift Container Platform 서브스크립션에 포함된 소규모 컨테이너 레지스트리인 Red Hat OpenShift 에 미러 레지스트리를 사용할 수 있습니다.
Red Hat Quay, Red Hat OpenShift의 미러 레지스트리, Artifactory, Sonatype Nexus Repository 또는 Harbor와 같은 Docker v2-2 를 지원하는 컨테이너 레지스트리를 사용할 수 있습니다. 선택한 레지스트리에 관계없이 인터넷상의 Red Hat 호스팅 사이트의 콘텐츠를 격리된 이미지 레지스트리로 미러링하는 절차는 동일합니다. 콘텐츠를 미러링한 후 미러 레지스트리에서 이 콘텐츠를 검색하도록 각 클러스터를 설정합니다.
OpenShift 이미지 레지스트리는 미러링 프로세스 중에 필요한 태그 없이 푸시를 지원하지 않으므로 대상 레지스트리로 사용할 수 없습니다.
Red Hat OpenShift의 미러 레지스트리가 아닌 컨테이너 레지스트리를 선택하는 경우 프로비저닝하는 클러스터의 모든 시스템에서 연결할 수 있어야 합니다. 레지스트리에 연결할 수 없는 경우 설치, 업데이트 또는 워크로드 재배치와 같은 일반 작업이 실패할 수 있습니다. 따라서 고가용성 방식으로 미러 레지스트리를 실행해야하며 미러 레지스트리는 최소한 OpenShift Container Platform 클러스터의 프로덕션 환경의 가용성조건에 일치해야 합니다.
미러 레지스트리를 OpenShift Container Platform 이미지로 채우면 다음 두 가지 시나리오를 수행할 수 있습니다. 호스트가 인터넷과 미러 레지스트리에 모두 액세스할 수 있지만 클러스터 노드에 액세스 할 수 없는 경우 해당 머신의 콘텐츠를 직접 미러링할 수 있습니다. 이 프로세스를 connected mirroring(미러링 연결)이라고 합니다. 그러한 호스트가 없는 경우 이미지를 파일 시스템에 미러링한 다음 해당 호스트 또는 이동식 미디어를 제한된 환경에 배치해야 합니다. 이 프로세스를 미러링 연결 해제라고 합니다.
미러링된 레지스트리의 경우 가져온 이미지의 소스를 보려면 CRI-O 로그의 Trying to access 로그 항목을 검토해야 합니다. 노드에서 crictl images 명령을 사용하는 등의 이미지 가져오기 소스를 보는 다른 방법은 미러링되지 않은 이미지 이름을 표시합니다.
Red Hat은 OpenShift Container Platform에서 타사 레지스트리를 테스트하지 않습니다.
추가 정보
이미지 소스를 보려면 CRI-O 로그를 확인하는 방법에 대한 자세한 내용은 이미지 가져오기 소스 보기를 참조하십시오.
3.3. 미러 호스트 준비 링크 복사링크가 클립보드에 복사되었습니다!
미러 단계를 수행하기 전에 호스트는 콘텐츠를 검색하고 원격 위치로 푸시할 준비가 되어 있어야 합니다.
3.3.1. OpenShift CLI 설치 링크 복사링크가 클립보드에 복사되었습니다!
명령줄 인터페이스를 사용하여 OpenShift Container Platform과 상호 작용하기 위해 OpenShift CLI(oc)를 설치할 수 있습니다. Linux, Windows 또는 macOS에 oc를 설치할 수 있습니다.
이전 버전의 oc 를 설치한 경우 OpenShift Container Platform 4.16의 모든 명령을 완료하는 데 해당 버전을 사용할 수 없습니다. 새 버전의 oc를 다운로드하여 설치합니다.
3.3.1.1. Linux에서 OpenShift CLI 설치 링크 복사링크가 클립보드에 복사되었습니다!
다음 절차를 사용하여 Linux에서 OpenShift CLI(oc) 바이너리를 설치할 수 있습니다.
프로세스
- Red Hat 고객 포털에서 OpenShift Container Platform 다운로드 페이지로 이동합니다.
- 제품 변형 드롭다운 목록에서 아키텍처를 선택합니다.
- 버전 드롭다운 목록에서 적절한 버전을 선택합니다.
- OpenShift v4.16 Linux Clients 항목 옆에 있는 지금 다운로드를 클릭하고 파일을 저장합니다.
아카이브의 압축을 풉니다.
tar xvf <file>
$ tar xvf <file>Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc바이너리를PATH에 있는 디렉터리에 배치합니다.PATH를 확인하려면 다음 명령을 실행합니다.echo $PATH
$ echo $PATHCopy to Clipboard Copied! Toggle word wrap Toggle overflow
검증
OpenShift CLI를 설치한 후
oc명령을 사용할 수 있습니다.oc <command>
$ oc <command>Copy to Clipboard Copied! Toggle word wrap Toggle overflow
3.3.1.2. Windows에서 OpenSfhit CLI 설치 링크 복사링크가 클립보드에 복사되었습니다!
다음 절차에 따라 Windows에 OpenShift CLI(oc) 바이너리를 설치할 수 있습니다.
프로세스
- Red Hat 고객 포털에서 OpenShift Container Platform 다운로드 페이지로 이동합니다.
- 버전 드롭다운 목록에서 적절한 버전을 선택합니다.
- OpenShift v4.16 Windows Client 항목 옆에 있는 지금 다운로드를 클릭하고 파일을 저장합니다.
- ZIP 프로그램으로 아카이브의 압축을 풉니다.
oc바이너리를PATH에 있는 디렉터리로 이동합니다.PATH를 확인하려면 명령 프롬프트를 열고 다음 명령을 실행합니다.path
C:\> pathCopy to Clipboard Copied! Toggle word wrap Toggle overflow
검증
OpenShift CLI를 설치한 후
oc명령을 사용할 수 있습니다.oc <command>
C:\> oc <command>Copy to Clipboard Copied! Toggle word wrap Toggle overflow
3.3.1.3. macOS에 OpenShift CLI 설치 링크 복사링크가 클립보드에 복사되었습니다!
다음 절차에 따라 macOS에서 OpenShift CLI(oc) 바이너리를 설치할 수 있습니다.
프로세스
- Red Hat 고객 포털에서 OpenShift Container Platform 다운로드 페이지로 이동합니다.
- 버전 드롭다운 목록에서 적절한 버전을 선택합니다.
OpenShift v4.16 macOS Clients 항목 옆에 있는 지금 다운로드를 클릭하고 파일을 저장합니다.
참고macOS arm64의 경우 OpenShift v4.16 macOS arm64 Client 항목을 선택합니다.
- 아카이브의 압축을 해제하고 압축을 풉니다.
oc바이너리 PATH의 디렉터리로 이동합니다.PATH를 확인하려면 터미널을 열고 다음 명령을 실행합니다.echo $PATH
$ echo $PATHCopy to Clipboard Copied! Toggle word wrap Toggle overflow
검증
oc명령을 사용하여 설치를 확인합니다.oc <command>
$ oc <command>Copy to Clipboard Copied! Toggle word wrap Toggle overflow
3.4. 이미지를 미러링할 수 있는 인증 정보 설정 링크 복사링크가 클립보드에 복사되었습니다!
Red Hat에서 미러로 이미지를 미러링할 수 있는 컨테이너 이미지 레지스트리 인증 정보 파일을 생성합니다.
클러스터를 설치할 때 이 이미지 레지스트리 인증 정보 파일을 풀 시크릿(pull secret)으로 사용하지 마십시오. 클러스터를 설치할 때 이 파일을 지정하면 클러스터의 모든 시스템에 미러 레지스트리에 대한 쓰기 권한이 부여됩니다.
이 프로세스에서는 미러 레지스트리의 컨테이너 이미지 레지스트리에 대한 쓰기 권한이 있어야 하며 인증 정보를 레지스트리 풀 시크릿에 추가해야 합니다.
사전 요구 사항
- 연결이 끊긴 환경에서 사용할 미러 레지스트리를 구성했습니다.
- 미러 레지스트리에서 이미지를 미러링할 이미지 저장소 위치를 확인했습니다.
- 이미지를 해당 이미지 저장소에 업로드할 수 있는 미러 레지스트리 계정을 제공하고 있습니다.
프로세스
설치 호스트에서 다음 단계를 수행합니다.
-
Red Hat OpenShift Cluster Manager에서
registry.redhat.io풀 시크릿을 다운로드합니다. 풀 시크릿을 JSON 형식으로 복사합니다.
cat ./pull-secret | jq . > <path>/<pull_secret_file_in_json>
$ cat ./pull-secret | jq . > <path>/<pull_secret_file_in_json>1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 풀 시크릿을 저장할 폴더의 경로와 생성한 JSON 파일의 이름을 지정합니다.
파일의 내용은 다음 예와 유사합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 미러 레지스트리에 대한 base64로 인코딩된 사용자 이름 및 암호 또는 토큰을 생성합니다.
echo -n '<user_name>:<password>' | base64 -w0
$ echo -n '<user_name>:<password>' | base64 -w01 BGVtbYk3ZHAtqXs=Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
<user_name>및<password>의 경우 레지스트리에 설정한 사용자 이름 및 암호를 지정합니다.
JSON 파일을 편집하고 레지스트리를 설명하는 섹션을 추가합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 파일은 다음 예제와 유사합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
3.5. OpenShift Container Platform 이미지 저장소 미러링 링크 복사링크가 클립보드에 복사되었습니다!
클러스터 설치 또는 업그레이드 중에 사용할 OpenShift Container Platform 이미지 저장소를 레지스트리에 미러링합니다.
사전 요구 사항
- 미러 호스트가 인터넷에 액세스할 수 있습니다.
- 네트워크가 제한된 환경에서 사용할 미러 레지스트리를 설정하고 설정한 인증서 및 인증 정보에 액세스할 수 있습니다.
- Red Hat OpenShift Cluster Manager에서 풀 시크릿 을 다운로드하여 미러 저장소에 대한 인증을 포함하도록 수정했습니다.
- 자체 서명된 인증서를 사용하는 경우 인증서에 주체 대체 이름을 지정했습니다.
프로세스
미러 호스트에서 다음 단계를 완료합니다.
- OpenShift Container Platform 다운로드 페이지를 확인하여 설치할 OpenShift Container Platform 버전을 확인하고 Repository Tags 페이지에서 해당 태그를 지정합니다.
필요한 환경 변수를 설정합니다.
릴리스 버전을 내보냅니다.
OCP_RELEASE=<release_version>
$ OCP_RELEASE=<release_version>Copy to Clipboard Copied! Toggle word wrap Toggle overflow <release_version>에 대해 설치할 OpenShift Container Platform 버전에 해당하는 태그를 지정합니다 (예:4.5.4).로컬 레지스트리 이름 및 호스트 포트를 내보냅니다.
LOCAL_REGISTRY='<local_registry_host_name>:<local_registry_host_port>'
$ LOCAL_REGISTRY='<local_registry_host_name>:<local_registry_host_port>'Copy to Clipboard Copied! Toggle word wrap Toggle overflow <local_registry_host_name>의 경우 미러 저장소의 레지스트리 도메인 이름을 지정하고<local_registry_host_port>의 경우 콘텐츠를 제공하는데 사용되는 포트를 지정합니다.로컬 저장소 이름을 내보냅니다.
LOCAL_REPOSITORY='<local_repository_name>'
$ LOCAL_REPOSITORY='<local_repository_name>'Copy to Clipboard Copied! Toggle word wrap Toggle overflow <local_repository_name>의 경우 레지스트리에 작성할 저장소 이름 (예:ocp4/openshift4)을 지정합니다.미러링할 저장소 이름을 내보냅니다.
PRODUCT_REPO='openshift-release-dev'
$ PRODUCT_REPO='openshift-release-dev'Copy to Clipboard Copied! Toggle word wrap Toggle overflow 프로덕션 환경의 릴리스의 경우
openshift-release-dev를 지정해야 합니다.레지스트리 풀 시크릿의 경로를 내보냅니다.
LOCAL_SECRET_JSON='<path_to_pull_secret>'
$ LOCAL_SECRET_JSON='<path_to_pull_secret>'Copy to Clipboard Copied! Toggle word wrap Toggle overflow 생성한 미러 레지스트리에 대한 풀 시크릿의 절대 경로 및 파일 이름을
<path_to_pull_secret>에 지정합니다.릴리스 미러를 내보냅니다.
RELEASE_NAME="ocp-release"
$ RELEASE_NAME="ocp-release"Copy to Clipboard Copied! Toggle word wrap Toggle overflow 프로덕션 환경의 릴리스의 경우
ocp-release를 지정해야 합니다.클러스터의 아키텍처 유형을 내보냅니다.
ARCHITECTURE=<cluster_architecture>
$ ARCHITECTURE=<cluster_architecture>1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
x86_64,aarch64,s390x또는ppc64le과 같은 클러스터의 아키텍처를 지정합니다.
미러링된 이미지를 호스트할 디렉터리의 경로를 내보냅니다.
REMOVABLE_MEDIA_PATH=<path>
$ REMOVABLE_MEDIA_PATH=<path>1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 초기 슬래시 (/) 문자를 포함하여 전체 경로를 지정합니다.
미러 레지스트리에 버전 이미지를 미러링합니다.
미러 호스트가 인터넷에 액세스할 수 없는 경우 다음 작업을 수행합니다.
- 이동식 미디어를 인터넷에 연결된 시스템에 연결합니다.
미러링할 이미지 및 설정 매니페스트를 확인합니다.
oc adm release mirror -a ${LOCAL_SECRET_JSON} \ --from=quay.io/${PRODUCT_REPO}/${RELEASE_NAME}:${OCP_RELEASE}-${ARCHITECTURE} \ --to=${LOCAL_REGISTRY}/${LOCAL_REPOSITORY} \ --to-release-image=${LOCAL_REGISTRY}/${LOCAL_REPOSITORY}:${OCP_RELEASE}-${ARCHITECTURE} --dry-run$ oc adm release mirror -a ${LOCAL_SECRET_JSON} \ --from=quay.io/${PRODUCT_REPO}/${RELEASE_NAME}:${OCP_RELEASE}-${ARCHITECTURE} \ --to=${LOCAL_REGISTRY}/${LOCAL_REPOSITORY} \ --to-release-image=${LOCAL_REGISTRY}/${LOCAL_REPOSITORY}:${OCP_RELEASE}-${ARCHITECTURE} --dry-runCopy to Clipboard Copied! Toggle word wrap Toggle overflow -
이전 명령의 출력에서 전체
imageContentSources섹션을 기록합니다. 미러에 대한 정보는 미러링된 저장소에 고유하며 설치 중에imageContentSources섹션을install-config.yaml파일에 추가해야 합니다. 이동식 미디어의 디렉터리에 이미지를 미러링합니다.
oc adm release mirror -a ${LOCAL_SECRET_JSON} --to-dir=${REMOVABLE_MEDIA_PATH}/mirror quay.io/${PRODUCT_REPO}/${RELEASE_NAME}:${OCP_RELEASE}-${ARCHITECTURE}$ oc adm release mirror -a ${LOCAL_SECRET_JSON} --to-dir=${REMOVABLE_MEDIA_PATH}/mirror quay.io/${PRODUCT_REPO}/${RELEASE_NAME}:${OCP_RELEASE}-${ARCHITECTURE}Copy to Clipboard Copied! Toggle word wrap Toggle overflow 미디어를 네트워크가 제한된 환경으로 가져와서 이미지를 로컬 컨테이너 레지스트리에 업로드합니다.
oc image mirror -a ${LOCAL_SECRET_JSON} --from-dir=${REMOVABLE_MEDIA_PATH}/mirror "file://openshift/release:${OCP_RELEASE}*" ${LOCAL_REGISTRY}/${LOCAL_REPOSITORY}$ oc image mirror -a ${LOCAL_SECRET_JSON} --from-dir=${REMOVABLE_MEDIA_PATH}/mirror "file://openshift/release:${OCP_RELEASE}*" ${LOCAL_REGISTRY}/${LOCAL_REPOSITORY}1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
REMOVABLE_MEDIA_PATH의 경우 이미지를 미러링 할 때 지정한 것과 동일한 경로를 사용해야 합니다.
중요oc image mirror를 실행하면 다음과 같은 오류가 발생할 수 있습니다.error: unable to retrieve source image. 이 오류는 이미지 인덱스에 이미지 레지스트리에 더 이상 존재하지 않는 이미지에 대한 참조가 포함된 경우 발생합니다. 이미지 인덱스에서는 이러한 이미지를 실행하는 사용자가 업그레이드 그래프의 최신 지점으로 업그레이드 경로를 실행할 수 있도록 이전 참조를 유지할 수 있습니다. 임시 해결 방법으로--skip-missing옵션을 사용하여 오류를 무시하고 이미지 인덱스를 계속 다운로드할 수 있습니다. 자세한 내용은 Service Mesh Operator 미러링 실패 에서 참조하십시오.
로컬 컨테이너 레지스트리가 미러 호스트에 연결된 경우 다음 작업을 수행합니다.
다음 명령을 사용하여 릴리스 이미지를 로컬 레지스트리에 직접 푸시합니다.
oc adm release mirror -a ${LOCAL_SECRET_JSON} \ --from=quay.io/${PRODUCT_REPO}/${RELEASE_NAME}:${OCP_RELEASE}-${ARCHITECTURE} \ --to=${LOCAL_REGISTRY}/${LOCAL_REPOSITORY} \ --to-release-image=${LOCAL_REGISTRY}/${LOCAL_REPOSITORY}:${OCP_RELEASE}-${ARCHITECTURE}$ oc adm release mirror -a ${LOCAL_SECRET_JSON} \ --from=quay.io/${PRODUCT_REPO}/${RELEASE_NAME}:${OCP_RELEASE}-${ARCHITECTURE} \ --to=${LOCAL_REGISTRY}/${LOCAL_REPOSITORY} \ --to-release-image=${LOCAL_REGISTRY}/${LOCAL_REPOSITORY}:${OCP_RELEASE}-${ARCHITECTURE}Copy to Clipboard Copied! Toggle word wrap Toggle overflow 이 명령은 요약된 릴리스 정보를 가져오며, 명령 출력에는 클러스터를 설치할 때 필요한
imageContentSources데이터가 포함됩니다.이전 명령의 출력에서 전체
imageContentSources섹션을 기록합니다. 미러에 대한 정보는 미러링된 저장소에 고유하며 설치 중에imageContentSources섹션을install-config.yaml파일에 추가해야 합니다.참고미러링 프로세스 중에 이미지 이름이 Quay.io에 패치되고 podman 이미지는 부트스트랩 가상 머신의 레지스트리에 Quay.io를 표시합니다.
미러링된 콘텐츠를 기반으로 설치 프로그램을 생성하려면 콘텐츠를 추출하여 릴리스 배포에 고정합니다.
미러 호스트가 인터넷에 액세스할 수 없는 경우 다음 명령을 실행합니다.
oc adm release extract -a ${LOCAL_SECRET_JSON} --icsp-file=<file> --command=openshift-install "${LOCAL_REGISTRY}/${LOCAL_REPOSITORY}:${OCP_RELEASE}-${ARCHITECTURE}" \ --insecure=true$ oc adm release extract -a ${LOCAL_SECRET_JSON} --icsp-file=<file> --command=openshift-install "${LOCAL_REGISTRY}/${LOCAL_REPOSITORY}:${OCP_RELEASE}-${ARCHITECTURE}" \ --insecure=true1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 선택 사항: 대상 레지스트리에 대한 신뢰를 구성하지 않으려면
--insecure=true플래그를 추가합니다.
로컬 컨테이너 레지스트리가 미러 호스트에 연결된 경우 다음 명령을 실행합니다.
oc adm release extract -a ${LOCAL_SECRET_JSON} --command=openshift-install "${LOCAL_REGISTRY}/${LOCAL_REPOSITORY}:${OCP_RELEASE}-${ARCHITECTURE}"$ oc adm release extract -a ${LOCAL_SECRET_JSON} --command=openshift-install "${LOCAL_REGISTRY}/${LOCAL_REPOSITORY}:${OCP_RELEASE}-${ARCHITECTURE}"Copy to Clipboard Copied! Toggle word wrap Toggle overflow 중요선택한 OpenShift Container Platform 버전에 올바른 이미지를 사용하려면 미러링된 콘텐츠에서 설치 프로그램을 배포해야 합니다.
인터넷이 연결된 컴퓨터에서 이 단계를 수행해야 합니다.
설치 프로그램에서 제공하는 인프라를 사용하는 클러스터의 경우 다음 명령을 실행합니다.
openshift-install
$ openshift-installCopy to Clipboard Copied! Toggle word wrap Toggle overflow
3.6. 연결이 끊긴 환경의 Cluster Samples Operator 링크 복사링크가 클립보드에 복사되었습니다!
연결이 끊긴 환경에서는 Cluster Samples Operator를 구성하기 위해 클러스터를 설치한 후 추가 단계를 수행해야 합니다. 준비 과정에서 다음 정보를 검토합니다.
3.6.1. 미러링을 위한 Cluster Samples Operator 지원 링크 복사링크가 클립보드에 복사되었습니다!
설치 프로세스 중에 OpenShift Container Platform은 openshift-cluster-samples-operator 네임스페이스에 imagestreamtag-to-image라는 구성 맵을 생성합니다. imagestreamtag-to-image 구성 맵에는 각 이미지 스트림 태그에 대한 이미지 채우기 항목이 포함되어 있습니다.
구성 맵의 데이터 필드에 있는 각 항목의 키 형식은 <image_stream_name>_<image_stream_tag_name>입니다.
OpenShift Container Platform의 연결이 끊긴 설치 프로세스 중에 Cluster Samples Operator의 상태가 Removed로 설정됩니다. Managed로 변경하려면 샘플이 설치됩니다.
네트워크 제한 또는 중단된 환경에서 샘플을 사용하려면 네트워크 외부의 서비스에 액세스해야 할 수 있습니다. 일부 예제 서비스에는 GitHub, Maven Central, npm, RubyGems, PyPi 등이 있습니다. 클러스터 샘플 Operator의 오브젝트가 필요한 서비스에 도달할 수 있도록 하는 추가 단계가 있을 수 있습니다.
이 구성 맵을 사용하여 이미지 스트림을 가져오려면 이미지를 미러링해야 하는 이미지 참조로 사용할 수 있습니다.
-
Cluster Samples Operator가
Removed로 설정된 경우 미러링된 레지스트리를 생성하거나 사용할 기존 미러링된 레지스트리를 확인할 수 있습니다. - 새 구성 맵을 가이드로 사용하여 미러링된 레지스트리에 샘플을 미러링합니다.
-
Cluster Samples Operator 구성 개체의
skippedImagestreams필드에 미러링되지 않은 이미지 스트림을 추가합니다. -
Cluster Samples Operator 구성 개체의
samplesRegistry를 미러링된 레지스트리로 설정합니다. -
그런 다음 Cluster Samples Operator를
Managed로 설정하여 미러링된 이미지 스트림을 설치합니다.
3.7. 연결이 끊긴 클러스터와 함께 사용할 Operator 카탈로그 미러링 링크 복사링크가 클립보드에 복사되었습니다!
oc adm catalog mirror 명령을 사용하여 Red Hat 제공 카탈로그 또는 사용자 정의 카탈로그의 Operator 콘텐츠를 컨테이너 이미지 레지스트리에 미러링할 수 있습니다. 대상 레지스트리는 Docker v2-2를 지원해야 합니다. 제한된 네트워크에 있는 클러스터의 경우 이 레지스트리는 제한된 네트워크 클러스터 설치 중 생성된 미러 레지스트리와 같이 클러스터에 네트워크 액세스 권한이 있는 레지스트리일 수 있습니다.
- OpenShift 이미지 레지스트리는 미러링 프로세스 중에 필요한 태그 없이 푸시를 지원하지 않으므로 대상 레지스트리로 사용할 수 없습니다.
-
oc adm catalog mirror를 실행하면 다음과 같은 오류가 발생할 수 있습니다.error: unable to retrieve source image. 이 오류는 이미지 인덱스에 이미지 레지스트리에 더 이상 존재하지 않는 이미지에 대한 참조가 포함된 경우 발생합니다. 이미지 인덱스에서는 이러한 이미지를 실행하는 사용자가 업그레이드 그래프의 최신 지점으로 업그레이드 경로를 실행할 수 있도록 이전 참조를 유지할 수 있습니다. 임시 해결 방법으로--skip-missing옵션을 사용하여 오류를 무시하고 이미지 인덱스를 계속 다운로드할 수 있습니다. 자세한 내용은 Service Mesh Operator 미러링 실패 에서 참조하십시오.
oc adm catalog mirror 명령은 또한 Red Hat 제공 인덱스 이미지이든 자체 사용자 정의 빌드 인덱스 이미지이든 미러링 프로세스 중에 지정하는 인덱스 이미지를 대상 레지스트리에 자동으로 미러링합니다. 그러면 미러링된 인덱스 이미지를 사용하여 OLM(Operator Lifecycle Manager)이 OpenShift Container Platform 클러스터에 미러링된 카탈로그를 로드할 수 있는 카탈로그 소스를 생성할 수 있습니다.
3.7.1. 사전 요구 사항 링크 복사링크가 클립보드에 복사되었습니다!
연결이 끊긴 클러스터에 사용할 Operator 카탈로그를 미러링하려면 다음과 같은 사전 요구 사항이 있습니다.
- 워크스테이션에서 무제한 네트워크 액세스가 가능합니다.
-
podman버전이 1.9.3 이상입니다. 기존 카탈로그를 필터링 하거나 정리하고 선택적으로 Operator 서브 세트만 미러링하려면 다음 섹션을 참조하십시오.
Red Hat 제공 카탈로그를 미러링하려면 무제한 네트워크 액세스 권한이 있는 워크스테이션에서 다음 명령을 실행하여
registry.redhat.io로 인증합니다.podman login registry.redhat.io
$ podman login registry.redhat.ioCopy to Clipboard Copied! Toggle word wrap Toggle overflow - Docker v2-2 를 지원하는 미러 레지스트리에 액세스합니다.
-
미러 레지스트리에서 미러링된 Operator 콘텐츠를 저장하는 데 사용할 저장소 또는 네임스페이스를 결정합니다. 예를 들어
olm-mirror리포지토리를 생성할 수 있습니다. - 미러 레지스트리가 인터넷에 액세스할 수 없는 경우 이동식 미디어를 무제한 네트워크 액세스 권한이 있는 워크스테이션에 연결합니다.
registry.redhat.io를 포함하여 프라이빗 레지스트리로 작업하는 경우REG_CREDS환경 변수를 이후 단계에서 사용할 레지스트리 자격 증명의 파일 경로로 설정합니다. 예를 들어podmanCLI의 경우:REG_CREDS=${XDG_RUNTIME_DIR}/containers/auth.json$ REG_CREDS=${XDG_RUNTIME_DIR}/containers/auth.jsonCopy to Clipboard Copied! Toggle word wrap Toggle overflow
3.7.2. 카탈로그 콘텐츠 추출 및 미러링 링크 복사링크가 클립보드에 복사되었습니다!
oc adm catalog mirror 명령은 인덱스 이미지의 콘텐츠를 추출하여 미러링에 필요한 매니페스트를 생성합니다. 명령의 기본 동작은 매니페스트를 생성한 다음 인덱스 이미지 자체뿐만 아니라 인덱스 이미지의 모든 이미지 콘텐츠를 미러 레지스트리에 자동으로 미러링합니다.
또는 미러 레지스트리가 완전히 연결이 끊긴 호스트 또는 에어갭(Airgap) 호스트에 있는 경우 먼저 콘텐츠를 이동식 미디어로 미러링하고 미디어를 연결이 끊긴 환경으로 이동한 다음 미디어에서 레지스트리로 해당 콘텐츠를 미러링할 수 있습니다.
3.7.2.1. 동일한 네트워크의 레지스트리에 카탈로그 콘텐츠 미러링 링크 복사링크가 클립보드에 복사되었습니다!
미러 레지스트리가 무제한 네트워크 액세스 권한이 있는 워크스테이션과 동일한 네트워크에 배치된 경우 워크스테이션에서 다음 작업을 수행합니다.
프로세스
미러 레지스트리에 인증이 필요한 경우 다음 명령을 실행하여 레지스트리에 로그인합니다.
podman login <mirror_registry>
$ podman login <mirror_registry>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 콘텐츠를 미러 레지스트리에 추출하고 미러링합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 미러링할 카탈로그의 인덱스 이미지를 지정합니다.
- 2
- Operator 콘텐츠를 미러링할 대상 레지스트리의 FQDN(정규화된 도메인 이름)을 지정합니다. 미러 레지스트리 <
repository>는 사전 요구 사항에 설명된 대로 레지스트리의 기존 저장소 또는 네임스페이스(예:olm-mirror)일 수 있습니다. 미러링 중에 기존 저장소가 발견되면 결과 이미지 이름에 저장소 이름이 추가됩니다. 이미지 이름에 리포지토리 이름을 포함하지 않으려면 이 행에서 <repository> 값을 생략합니다(예: <mirror_registry>:<port> ). - 3
- 선택 사항: 필요한 경우 레지스트리 자격 증명 파일의 위치를 지정합니다.
registry.redhat.io에는{REG_CREDS}가 필요합니다. - 4
- 선택 사항: 대상 레지스트리에 대한 트러스트를 구성하지 않으려면
--insecure플래그를 추가합니다. - 5
- 선택 사항: 여러 변형이 있을 때 선택할 수 있는 인덱스 이미지의 플랫폼 및 아키텍처를 지정합니다. 이미지는
'<platform>/<arch>[/<variant>]’로 전달됩니다. 이는 인덱스에서 참조하는 이미지에는 적용되지 않습니다. 유효한 값은linux/amd64,linux/ppc64le,linux/s390x,linux/arm64입니다. - 6
- 선택 사항: 이미지 콘텐츠를 실제로 레지스트리에 미러링하지 않고 미러링에 필요한 매니페스트만 생성합니다. 이 옵션은 미러링할 항목을 검토하는 데 유용할 수 있으며 패키지의 서브 세트만 필요한 경우 매핑 목록을 변경할 수 있습니다. 그런 다음
oc image mirror명령과 함께mapping.txt파일을 사용하여 이후 단계에서 수정된 이미지 목록을 미러링할 수 있습니다. 이 플래그는 카탈로그의 콘텐츠를 고급 선택 미러링을 위한 것입니다.
출력 예
src image has index label for database path: /database/index.db using database path mapping: /database/index.db:/tmp/153048078 wrote database to /tmp/153048078 ... wrote mirroring manifests to manifests-redhat-operator-index-1614211642
src image has index label for database path: /database/index.db using database path mapping: /database/index.db:/tmp/153048078 wrote database to /tmp/1530480781 ... wrote mirroring manifests to manifests-redhat-operator-index-16142116422 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 명령으로 생성된 임시
index.db데이터베이스용 디렉터리입니다. - 2
- 생성된 매니페스트 디렉터리 이름을 기록합니다. 이 디렉터리는 후속 절차에서 참조됩니다.참고
Red Hat Quay는 중첩된 리포지토리를 지원하지 않습니다. 결과적으로
oc adm catalog mirror명령을 실행하면401무단 오류와 함께 실패합니다. 이 문제를 해결하려면oc adm catalog mirror명령을 실행하여 중첩된 리포지토리 생성을 비활성화할 때--max-components=2옵션을 사용할 수 있습니다. 이 해결 방법에 대한 자세한 내용은 Quay 레지스트리 지식베이스 솔루션에서 catalog mirror 명령을 사용하는 동안 발생하는 무단 오류를 참조하십시오.
3.7.2.2. Airgapped 레지스트리에 카탈로그 콘텐츠 미러링 링크 복사링크가 클립보드에 복사되었습니다!
미러 레지스트리가 완전히 연결이 끊겼거나 에어그래시된 호스트에 있는 경우 다음 작업을 수행합니다.
프로세스
무제한 네트워크 액세스 권한이 있는 워크스테이션에서 다음 명령을 실행하여 콘텐츠를 로컬 파일에 미러링합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 미러링할 카탈로그의 인덱스 이미지를 지정합니다.
- 2
- 현재 디렉터리의 로컬 파일에 미러링할 내용을 지정합니다.
- 3
- 선택 사항: 필요한 경우 레지스트리 자격 증명 파일의 위치를 지정합니다.
- 4
- 선택 사항: 대상 레지스트리에 대한 트러스트를 구성하지 않으려면
--insecure플래그를 추가합니다. - 5
- 선택 사항: 여러 변형이 있을 때 선택할 수 있는 인덱스 이미지의 플랫폼 및 아키텍처를 지정합니다. 이미지는
'<platform>/<arch>[/<variant>]'로 지정됩니다. 이는 인덱스에서 참조하는 이미지에는 적용되지 않습니다. 유효한 값은linux/amd64,linux/ppc64le,linux/s390x,linux/arm64,.*입니다.
출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 이 명령은 현재 디렉터리에
v2/디렉터리를 생성합니다.-
v2/디렉터리를 이동식 미디어에 복사합니다. - 물리적으로 미디어를 제거하고 연결이 끊긴 환경의 호스트에 연결하여 미러 레지스트리에 액세스할 수 있습니다.
미러 레지스트리에 인증이 필요한 경우 연결이 끊긴 환경의 호스트에서 다음 명령을 실행하여 레지스트리에 로그인합니다.
podman login <mirror_registry>
$ podman login <mirror_registry>Copy to Clipboard Copied! Toggle word wrap Toggle overflow v2/디렉터리가 포함된 상위 디렉터리에서 다음 명령을 실행하여 로컬 파일에서 미러 레지스트리로 이미지를 업로드합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 이전 명령 출력의
file://경로를 지정합니다. - 2
- Operator 콘텐츠를 미러링할 대상 레지스트리의 FQDN(정규화된 도메인 이름)을 지정합니다. 미러 레지스트리 <
repository>는 사전 요구 사항에 설명된 대로 레지스트리의 기존 저장소 또는 네임스페이스(예:olm-mirror)일 수 있습니다. 미러링 중에 기존 저장소가 발견되면 결과 이미지 이름에 저장소 이름이 추가됩니다. 이미지 이름에 리포지토리 이름을 포함하지 않으려면 이 행에서<repository>값을 생략합니다. (예:<mirror_registry>:<port>) - 3
- 선택 사항: 필요한 경우 레지스트리 자격 증명 파일의 위치를 지정합니다.
- 4
- 선택 사항: 대상 레지스트리에 대한 트러스트를 구성하지 않으려면
--insecure플래그를 추가합니다. - 5
- 선택 사항: 여러 변형이 있을 때 선택할 수 있는 인덱스 이미지의 플랫폼 및 아키텍처를 지정합니다. 이미지는
'<platform>/<arch>[/<variant>]'로 지정됩니다. 이는 인덱스에서 참조하는 이미지에는 적용되지 않습니다. 유효한 값은linux/amd64,linux/ppc64le,linux/s390x,linux/arm64,.*입니다.
참고Red Hat Quay는 중첩된 리포지토리를 지원하지 않습니다. 결과적으로
oc adm catalog mirror명령을 실행하면401무단 오류와 함께 실패합니다. 이 문제를 해결하려면oc adm catalog mirror명령을 실행하여 중첩된 리포지토리 생성을 비활성화할 때--max-components=2옵션을 사용할 수 있습니다. 이 해결 방법에 대한 자세한 내용은 Quay 레지스트리 지식베이스 솔루션에서 catalog mirror 명령을 사용하는 동안 발생하는 무단 오류를 참조하십시오.oc adm catalog mirror명령을 다시 실행합니다. 새로 미러링된 인덱스 이미지를 소스로 사용하고 이전 단계에서 사용된 것과 동일한 미러 레지스트리 대상을 사용합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 이 단계에서는 명령이 미러링된 모든 콘텐츠를 다시 복사하지 않도록
--manifests-only플래그가 필요합니다.
중요이전 단계에서 생성된
imageContentSourcePolicy.yaml파일의 이미지 매핑은 로컬 경로에서 유효한 미러 위치로 업데이트해야 하므로 이 단계가 필요합니다. 이렇게 하지 않으면 이후 단계에서ImageContentSourcePolicy개체를 생성할 때 오류가 발생합니다.
카탈로그를 미러링한 후 나머지 클러스터 설치를 계속할 수 있습니다. 클러스터 설치가 성공적으로 완료되면 ImageContentSourcePolicy 및 CatalogSource 오브젝트를 생성하려면 이 절차의 매니페스트 디렉터리를 지정해야 합니다. 이러한 오브젝트는 OperatorHub에서 Operator를 설치하는 데 필요합니다.
3.7.3. 생성된 매니페스트 링크 복사링크가 클립보드에 복사되었습니다!
Operator 카탈로그 콘텐츠를 미러 레지스트리에 미러링하면 현재 디렉터리에 매니페스트 디렉터리가 생성됩니다.
동일한 네트워크의 레지스트리에 콘텐츠를 미러링한 경우 디렉터리 이름은 다음 패턴을 사용합니다.
manifests-<index_image_name>-<random_number>
manifests-<index_image_name>-<random_number>
이전 섹션에서 연결이 끊긴 호스트의 레지스트리에 콘텐츠를 미러링한 경우 디렉터리 이름은 다음 패턴을 사용합니다.
manifests-index/<repository>/<index_image_name>-<random_number>
manifests-index/<repository>/<index_image_name>-<random_number>
매니페스트 디렉터리 이름은 후속 절차에서 참조됩니다.
매니페스트 디렉터리에는 다음 파일이 포함되어 있으며, 이 중 일부는 추가 수정이 필요할 수 있습니다.
catalogSource.yaml파일은 인덱스 이미지 태그 및 기타 관련 메타데이터로 미리 채워진CatalogSource오브젝트에 대한 기본 정의입니다. 이 파일은 있는 그대로 사용하거나 카탈로그 소스를 클러스터에 추가하도록 수정할 수 있습니다.중요콘텐츠를 로컬 파일에 미러링한 경우
metadata.name필드에서 .name 필드에서 백슬래시(/) 문자를 제거하려면catalogSource.yaml파일을 수정해야 합니다. 그러지 않으면 오브젝트 생성을 시도할 때 "잘못된 리소스 이름" 오류로 인해 실패합니다.imageContentSourcePolicy.yaml파일은 Operator 매니페스트에 저장된 이미지 참조와 미러링된 레지스트리 간에 변환하도록 노드를 구성할 수 있는ImageContentSourcePolicy오브젝트를 정의합니다.참고클러스터에서
ImageContentSourcePolicy오브젝트를 사용하여 저장소 미러링을 구성하는 경우 미러링된 레지스트리에 대한 글로벌 풀 시크릿만 사용할 수 있습니다. 프로젝트에 풀 시크릿을 추가할 수 없습니다.mapping.txt파일에는 모든 소스 이미지와 대상 레지스트리에서 매핑할 위치가 포함되어 있습니다. 이 파일은oc image mirror명령과 호환되며 미러링 구성을 추가로 사용자 정의하는 데 사용할 수 있습니다.중요미러링 프로세스 중
--manifests-only플래그를 사용한 후 미러링할 패키지의 서브 세트를 추가로 트리밍하려면mapping.txt파일을 수정하고oc image mirror명령으로 파일을 사용하는 데 대한 OpenShift Container Platform 4.7 설명서의 패키지 매니페스트 형식 카탈로그 이미지 미러링 절차에 있는 단계를 참조하십시오.
3.7.4. 설치 후 요구 사항 링크 복사링크가 클립보드에 복사되었습니다!
카탈로그를 미러링한 후 나머지 클러스터 설치를 계속할 수 있습니다. 클러스터 설치가 성공적으로 완료되면 ImageContentSourcePolicy 및 CatalogSource 오브젝트를 생성하려면 이 절차의 매니페스트 디렉터리를 지정해야 합니다. 이러한 오브젝트는 OperatorHub에서 Operator를 채우고 설치하는 데 필요합니다.
3.8. 다음 단계 링크 복사링크가 클립보드에 복사되었습니다!
- VMware vSphere,베어 메탈 또는 Amazon Web Services 와 같이 네트워크가 제한된 환경에서 프로비저닝한 인프라에 클러스터를 설치합니다.
4장. oc-mirror 플러그인을 사용하여 연결이 끊긴 설치의 이미지 미러링 링크 복사링크가 클립보드에 복사되었습니다!
직접 인터넷 연결이 없는 제한된 네트워크에서 클러스터를 실행하면 프라이빗 레지스트리의 미러링된 OpenShift Container Platform 컨테이너 이미지에서 클러스터를 설치할 수 있습니다. 클러스터를 실행하는 동안 이 레지스트리는 항상 실행되어야 합니다. 자세한 내용은 사전 요구 사항 섹션을 참조하십시오.
oc-mirror OpenShift CLI(oc) 플러그인을 사용하여 완전히 또는 부분적으로 연결이 끊긴 환경의 미러 레지스트리에 이미지를 미러링할 수 있습니다. 공식 Red Hat 레지스트리에서 필요한 이미지를 다운로드하려면 인터넷 연결이 있는 시스템에서 oc-mirror를 실행해야 합니다.
4.1. oc-mirror 플러그인 정보 링크 복사링크가 클립보드에 복사되었습니다!
oc-mirror OpenShift CLI(oc) 플러그인을 사용하여 필요한 모든 OpenShift Container Platform 콘텐츠 및 기타 이미지를 단일 툴을 사용하여 미러 레지스트리에 미러링할 수 있습니다. 다음과 같은 기능을 제공합니다.
- OpenShift Container Platform 릴리스, Operator, helm 차트 및 기타 이미지를 미러링하는 중앙 집중식 방법을 제공합니다.
- OpenShift Container Platform 및 Operator의 업데이트 경로를 유지 관리합니다.
- 선언적 이미지 세트 구성 파일을 사용하여 클러스터에 필요한 OpenShift Container Platform 릴리스, Operator 및 이미지만 포함합니다.
- 증분 미러링을 수행하여 향후 이미지 세트의 크기를 줄입니다.
- 이전 실행 이후 이미지 세트 구성에서 제외된 대상 미러 레지스트리에서 이미지를 정리합니다.
- 선택적으로 OpenShift Update Service (OSUS) 사용에 대한 지원 아티팩트를 생성합니다.
oc-mirror 플러그인을 사용하는 경우 이미지 세트 구성 파일에서 미러링할 콘텐츠를 지정합니다. 이 YAML 파일에서는 클러스터에 필요한 OpenShift Container Platform 릴리스와 Operator만 포함하도록 구성을 미세 조정할 수 있습니다. 이렇게 하면 다운로드 및 전송에 필요한 데이터 양이 줄어듭니다. oc-mirror 플러그인은 임의의 helm 차트 및 추가 컨테이너 이미지를 미러링하여 사용자가 워크로드를 미러 레지스트리에 원활하게 동기화할 수 있도록 지원합니다.
oc-mirror 플러그인을 처음 실행하면 연결이 끊긴 클러스터 설치 또는 업데이트를 수행하는 데 필요한 콘텐츠로 미러 레지스트리를 채웁니다. 연결이 끊긴 클러스터가 업데이트를 계속 받으려면 미러 레지스트리를 계속 업데이트해야 합니다. 미러 레지스트리를 업데이트하려면 처음 실행할 때와 동일한 구성을 사용하여 oc-mirror 플러그인을 실행합니다. oc-mirror 플러그인은 스토리지 백엔드의 메타데이터를 참조하고 툴을 마지막으로 실행한 이후 릴리스된 항목만 다운로드합니다. 이는 OpenShift Container Platform 및 Operator의 업데이트 경로를 제공하고 필요에 따라 종속성 확인을 수행합니다.
4.1.1. 고급 워크플로 링크 복사링크가 클립보드에 복사되었습니다!
다음 단계에서는 oc-mirror 플러그인을 사용하여 이미지를 미러 레지스트리에 미러링하는 방법에 대한 고급 워크플로를 간략하게 설명합니다.
- 이미지 세트 구성 파일을 생성합니다.
다음 방법 중 하나를 사용하여 대상 미러 레지스트리에 설정된 이미지를 미러링합니다.
- 대상 미러 레지스트리에 직접 설정된 이미지를 미러링합니다.
- 이미지를 디스크에 미러링하고 대상 환경으로 설정된 이미지를 전송한 다음 대상 미러 레지스트리에 설정된 이미지를 업로드합니다.
- oc-mirror 플러그인에서 생성한 리소스를 사용하도록 클러스터를 구성합니다.
- 필요에 따라 대상 미러 레지스트리를 업데이트하려면 다음 단계를 반복합니다.
oc-mirror CLI 플러그인을 사용하여 미러 레지스트리를 채우는 경우 oc-mirror 플러그인을 사용하여 대상 미러 레지스트리에 대한 추가 업데이트를 수행해야 합니다.
4.2. oc-mirror 플러그인 호환성 및 지원 링크 복사링크가 클립보드에 복사되었습니다!
oc-mirror 플러그인은 OpenShift Container Platform 버전 4.12 이상에서 OpenShift Container Platform 페이로드 이미지 및 Operator 카탈로그 미러링을 지원합니다.
aarch64,ppc64le 및 s390x 아키텍처에서 oc-mirror 플러그인은 OpenShift Container Platform 버전 4.14 이상에서만 지원됩니다.
미러링해야 하는 OpenShift Container Platform 버전에 관계없이 사용 가능한 최신 버전의 oc-mirror 플러그인을 사용합니다.
4.3. 미러 레지스트리 정보 링크 복사링크가 클립보드에 복사되었습니다!
OpenShift Container Platform 설치 및 후속 제품 업데이트에 필요한 이미지를 Red Hat Quay와 같이 Docker v2-2 를 지원하는 컨테이너 미러 레지스트리에 미러링할 수 있습니다. 대규모 컨테이너 레지스트리에 액세스할 수 없는 경우 OpenShift Container Platform 서브스크립션에 포함된 소규모 컨테이너 레지스트리인 Red Hat OpenShift 에 미러 레지스트리를 사용할 수 있습니다.
선택한 레지스트리에 관계없이 인터넷상의 Red Hat 호스팅 사이트의 콘텐츠를 격리된 이미지 레지스트리로 미러링하는 절차는 동일합니다. 콘텐츠를 미러링한 후 미러 레지스트리에서 이 콘텐츠를 검색하도록 각 클러스터를 설정합니다.
OpenShift 이미지 레지스트리는 미러링 프로세스 중에 필요한 태그 없이 푸시를 지원하지 않으므로 대상 레지스트리로 사용할 수 없습니다.
Red Hat OpenShift의 미러 레지스트리가 아닌 컨테이너 레지스트리를 선택하는 경우 프로비저닝하는 클러스터의 모든 시스템에서 연결할 수 있어야 합니다. 레지스트리에 연결할 수 없는 경우 설치, 업데이트 또는 워크로드 재배치와 같은 일반 작업이 실패할 수 있습니다. 따라서 고가용성 방식으로 미러 레지스트리를 실행해야하며 미러 레지스트리는 최소한 OpenShift Container Platform 클러스터의 프로덕션 환경의 가용성조건에 일치해야 합니다.
미러 레지스트리를 OpenShift Container Platform 이미지로 채우면 다음 두 가지 시나리오를 수행할 수 있습니다. 호스트가 인터넷과 미러 레지스트리에 모두 액세스할 수 있지만 클러스터 노드에 액세스 할 수 없는 경우 해당 머신의 콘텐츠를 직접 미러링할 수 있습니다. 이 프로세스를 connected mirroring(미러링 연결)이라고 합니다. 그러한 호스트가 없는 경우 이미지를 파일 시스템에 미러링한 다음 해당 호스트 또는 이동식 미디어를 제한된 환경에 배치해야 합니다. 이 프로세스를 미러링 연결 해제라고 합니다.
미러링된 레지스트리의 경우 가져온 이미지의 소스를 보려면 CRI-O 로그의 Trying to access 로그 항목을 검토해야 합니다. 노드에서 crictl images 명령을 사용하는 등의 이미지 가져오기 소스를 보는 다른 방법은 미러링되지 않은 이미지 이름을 표시합니다.
Red Hat은 OpenShift Container Platform에서 타사 레지스트리를 테스트하지 않습니다.
4.4. 사전 요구 사항 링크 복사링크가 클립보드에 복사되었습니다!
Red Hat Quay와 같은 OpenShift Container Platform 클러스터를 호스팅할 위치에 Docker v2-2 를 지원하는 컨테이너 이미지 레지스트리가 있어야 합니다.
참고Red Hat Quay를 사용하는 경우 oc-mirror 플러그인에서 버전 3.6 이상을 사용해야 합니다. Red Hat Quay에 대한 인타이틀먼트가 있는 경우 개념 증명 목적으로 또는 Red Hat Quay Operator를 사용하여 Red Hat Quay 배포에 대한 설명서를 참조하십시오. 레지스트리를 선택 및 설치하는 데 추가 지원이 필요한 경우 영업 담당자 또는 Red Hat 지원팀에 문의하십시오.
컨테이너 이미지 레지스트리에 대한 기존 솔루션이 없는 경우 OpenShift Container Platform 구독자에게 Red Hat OpenShift의 미러 레지스트리가 제공됩니다. Red Hat OpenShift의 미러 레지스트리 는 서브스크립션에 포함되어 있으며 연결이 끊긴 설치에서 OpenShift Container Platform의 필요한 컨테이너 이미지를 미러링하는 데 사용할 수 있는 소규모 컨테이너 레지스트리입니다.
4.5. 미러 호스트 준비 링크 복사링크가 클립보드에 복사되었습니다!
oc-mirror 플러그인을 사용하여 이미지를 미러링하려면 먼저 플러그인을 설치하고 컨테이너 이미지 레지스트리 인증 정보 파일을 생성하여 Red Hat에서 미러로 미러링할 수 있습니다.
4.5.1. oc-mirror OpenShift CLI 플러그인 설치 링크 복사링크가 클립보드에 복사되었습니다!
oc-mirror OpenShift CLI 플러그인을 설치하여 연결이 끊긴 환경에서 이미지 세트를 관리합니다.
사전 요구 사항
OpenShift CLI(
oc)가 설치되어 있습니다. 완전히 연결이 끊긴 환경에서 이미지 세트를 미러링하는 경우 다음을 확인하십시오.- 인터넷에 액세스할 수 있는 호스트에 oc-mirror 플러그인을 설치했습니다.
- 연결이 끊긴 환경의 호스트는 대상 미러 레지스트리에 액세스할 수 있습니다.
-
oc-mirror
를사용하는 운영 체제에서 Cryostat 매개변수를0022로 설정해야 합니다. - 사용 중인 RHEL 버전에 대해 올바른 바이너리를 설치했습니다.
프로세스
oc-mirror CLI 플러그인을 다운로드합니다.
- OpenShift Cluster Manager 의 다운로드 페이지로 이동합니다.
- OpenShift 연결 설치 툴 섹션에서 OpenShift Client(oc) 미러 플러그인 다운로드를 클릭하고 파일을 저장합니다.
아카이브를 추출합니다.
tar xvzf oc-mirror.tar.gz
$ tar xvzf oc-mirror.tar.gzCopy to Clipboard Copied! Toggle word wrap Toggle overflow 필요한 경우 플러그인 파일을 실행 가능하게 업데이트합니다.
chmod +x oc-mirror
$ chmod +x oc-mirrorCopy to Clipboard Copied! Toggle word wrap Toggle overflow 참고oc-mirror파일의 이름을 바꾸지 마십시오.파일을
PATH에 배치하여 oc-mirror CLI 플러그인을 설치합니다(예:/usr/local/bin:)sudo mv oc-mirror /usr/local/bin/.
$ sudo mv oc-mirror /usr/local/bin/.Copy to Clipboard Copied! Toggle word wrap Toggle overflow
검증
다음 명령을 실행하여 oc-mirror v1의 플러그인이 성공적으로 설치되었는지 확인합니다.
oc mirror help
$ oc mirror helpCopy to Clipboard Copied! Toggle word wrap Toggle overflow
4.5.2. 이미지를 미러링할 수 있는 인증 정보 설정 링크 복사링크가 클립보드에 복사되었습니다!
Red Hat에서 미러로 이미지를 미러링할 수 있는 컨테이너 이미지 레지스트리 인증 정보 파일을 생성합니다.
클러스터를 설치할 때 이 이미지 레지스트리 인증 정보 파일을 풀 시크릿(pull secret)으로 사용하지 마십시오. 클러스터를 설치할 때 이 파일을 지정하면 클러스터의 모든 시스템에 미러 레지스트리에 대한 쓰기 권한이 부여됩니다.
이 프로세스에서는 미러 레지스트리의 컨테이너 이미지 레지스트리에 대한 쓰기 권한이 있어야 하며 인증 정보를 레지스트리 풀 시크릿에 추가해야 합니다.
사전 요구 사항
- 연결이 끊긴 환경에서 사용할 미러 레지스트리를 구성했습니다.
- 미러 레지스트리에서 이미지를 미러링할 이미지 저장소 위치를 확인했습니다.
- 이미지를 해당 이미지 저장소에 업로드할 수 있는 미러 레지스트리 계정을 제공하고 있습니다.
프로세스
설치 호스트에서 다음 단계를 수행합니다.
-
Red Hat OpenShift Cluster Manager에서
registry.redhat.io풀 시크릿을 다운로드합니다. 풀 시크릿을 JSON 형식으로 복사합니다.
cat ./pull-secret | jq . > <path>/<pull_secret_file_in_json>
$ cat ./pull-secret | jq . > <path>/<pull_secret_file_in_json>1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 풀 시크릿을 저장할 폴더의 경로와 생성한 JSON 파일의 이름을 지정합니다.
파일의 내용은 다음 예와 유사합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 파일을
~/.docker/config.json또는$XDG_RUNTIME_DIR/containers/auth.json으로 저장합니다..docker또는$XDG_RUNTIME_DIR/containers디렉터리가 없는 경우 다음 명령을 입력하여 만듭니다.mkdir -p <directory_name>
$ mkdir -p <directory_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 여기서
<directory_name>은~/.docker또는$XDG_RUNTIME_DIR/containers입니다.다음 명령을 입력하여 풀 시크릿을 적절한 디렉터리에 복사합니다.
cp <path>/<pull_secret_file_in_json> <directory_name>/<auth_file>
$ cp <path>/<pull_secret_file_in_json> <directory_name>/<auth_file>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 여기서
<directory_name>은~/.docker또는$XDG_RUNTIME_DIR/containers이며<auth_file>은config.json또는auth.json입니다.
미러 레지스트리에 대한 base64로 인코딩된 사용자 이름 및 암호 또는 토큰을 생성합니다.
echo -n '<user_name>:<password>' | base64 -w0
$ echo -n '<user_name>:<password>' | base64 -w01 BGVtbYk3ZHAtqXs=Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
<user_name>및<password>의 경우 레지스트리에 설정한 사용자 이름 및 암호를 지정합니다.
JSON 파일을 편집하고 레지스트리를 설명하는 섹션을 추가합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 파일은 다음 예제와 유사합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
4.6. 이미지 세트 구성 생성 링크 복사링크가 클립보드에 복사되었습니다!
oc-mirror 플러그인을 사용하여 이미지 세트를 미러링하려면 먼저 이미지 세트 구성 파일을 생성해야 합니다. 이 이미지 세트 구성 파일은 oc-mirror 플러그인의 다른 구성 설정과 함께 미러링할 OpenShift Container Platform 릴리스, Operator 및 기타 이미지를 정의합니다.
이미지 세트 구성 파일에 스토리지 백엔드를 지정해야 합니다. 이 스토리지 백엔드는 로컬 디렉터리 또는 Docker v2-2 를 지원하는 레지스트리일 수 있습니다. oc-mirror 플러그인은 이미지 세트 생성 중에 이 스토리지 백엔드에 메타데이터를 저장합니다.
oc-mirror 플러그인에서 생성한 메타데이터를 삭제하거나 수정하지 마십시오. 동일한 미러 레지스트리에 대해 oc-mirror 플러그인을 실행할 때마다 동일한 스토리지 백엔드를 사용해야 합니다.
사전 요구 사항
- 컨테이너 이미지 레지스트리 인증 정보 파일이 생성되어 있습니다. 자세한 내용은 "이미지 미러링을 허용하는 인증 정보 구성"을 참조하십시오.
프로세스
oc mirror init명령을 사용하여 이미지 세트 구성에 대한 템플릿을 생성하고imageset-config.yaml이라는 파일에 저장합니다.oc mirror init --registry <storage_backend> > imageset-config.yaml
$ oc mirror init --registry <storage_backend> > imageset-config.yaml1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
example.com/mirror/oc-mirror-metadata와 같은 스토리지 백엔드의 위치를 지정합니다.
파일을 편집하고 필요에 따라 설정을 조정합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
archiveSize를 추가하여 이미지 세트 내에서 각 파일의 최대 크기를 GiB 단위로 설정합니다.- 2
- 이미지 세트 메타데이터를 저장할 백엔드 위치를 설정합니다. 이 위치는 레지스트리 또는 로컬 디렉터리일 수 있습니다.
storageConfig값을 지정해야 합니다. - 3
- 스토리지 백엔드의 레지스트리 URL을 설정합니다.
- 4
- 채널을 설정하여 OpenShift Container Platform 이미지를 검색합니다.
- 5
graph: true를 추가하여 graph-data 이미지를 빌드 및 미러 레지스트리로 내보냅니다. OSUS(OpenShift Update Service)를 생성하려면 graph-data 이미지가 필요합니다.graph: true필드에서도UpdateService사용자 정의 리소스 매니페스트를 생성합니다.ocCLI(명령줄 인터페이스)는UpdateService사용자 정의 리소스 매니페스트를 사용하여 OSUS를 생성할 수 있습니다. 자세한 내용은 OpenShift 업데이트 서비스 정보를 참조하십시오.- 6
- Operator 카탈로그를 설정하여 OpenShift Container Platform 이미지를 검색합니다.
- 7
- 이미지 세트에 포함할 특정 Operator 패키지만 지정합니다. 이 필드를 제거하여 카탈로그의 모든 패키지를 검색합니다.
- 8
- 이미지 세트에 포함할 Operator 패키지의 특정 채널만 지정합니다. 해당 채널에서 번들을 사용하지 않는 경우에도 Operator 패키지의 기본 채널을 항상 포함해야 합니다. 다음 명령을 실행하여 기본 채널을 찾을 수 있습니다.
oc mirror list operators --catalog=<catalog_name> --package=<package_name> . - 9
- 이미지 세트에 포함할 추가 이미지를 지정합니다.
참고graph: true필드도 다른 미러링된 이미지와 함께ubi-micro이미지를 미러링합니다.OpenShift Container Platform EUS (Extended Update Support) 버전을 업그레이드할 때 현재 버전과 대상 버전 간에 중간 버전이 필요할 수 있습니다. 예를 들어 현재 버전이
4.14이고 대상 버전이4.16인 경우 oc-mirror 플러그인 v1을 사용할 때ImageSetConfiguration에4.15.8과 같은 버전을 포함해야 할 수 있습니다.oc-mirror 플러그인 v1이 항상 자동으로 감지되지 않을 수 있으므로 필요한 중간 버전을 확인하고 구성에 수동으로 추가하려면 Cincinnati 그래프 웹 페이지를 확인하십시오.
다양한 미러링 사용 사례에 대해서는 매개변수 전체 목록과 "Image set configuration examples"를 "Image set configuration parameters"를 참조하십시오.
업데이트된 파일을 저장합니다.
이 이미지 세트 구성 파일은 컨텐츠를 미러링할 때
oc mirror명령에 필요합니다.
4.7. 미러 레지스트리로 이미지 세트 미러링 링크 복사링크가 클립보드에 복사되었습니다!
oc-mirror CLI 플러그인을 사용하여 부분적으로 연결이 끊긴 환경 또는 완전히 연결이 끊긴 환경에서 미러 레지스트리에 이미지를 미러링할 수 있습니다.
이 절차에서는 이미 미러 레지스트리가 설정되어 있다고 가정합니다.
4.7.1. 부분적으로 연결이 끊긴 환경에서 이미지 세트 미러링 링크 복사링크가 클립보드에 복사되었습니다!
부분적으로 연결이 끊긴 환경에서는 대상 미러 레지스트리에 직접 설정된 이미지를 미러링할 수 있습니다.
4.7.1.1. 미러에서 미러로 미러링 링크 복사링크가 클립보드에 복사되었습니다!
oc-mirror 플러그인을 사용하여 이미지 세트 생성 중에 액세스할 수 있는 대상 미러 레지스트리에 직접 설정된 이미지를 미러링할 수 있습니다.
이미지 세트 구성 파일에 스토리지 백엔드를 지정해야 합니다. 이 스토리지 백엔드는 로컬 디렉터리 또는 Docker v2 레지스트리일 수 있습니다. oc-mirror 플러그인은 이미지 세트 생성 중에 이 스토리지 백엔드에 메타데이터를 저장합니다.
oc-mirror 플러그인에서 생성한 메타데이터를 삭제하거나 수정하지 마십시오. 동일한 미러 레지스트리에 대해 oc-mirror 플러그인을 실행할 때마다 동일한 스토리지 백엔드를 사용해야 합니다.
사전 요구 사항
- 필요한 컨테이너 이미지를 얻으려면 인터넷에 액세스할 수 있습니다.
-
OpenShift CLI(
oc)가 설치되어 있습니다. -
oc-mirrorCLI 플러그인을 설치했습니다. - 이미지 세트 구성 파일을 생성했습니다.
프로세스
oc mirror명령을 실행하여 지정된 이미지 세트 구성의 이미지를 지정된 레지스트리로 미러링합니다.oc mirror --config=./<imageset-config.yaml> \ docker://registry.example:5000
$ oc mirror --config=./<imageset-config.yaml> \1 docker://registry.example:50002 Copy to Clipboard Copied! Toggle word wrap Toggle overflow
검증
-
생성된
oc-mirror-workspace/디렉터리로 이동합니다. -
결과 디렉터리로 이동합니다 (예:
results-1639608409/). -
ImageContentSourcePolicy및CatalogSource리소스에 YAML 파일이 있는지 확인합니다.
ImageContentSourcePolicy YAML 파일의 repositoryDigestMirrors 섹션은 설치 중에 install-config.yaml 파일에 사용됩니다.
다음 단계
- oc-mirror에서 생성한 리소스를 사용하도록 클러스터를 구성합니다.
문제 해결
4.7.2. 완전히 연결이 끊긴 환경에서 이미지 세트 미러링 링크 복사링크가 클립보드에 복사되었습니다!
완전히 연결이 끊긴 환경에서 이미지 세트를 미러링하려면 먼저 이미지 세트를 디스크로 미러링 한 다음 디스크의 이미지 세트 파일을 미러에 미러링해야 합니다.
4.7.2.1. 미러에서 디스크로 미러링 링크 복사링크가 클립보드에 복사되었습니다!
oc-mirror 플러그인을 사용하여 이미지 세트를 생성하고 내용을 디스크에 저장할 수 있습니다. 그런 다음 생성된 이미지 세트를 연결이 끊긴 환경으로 전송하고 대상 레지스트리에 미러링할 수 있습니다.
이미지 세트 구성 파일에 지정된 구성에 따라 oc-mirror를 사용하여 이미지를 미러링하는 경우 수백 기가바이트의 데이터를 디스크에 다운로드할 수 있습니다.
미러 레지스트리를 채울 때 초기 이미지 세트 다운로드는 종종 가장 큰 것입니다. 명령을 마지막으로 실행한 이후 변경된 이미지만 다운로드하므로 oc-mirror 플러그인을 다시 실행하면 생성된 이미지 세트가 생성되는 경우가 많습니다.
이미지 세트 구성 파일에서 스토리지 백엔드를 지정해야 합니다. 이 스토리지 백엔드는 로컬 디렉터리 또는 docker v2 레지스트리일 수 있습니다. oc-mirror 플러그인은 이미지 세트 생성 중에 이 스토리지 백엔드에 메타데이터를 저장합니다.
oc-mirror 플러그인에서 생성한 메타데이터를 삭제하거나 수정하지 마십시오. 동일한 미러 레지스트리에 대해 oc-mirror 플러그인을 실행할 때마다 동일한 스토리지 백엔드를 사용해야 합니다.
사전 요구 사항
- 필요한 컨테이너 이미지를 얻으려면 인터넷에 액세스할 수 있습니다.
-
OpenShift CLI(
oc)가 설치되어 있습니다. -
oc-mirrorCLI 플러그인을 설치했습니다. - 이미지 세트 구성 파일을 생성했습니다.
프로세스
oc mirror명령을 실행하여 지정된 이미지 세트 구성의 이미지를 디스크로 미러링합니다.oc mirror --config=./imageset-config.yaml \ file://<path_to_output_directory>
$ oc mirror --config=./imageset-config.yaml \1 file://<path_to_output_directory>2 Copy to Clipboard Copied! Toggle word wrap Toggle overflow
검증
출력 디렉터리로 이동합니다.
cd <path_to_output_directory>
$ cd <path_to_output_directory>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 이미지 세트
.tar파일이 생성되었는지 확인합니다.ls
$ lsCopy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
mirror_seq1_000000.tar
mirror_seq1_000000.tarCopy to Clipboard Copied! Toggle word wrap Toggle overflow
다음 단계
- 이미지 세트 .tar 파일을 연결이 끊긴 환경으로 전송합니다.
문제 해결
4.7.2.2. 디스크에서 미러로 미러링 링크 복사링크가 클립보드에 복사되었습니다!
oc-mirror 플러그인을 사용하여 생성된 이미지 세트의 콘텐츠를 대상 미러 레지스트리로 미러링할 수 있습니다.
사전 요구 사항
-
연결이 끊긴 환경에 OpenShift CLI (
oc)를 설치했습니다. -
연결이 끊긴 환경에
oc-mirrorCLI 플러그인을 설치했습니다. -
oc mirror명령을 사용하여 이미지 세트 파일을 생성했습니다. - 이미지 세트 파일을 연결이 끊긴 환경으로 전송했습니다.
프로세스
oc mirror명령을 실행하여 디스크에서 이미지 세트 파일을 처리하고 콘텐츠를 대상 미러 레지스트리에 미러링합니다.oc mirror --from=./mirror_seq1_000000.tar \ docker://registry.example:5000
$ oc mirror --from=./mirror_seq1_000000.tar \1 docker://registry.example:50002 Copy to Clipboard Copied! Toggle word wrap Toggle overflow 이 명령은 이미지 세트로 미러 레지스트리를 업데이트하고
ImageContentSourcePolicy및CatalogSource리소스를 생성합니다.
검증
-
생성된
oc-mirror-workspace/디렉터리로 이동합니다. -
결과 디렉터리로 이동합니다 (예:
results-1639608409/). -
ImageContentSourcePolicy및CatalogSource리소스에 YAML 파일이 있는지 확인합니다.
다음 단계
- oc-mirror에서 생성한 리소스를 사용하도록 클러스터를 구성합니다.
문제 해결
4.8. oc-mirror에서 생성한 리소스를 사용하도록 클러스터 구성 링크 복사링크가 클립보드에 복사되었습니다!
미러 레지스트리로 이미지를 미러링한 후 생성된 ImageContentSourcePolicy,CatalogSource 및 release 이미지 서명 리소스를 클러스터에 적용해야 합니다.
ImageContentSourcePolicy 리소스는 미러 레지스트리를 소스 레지스트리와 연결하고 온라인 레지스트리에서 미러 레지스트리로 이미지 가져오기 요청을 리디렉션합니다. CatalogSource 리소스는 OLM(Operator Lifecycle Manager)에서 미러 레지스트리에서 사용 가능한 Operator에 대한 정보를 검색하는 데 사용됩니다. 릴리스 이미지 서명은 미러링된 릴리스 이미지를 확인하는 데 사용됩니다.
사전 요구 사항
- 연결이 끊긴 환경에서 레지스트리 미러로 이미지를 미러링했습니다.
-
cluster-admin역할의 사용자로 클러스터에 액세스할 수 있어야 합니다.
프로세스
-
cluster-admin역할의 사용자로 OpenShift CLI에 로그인합니다. 다음 명령을 실행하여 결과 디렉터리의 YAML 파일을 클러스터에 적용합니다.
oc apply -f ./oc-mirror-workspace/results-1639608409/
$ oc apply -f ./oc-mirror-workspace/results-1639608409/Copy to Clipboard Copied! Toggle word wrap Toggle overflow 미러링된 릴리스 이미지가 있는 경우 다음 명령을 실행하여 릴리스 이미지 서명을 클러스터에 적용합니다.
oc apply -f ./oc-mirror-workspace/results-1639608409/release-signatures/
$ oc apply -f ./oc-mirror-workspace/results-1639608409/release-signatures/Copy to Clipboard Copied! Toggle word wrap Toggle overflow 참고클러스터 대신 Operator를 미러링하는 경우
$ oc apply -f ./oc-mirror-workspace/results-1639608409/release-signatures/를 실행할 필요가 없습니다. 적용할 릴리스 이미지 서명이 없으므로 해당 명령을 실행하면 오류가 반환됩니다.
검증
다음 명령을 실행하여
ImageContentSourcePolicy리소스가 성공적으로 설치되었는지 확인합니다.oc get imagecontentsourcepolicy
$ oc get imagecontentsourcepolicyCopy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여
CatalogSource리소스가 성공적으로 설치되었는지 확인합니다.oc get catalogsource -n openshift-marketplace
$ oc get catalogsource -n openshift-marketplaceCopy to Clipboard Copied! Toggle word wrap Toggle overflow
4.9. 미러 레지스트리 콘텐츠 업데이트 링크 복사링크가 클립보드에 복사되었습니다!
이미지 세트 구성 파일을 업데이트하고 이미지 세트를 미러 레지스트리로 미러링하여 미러 레지스트리 콘텐츠를 업데이트할 수 있습니다. 다음에 oc-mirror 플러그인을 실행할 때 이전 실행 이후 신규 및 업데이트된 이미지만 포함하는 이미지 세트가 생성됩니다.
미러 레지스트리를 업데이트하는 동안 다음 고려 사항을 고려해야 합니다.
이미지가 생성되고 미러링된 최신 이미지 세트에 더 이상 포함되지 않는 경우 대상 미러 레지스트리에서 정리됩니다. 따라서 차등 이미지 세트만 생성되고 미러링되도록 다음 주요 구성 요소의 동일한 조합에 대한 이미지를 업데이트해야 합니다.
- 이미지 세트 구성
- 대상 레지스트리
- 스토리지 구성
- 미러링하거나 미러링할 디스크의 경우 이미지를 정리할 수 있습니다. 워크플로우를 미러링할 수 있습니다.
- 생성된 이미지 세트를 대상 미러 레지스트리로 순서대로 푸시해야 합니다. 생성된 이미지 세트 아카이브 파일의 파일 이름에서 시퀀스 번호를 파생할 수 있습니다.
- oc-mirror 플러그인에서 생성한 메타데이터 이미지를 삭제하거나 수정하지 마십시오.
- 초기 이미지 세트 생성 중에 미러 레지스트리에 대한 최상위 네임스페이스를 지정한 경우 동일한 미러 레지스트리에 대해 oc-mirror 플러그인을 실행할 때마다 이 동일한 네임스페이스를 사용해야 합니다.
미러 레지스트리 콘텐츠를 업데이트하는 워크플로우에 대한 자세한 내용은 "High Level workflow" 섹션을 참조하십시오.
4.9.1. 미러 레지스트리 업데이트 예 링크 복사링크가 클립보드에 복사되었습니다!
이 섹션에서는 미러 레지스트리를 디스크에서 미러 미러 레지스트리로 업데이트하는 사용 사례에 대해 설명합니다.
이전에 미러링에 사용된 ImageSetConfiguration 파일의 예
4.9.1.1. 기존 이미지를 정리하여 특정 OpenShift Container Platform 버전 미러링 링크 복사링크가 클립보드에 복사되었습니다!
업데이트된 ImageSetConfiguration 파일
- 1
stable-4.13으로 교체하면stable-4.12의 모든 이미지가 정리됩니다.
4.9.1.2. 기존 이미지를 정리하여 Operator의 최신 버전으로 업데이트 링크 복사링크가 클립보드에 복사되었습니다!
업데이트된 ImageSetConfiguration 파일
- 1
- 버전을 지정하지 않고 동일한 채널을 사용하면 기존 이미지 및 최신 버전의 이미지 업데이트가 정리됩니다.
4.9.1.3. 기존 Operator를 정리하여 새 Operator 미러링 링크 복사링크가 클립보드에 복사되었습니다!
업데이트된 ImageSetConfiguration 파일
- 1
rhacs-operator를new_operator_name으로 교체하면 Kubernetes Operator의 Red Hat Advanced Cluster Security가 정리됩니다.
4.9.1.4. 모든 OpenShift Container Platform 이미지 정리 링크 복사링크가 클립보드에 복사되었습니다!
업데이트된 ImageSetConfiguration 파일
4.10. 시험 실행 수행 링크 복사링크가 클립보드에 복사되었습니다!
oc-mirror를 사용하여 실제로 이미지를 미러링하지 않고 시험 실행을 수행할 수 있습니다. 이를 통해 미러링된 이미지 목록과 미러 레지스트리에서 정리되는 이미지를 검토할 수 있습니다. 또한 예행 실행을 사용하면 이미지 세트 구성으로 오류를 조기에 발견하거나 다른 툴과 함께 생성된 이미지 목록을 사용하여 미러링 작업을 수행할 수 있습니다.
사전 요구 사항
- 필요한 컨테이너 이미지를 얻으려면 인터넷에 액세스할 수 있습니다.
-
OpenShift CLI(
oc)가 설치되어 있습니다. -
oc-mirrorCLI 플러그인을 설치했습니다. - 이미지 세트 구성 파일을 생성했습니다.
프로세스
--dry-run플래그와 함께oc mirror명령을 실행하여 예행 실행을 수행합니다.oc mirror --config=./imageset-config.yaml \ docker://registry.example:5000 \ --dry-run
$ oc mirror --config=./imageset-config.yaml \1 docker://registry.example:5000 \2 --dry-run3 Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 생성된 작업 공간 디렉터리로 이동합니다.
cd oc-mirror-workspace/
$ cd oc-mirror-workspace/Copy to Clipboard Copied! Toggle word wrap Toggle overflow 생성된
mapping.txt파일을 검토합니다.이 파일에는 미러링된 모든 이미지 목록이 포함되어 있습니다.
생성된
prune-plan.json파일을 검토합니다.이 파일에는 이미지 세트가 게시될 때 미러 레지스트리에서 정리할 모든 이미지 목록이 포함되어 있습니다.
참고cleanup
-plan.json 파일은 oc-mirror 명령이 미러 레지스트리를 가리키며 정리할이미지가 있는 경우에만 생성됩니다.
4.11. 로컬 OCI Operator 카탈로그 포함 링크 복사링크가 클립보드에 복사되었습니다!
OpenShift Container Platform 릴리스, Operator 카탈로그 및 추가 이미지를 레지스트리에서 부분적으로 연결이 끊긴 클러스터로 미러링하는 동안 디스크의 로컬 파일 기반 카탈로그의 Operator 카탈로그 이미지를 포함할 수 있습니다. 로컬 카탈로그는 OCI(Open Container Initiative) 형식이어야 합니다.
로컬 카탈로그 및 해당 콘텐츠는 이미지 세트 구성 파일의 필터링 정보를 기반으로 대상 미러 레지스트리에 미러링됩니다.
로컬 OCI 카탈로그를 미러링할 때 OpenShift Container Platform 릴리스 또는 로컬 OCI 형식의 카탈로그와 함께 미러링하려는 추가 이미지를 레지스트리에서 가져와야 합니다.
디스크에 oc-mirror 이미지 세트 파일과 함께 OCI 카탈로그를 미러링할 수 없습니다.
OCI 기능을 사용하는 한 가지 사용 사례는 CI/CD 시스템이 디스크의 위치에 OCI 카탈로그를 빌드하는 경우이고, OpenShift Container Platform 릴리스와 함께 미러 레지스트리에 해당 OCI 카탈로그를 미러링하려는 경우입니다.
OpenShift Container Platform 4.12용 oc-mirror 플러그인에 대한 기술 프리뷰 OCI 로컬 카탈로그 기능을 사용한 경우 oc-mirror 플러그인의 OCI 로컬 카탈로그 기능을 사용하여 카탈로그를 로컬로 복사하고 OCI 형식으로 변환하여 완전히 연결이 끊긴 클러스터로 미러링할 수 없습니다.
사전 요구 사항
- 필요한 컨테이너 이미지를 얻으려면 인터넷에 액세스할 수 있습니다.
-
OpenShift CLI(
oc)가 설치되어 있습니다. -
oc-mirrorCLI 플러그인을 설치했습니다.
프로세스
이미지 세트 구성 파일을 생성하고 필요에 따라 설정을 조정합니다.
다음 예제 이미지 세트 구성은 OpenShift Container Platform 릴리스 및
registry.redhat.io의 UBI 이미지와 함께 디스크에서 OCI 카탈로그를 미러링합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 이미지 세트 메타데이터를 저장할 백엔드 위치를 설정합니다. 이 위치는 레지스트리 또는 로컬 디렉터리일 수 있습니다.
storageConfig값을 지정해야 합니다. - 2
- 선택적으로
registry.redhat.io에서 미러링할 OpenShift Container Platform 릴리스를 포함합니다. - 3
- 디스크의 OCI 카탈로그 위치에 대한 절대 경로를 지정합니다. OCI 기능을 사용하는 경우 경로는
oci://로 시작해야 합니다. - 4
- 필요한 경우 카탈로그를 미러링할 대체 네임스페이스와 이름을 지정합니다.
- 5
- 필요한 경우 레지스트리에서 가져올 추가 Operator 카탈로그를 지정합니다.
- 6
- 선택적으로 레지스트리에서 가져올 추가 이미지를 지정합니다.
oc mirror명령을 실행하여 OCI 카탈로그를 대상 미러 레지스트리에 미러링합니다.oc mirror --config=./imageset-config.yaml \ docker://registry.example:5000
$ oc mirror --config=./imageset-config.yaml \1 docker://registry.example:50002 Copy to Clipboard Copied! Toggle word wrap Toggle overflow 선택적으로 다른 플래그를 지정하여 OCI 기능의 동작을 조정할 수 있습니다.
--oci-insecure-signature-policy- 서명을 대상 미러 레지스트리로 내보내지 마십시오.
--oci-registries-configTOML 형식의
registries.conf파일의 경로를 지정합니다. 이미지 세트 구성 파일을 변경하지 않고도 테스트를 위한 사전 프로덕션 위치와 같은 다른 레지스트리에서 미러링할 수 있습니다. 이 플래그는 다른 미러링된 콘텐츠가 아닌 로컬 OCI 카탈로그에만 영향을 미칩니다.registries.conf 파일 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
다음 단계
- oc-mirror에서 생성한 리소스를 사용하도록 클러스터를 구성합니다.
4.12. 이미지 세트 구성 매개변수 링크 복사링크가 클립보드에 복사되었습니다!
oc-mirror 플러그인에는 미러링할 이미지를 정의하는 이미지 세트 구성 파일이 필요합니다. 다음 표에는 ImageSetConfiguration 리소스에 사용 가능한 매개변수가 나열되어 있습니다.
| 매개변수 | 설명 | 값 |
|---|---|---|
|
|
|
문자열. 예: |
|
| 이미지 세트 내의 각 아카이브 파일의 최대 크기(GiB)입니다. |
정수. 예: |
|
| 이미지 세트의 구성입니다. | 개체 |
|
| 이미지 세트의 추가 이미지 구성입니다. | 개체의 배열입니다. 예를 들면 다음과 같습니다. additionalImages: - name: registry.redhat.io/ubi8/ubi:latest
|
|
| 미러링할 이미지의 태그 또는 다이제스트입니다. |
문자열. 예: |
|
| 미러링을 차단할 이미지의 전체 태그, 다이제스트 또는 패턴입니다. |
문자열 배열입니다. 예: |
|
| 이미지 세트의 helm 구성입니다. oc-mirror 플러그인은 렌더링 시 사용자 입력이 필요하지 않은 helm 차트만 지원합니다. | 개체 |
|
| 미러링할 로컬 helm 차트입니다. | 개체의 배열입니다. 예를 들면 다음과 같습니다. local:
- name: podinfo
path: /test/podinfo-5.0.0.tar.gz
|
|
| 미러링할 로컬 helm 차트의 이름입니다. |
문자열. 예: |
|
| 미러링할 로컬 helm 차트의 경로입니다. |
문자열. 예: |
|
| 미러링할 원격 helm 리포지토리입니다. | 개체의 배열입니다. 예를 들면 다음과 같습니다. |
|
| 미러링할 helm 저장소 이름입니다. |
문자열. 예: |
|
| 미러링할 helm 리포지토리의 URL입니다. |
문자열. 예: |
|
| 미러링할 원격 helm 차트입니다. | 개체의 배열입니다. |
|
| 미러링할 helm 차트의 이름입니다. |
문자열. 예: |
|
| 미러링할 이름이 helm 차트의 버전입니다. |
문자열. 예: |
|
| 이미지 세트의 Operator 구성 | 개체의 배열입니다. 예를 들면 다음과 같습니다. operators:
- catalog: registry.redhat.io/redhat/redhat-operator-index:v4.16
packages:
- name: elasticsearch-operator
minVersion: '2.4.0'
|
|
| 이미지 세트에 포함할 Operator 카탈로그입니다. |
문자열. 예: |
|
|
|
부울. 기본값은 |
|
| Operator 패키지 구성입니다. | 개체의 배열입니다. 예를 들면 다음과 같습니다. operators:
- catalog: registry.redhat.io/redhat/redhat-operator-index:v4.16
packages:
- name: elasticsearch-operator
minVersion: '5.2.3-31'
|
|
| 이미지 세트에 포함할 Operator 패키지 이름 |
문자열. 예: |
|
| Operator 패키지 채널 구성입니다. | 개체 |
|
| 이미지 세트에 포함할 Operator 채널 이름은 패키지 내에서 고유합니다. |
문자열. 예: |
|
| Operator의 가장 높은 버전은 존재하는 모든 채널에서 미러링됩니다. 자세한 내용은 다음 참고 사항을 참조하십시오. |
문자열. 예: |
|
| 포함할 최소 번들의 이름과 업데이트 그래프의 모든 번들과 채널 헤드에 대한 모든 번들의 이름입니다. 이름이 지정된 번들에 의미 체계 버전 메타데이터가 없는 경우에만 이 필드를 설정합니다. |
문자열. 예: |
|
| 존재하는 모든 채널에 미러링할 Operator의 가장 낮은 버전입니다. 자세한 내용은 다음 참고 사항을 참조하십시오. |
문자열. 예: |
|
| 존재하는 모든 채널에 미러링할 Operator의 가장 높은 버전입니다. 자세한 내용은 다음 참고 사항을 참조하십시오. |
문자열. 예: |
|
| 존재하는 모든 채널에 미러링할 Operator의 가장 낮은 버전입니다. 자세한 내용은 다음 참고 사항을 참조하십시오. |
문자열. 예: |
|
|
|
부울. 기본값은 |
|
| 참조된 카탈로그를 미러링하는 대체 이름 및 선택적 네임스페이스 계층 구조입니다. |
문자열. 예: |
|
| 참조된 카탈로그를 미러링하는 대체 이름입니다.
|
문자열. 예: |
|
|
|
문자열. 예: |
|
| 이미지 세트의 플랫폼 구성입니다. | 개체 |
|
| 미러링할 플랫폼 릴리스 페이로드의 아키텍처입니다. | 문자열 배열입니다. 예를 들면 다음과 같습니다.
기본값은 |
|
| 이미지 세트의 플랫폼 채널 구성입니다. | 개체의 배열입니다. 예를 들면 다음과 같습니다. channels: - name: stable-4.10 - name: stable-4.16
|
|
|
|
부울. 기본값은 |
|
| 릴리스 채널의 이름입니다. |
문자열. 예: |
|
| 미러링할 참조된 플랫폼의 최소 버전입니다. |
문자열. 예: |
|
| 참조된 플랫폼의 가장 높은 버전을 미러링합니다. |
문자열. 예: |
|
| 경로 미러링 또는 전체 범위 미러링을 전환합니다. |
부울. 기본값은 |
|
| 미러링할 플랫폼의 유형입니다. |
문자열. 예: |
|
| OSUS 그래프가 이미지 세트에 추가되고 나중에 미러에 게시되는지 여부를 나타냅니다. |
부울. 기본값은 |
|
| 이미지 세트의 백엔드 구성입니다. | 개체 |
|
| 이미지 세트의 로컬 백엔드 구성입니다. | 개체 |
|
| 이미지 세트 메타데이터를 포함할 디렉터리의 경로입니다. |
문자열. 예: |
|
| 이미지 세트의 레지스트리 백엔드 구성입니다. | 개체 |
|
| 백엔드 레지스트리 URI입니다. URI에 네임스페이스 참조를 선택적으로 포함할 수 있습니다. |
문자열. 예: |
|
| 필요한 경우 참조된 백엔드 레지스트리의 TLS 확인을 건너뜁니다. |
부울. 기본값은 |
minVersion 및 maxVersion 속성을 사용하여 특정 Operator 버전 범위를 필터링하면 여러 채널 헤드 오류가 발생할 수 있습니다. 오류 메시지는 여러 채널 헤드 가 있음을 나타냅니다. 필터가 적용되면 Operator의 업데이트 그래프가 잘립니다.
Operator Lifecycle Manager를 사용하려면 모든 Operator 채널에 정확히 하나의 엔드 포인트, 즉 최신 버전의 Operator가 있는 업데이트 그래프를 구성하는 버전이 포함되어 있어야 합니다. 필터 범위가 적용되면 해당 그래프는 두 개 이상의 개별 그래프 또는 두 개 이상의 끝점이 있는 그래프로 전환할 수 있습니다.
이 오류를 방지하려면 최신 버전의 Operator를 필터링하지 마십시오. Operator에 따라 오류가 계속 실행되는 경우 maxVersion 속성을 늘리거나 minVersion 속성을 줄여야 합니다. 모든 Operator 그래프는 다를 수 있으므로 오류가 해결될 때까지 이러한 값을 조정해야 할 수 있습니다.
4.13. 이미지 세트 구성 예 링크 복사링크가 클립보드에 복사되었습니다!
다음 ImageSetConfiguration 파일 예제에서는 다양한 미러링 사용 사례에 대한 구성을 보여줍니다.
4.13.1. 사용 사례: 최고 수준의 OpenShift Container Platform 업데이트 경로 포함 링크 복사링크가 클립보드에 복사되었습니다!
다음 ImageSetConfiguration 파일은 로컬 스토리지 백엔드를 사용하며 4.11.37 의 최소 버전에서 4.12.15 의 최대 버전으로 가장 짧은 업데이트 경로를 포함하여 모든 OpenShift Container Platform 버전을 포함합니다.
ImageSetConfiguration 파일 예
4.13.2. 사용 사례: 모든 OpenShift Container Platform 버전을 최소에서 다중 아키텍처 릴리스의 최신 버전으로 포함 링크 복사링크가 클립보드에 복사되었습니다!
다음 ImageSetConfiguration 파일은 레지스트리 스토리지 백엔드를 사용하며 최소 4.13.4 부터 채널의 최신 버전에 모든 OpenShift Container Platform 버전이 포함되어 있습니다. 이 이미지 세트 구성으로 oc-mirror를 호출할 때마다 stable-4.13 채널의 최신 릴리스가 평가되므로 정기적으로 oc-mirror를 실행하면 OpenShift Container Platform 이미지의 최신 릴리스를 자동으로 수신할 수 있습니다.
platform.architectures 값을 multi 로 설정하면 다중 아키텍처 릴리스에서 미러링이 지원되는지 확인할 수 있습니다.
ImageSetConfiguration 파일 예
4.13.3. 사용 사례: Operator 버전 최소에서 최신 버전 포함 링크 복사링크가 클립보드에 복사되었습니다!
다음 ImageSetConfiguration 파일은 로컬 스토리지 백엔드를 사용하며 stable 채널에서 4.0.1 이상 버전에서 실행되는 Kubernetes Operator용 Red Hat Advanced Cluster Security만 포함합니다.
최소 또는 최대 버전 범위를 지정하면 해당 범위의 모든 Operator 버전이 제공되지 않을 수 있습니다.
기본적으로 oc-mirror는 OLM(Operator Lifecycle Manager) 사양에서 건너뛰거나 최신 버전으로 교체되는 버전을 제외합니다. 건너뛰는 Operator 버전은 CVE의 영향을 받거나 버그가 포함될 수 있습니다. 대신 최신 버전을 사용합니다. 건너뛰거나 교체된 버전에 대한 자세한 내용은 OLM을 사용하여 업데이트 그래프 생성을 참조하십시오.
지정된 범위의 모든 Operator 버전을 수신하려면 mirror.operators.full 필드를 true 로 설정할 수 있습니다.
ImageSetConfiguration 파일 예
latest 대신 최대 버전을 지정하려면 mirror.operators.packages.channels.maxVersion 필드를 설정합니다.
4.13.4. 사용 사례: Nutanix CSI Operator 포함 링크 복사링크가 클립보드에 복사되었습니다!
다음 ImageSetConfiguration 파일은 로컬 스토리지 백엔드를 사용하며 Nutanix CSI Operator, OSUS(OpenShift Update Service) 그래프 이미지 및 추가 Red Hat UBI(Universal Base Image)를 포함합니다.
ImageSetConfiguration 파일 예
4.13.5. 사용 사례: 기본 Operator 채널 포함 링크 복사링크가 클립보드에 복사되었습니다!
다음 ImageSetConfiguration 파일에는 OpenShift Elasticsearch Operator의 stable-5.7 및 stable 채널이 포함되어 있습니다. stable-5.7 채널의 패키지만 필요한 경우에도 Operator의 기본 채널이므로 stable 채널도 ImageSetConfiguration 파일에 포함되어야 합니다. 해당 채널에서 번들을 사용하지 않는 경우에도 Operator 패키지의 기본 채널을 항상 포함해야 합니다.
다음 명령을 실행하여 기본 채널을 찾을 수 있습니다. oc mirror list operators --catalog=<catalog_name> --package=<package_name > .
ImageSetConfiguration 파일 예
4.13.6. 사용 사례: 전체 카탈로그 포함(모든 버전) 링크 복사링크가 클립보드에 복사되었습니다!
다음 ImageSetConfiguration 파일은 mirror.operators.full 필드를 true 로 설정하여 전체 Operator 카탈로그의 모든 버전을 포함합니다.
ImageSetConfiguration 파일 예
4.13.7. 사용 사례: 전체 카탈로그 포함(채널 헤드만 해당) 링크 복사링크가 클립보드에 복사되었습니다!
다음 ImageSetConfiguration 파일에는 전체 Operator 카탈로그의 채널 헤드가 포함되어 있습니다.
기본적으로 카탈로그의 각 Operator에 대해 oc-mirror에는 기본 채널의 최신 Operator 버전(채널 헤드)이 포함됩니다. 채널 헤드뿐만 아니라 모든 Operator 버전을 미러링하려면 mirror.operators.full 필드를 true 로 설정해야 합니다.
이 예제에서는 targetCatalog 필드를 사용하여 카탈로그를 미러링할 대체 네임스페이스와 이름을 지정합니다.
ImageSetConfiguration 파일 예
4.13.8. 사용 사례: 임의의 이미지 및 helm 차트 포함 링크 복사링크가 클립보드에 복사되었습니다!
다음 ImageSetConfiguration 파일은 레지스트리 스토리지 백엔드를 사용하며 helm 차트 및 추가 Red Hat UBI(Universal Base Image)를 포함합니다.
ImageSetConfiguration 파일 예
4.13.9. 사용 사례: EUS 릴리스의 업그레이드 경로 포함 링크 복사링크가 클립보드에 복사되었습니다!
다음 ImageSetConfiguration 파일에는 eus-<version > 채널이 포함되어 있습니다. 여기서 maxVersion 값은 minVersion 값보다 두 개 이상의 마이너 버전입니다.
예를 들어 이 ImageSetConfiguration 파일에서 minVersion 은 4.12.28 로 설정되고 eus-4.14 채널의 maxVersion 은 4.14.16 입니다.
ImageSetConfiguration 파일 예
4.14. oc-mirror에 대한 명령 참조 링크 복사링크가 클립보드에 복사되었습니다!
다음 표에서는 oc mirror 하위 명령 및 플래그를 설명합니다.
| 하위 명령 | 설명 |
|---|---|
|
| 지정된 쉘에 대한 자동 완성 스크립트를 생성합니다. |
|
| 이미지 세트의 내용을 출력합니다. |
|
| 하위 명령에 대한 도움말을 표시합니다. |
|
| 초기 이미지 세트 구성 템플릿을 출력합니다. |
|
| 사용 가능한 플랫폼 및 Operator 콘텐츠 및 해당 버전을 나열합니다. |
|
| oc-mirror 버전을 출력합니다. |
| 플래그 | 설명 |
|---|---|
|
| 이미지 세트 구성 파일의 경로를 지정합니다. |
|
| 이미지 풀 관련 오류가 발생하면 계속 진행하고 가능한 한 많이 미러링하려고 합니다. |
|
| 대상 레지스트리에 대한 TLS 검증을 비활성화합니다. |
|
| 대상 레지스트리에 일반 HTTP를 사용합니다. |
|
|
이미지를 미러링하지 않고 작업을 출력합니다. |
|
| 대상 레지스트리에 로드할 oc-mirror 실행으로 생성된 이미지 세트 아카이브의 경로를 지정합니다. |
|
| 도움말을 표시합니다. |
|
| 이미지를 다운로드하고 레이어를 패키징할 때 이전 미러를 무시합니다. 증분 미러링을 비활성화하고 더 많은 데이터를 다운로드할 수 있습니다. |
|
|
mirror 레지스트리를 사용하지만 실제로 이미지를 미러링하지 않도록 |
|
|
중첩된 경로를 제한하는 대상 레지스트리의 최대 중첩된 경로 수를 지정합니다. 기본값은 |
|
|
레지스트리당 허용된 동시 요청 수를 지정합니다. 기본값은 |
|
|
로컬 OCI 카탈로그를 미러링할 때 서명을 내보내지 마십시오( |
|
|
로컬 OCI 카탈로그를 미러링할 때 복사할 대체 레지스트리 위치를 지정할 레지스트리 구성 파일을 제공합니다( |
|
| 아티팩트 디렉터리 제거를 건너뜁니다. |
|
| Operator 카탈로그의 다이제스트 핀으로 이미지 태그를 교체하지 마십시오. |
|
| 이미지 세트를 게시할 때 메타데이터를 건너뜁니다. 참고
이미지 세트가 |
|
| 이미지를 찾을 수 없는 경우 오류를 보고하고 실행을 중단하는 대신 이미지를 건너뜁니다. 이미지 세트 구성에 명시적으로 지정된 사용자 지정 이미지에는 적용되지 않습니다. |
|
| 대상 미러 레지스트리에서 이미지 자동 정리를 비활성화합니다. |
|
| 다이제스트 확인을 건너뜁니다. |
|
| 소스 레지스트리에 대한 TLS 검증을 비활성화합니다. |
|
| 소스 레지스트리에 일반 HTTP를 사용합니다. |
|
|
로그 수준 상세 정보 표시의 번호를 지정합니다. 유효한 값은 |
5장. oc-mirror 플러그인 v2를 사용하여 연결이 끊긴 설치의 이미지 미러링 링크 복사링크가 클립보드에 복사되었습니다!
프라이빗 레지스트리의 미러링된 OpenShift Container Platform 컨테이너 이미지에서 클러스터를 설치하는 경우 직접 인터넷 연결 없이 제한된 네트워크에서 클러스터를 실행할 수 있습니다. 이 레지스트리는 클러스터가 실행될 때마다 실행되어야 합니다.
oc-mirror OpenShift CLI(oc) 플러그인을 사용할 수 있는 것처럼 oc-mirror 플러그인 v2를 사용하여 완전히 또는 부분적으로 연결이 끊긴 환경의 미러 레지스트리에 이미지를 미러링할 수도 있습니다. 공식 Red Hat 레지스트리에서 필요한 이미지를 다운로드하려면 인터넷 연결이 있는 시스템에서 oc-mirror 플러그인 v2를 실행해야 합니다.
oc-mirror 플러그인 v2는 기술 프리뷰 기능 전용입니다. 기술 프리뷰 기능은 Red Hat 프로덕션 서비스 수준 계약(SLA)에서 지원되지 않으며 기능적으로 완전하지 않을 수 있습니다. 따라서 프로덕션 환경에서 사용하는 것은 권장하지 않습니다. 이러한 기능을 사용하면 향후 제품 기능을 조기에 이용할 수 있어 개발 과정에서 고객이 기능을 테스트하고 피드백을 제공할 수 있습니다.
Red Hat 기술 프리뷰 기능의 지원 범위에 대한 자세한 내용은 기술 프리뷰 기능 지원 범위를 참조하십시오.
5.1. 사전 요구 사항 링크 복사링크가 클립보드에 복사되었습니다!
Red Hat Quay와 같이 OpenShift Container Platform 클러스터를 호스팅하는 위치에 Docker V2-2 를 지원하는 컨테이너 이미지 레지스트리가 있어야 합니다.
참고Red Hat Quay를 사용하는 경우 oc-mirror 플러그인과 함께 버전 3.6 이상을 사용하십시오. OpenShift Container Platform (Red Hat Quay 문서)에 Red Hat Quay Operator 배포 설명서를 참조하십시오. 레지스트리를 선택 및 설치하는 데 추가 지원이 필요한 경우 영업 담당자 또는 Red Hat 지원팀에 문의하십시오.
- 컨테이너 이미지 레지스트리에 대한 기존 솔루션이 없는 경우 OpenShift Container Platform 구독자에게 Red Hat OpenShift의 미러 레지스트리가 제공됩니다. 이 미러 레지스트리는 서브스크립션에 포함되어 있으며 소규모 컨테이너 레지스트리 역할을 합니다. 이 레지스트리를 사용하여 연결이 끊긴 설치에 필요한 OpenShift Container Platform 컨테이너 이미지를 미러링할 수 있습니다.
- 프로비저닝된 클러스터의 모든 시스템은 미러 레지스트리에 액세스할 수 있어야 합니다. 레지스트리에 연결할 수 없는 경우 설치, 업데이트 또는 워크로드 재배치와 같은 일상적인 작업과 같은 작업이 실패할 수 있습니다. 미러 레지스트리는 고가용성 방식으로 작동하여 OpenShift Container Platform 클러스터의 프로덕션 가용성과 일치하도록 해야 합니다.
고급 워크플로
다음 단계에서는 oc-mirror 플러그인 v2를 사용하여 이미지를 미러 레지스트리에 미러링하는 방법에 대한 고급 워크플로를 간략하게 설명합니다.
- 이미지 세트 구성 파일을 생성합니다.
다음 워크플로우 중 하나를 사용하여 대상 미러 레지스트리에 설정된 이미지를 미러링합니다.
대상 미러 레지스트리(mirror to mirror)에 직접 설정된 이미지를 미러링합니다.
-
이미지 세트를 디스크로 미러링하고(Mirror-to-Disk)
tar파일을 대상 환경으로 전송한 다음 이미지 세트를 대상 미러 레지스트리(Disk-to-Mirror)로 미러링합니다.
-
이미지 세트를 디스크로 미러링하고(Mirror-to-Disk)
- oc-mirror 플러그인 v2에서 생성한 리소스를 사용하도록 클러스터를 구성합니다.
- 필요에 따라 대상 미러 레지스트리를 업데이트하려면 다음 단계를 반복합니다.
5.2. oc-mirror 플러그인 v2 정보 링크 복사링크가 클립보드에 복사되었습니다!
oc-mirror OpenShift CLI(oc) 플러그인은 필요한 모든 OpenShift Container Platform 콘텐츠 및 기타 이미지를 미러 레지스트리에 미러링하는 단일 툴입니다.
oc-mirror의 새로운 기술 프리뷰 버전을 사용하려면 oc-mirror 플러그인 v2 명령줄에 --v2 플래그를 추가합니다.
oc-mirror 플러그인 v2에는 다음과 같은 기능이 있습니다.
- 이미지가 이전에 미러링되었는지 여부와 관계없이 이미지 세트 구성에 지정된 전체 이미지 세트가 미러링된 레지스트리에 미러링되었는지 확인합니다.
- 메타데이터 대신 캐시 시스템을 사용합니다.
- 새 이미지만 아카이브에 통합하여 최소한의 아카이브 크기를 유지합니다.
- 미러링 날짜별로 선택한 콘텐츠로 미러링 아카이브를 생성합니다.
-
증분 변경 대신 전체 이미지 세트에 대한
ImageContentSourcePolicy(ICSP) 대신ImageDigestMirrorSet(IDMS),ImageTagMirrorSet(ITMS)을 생성할 수 있습니다. - 번들 이름으로 Operator 버전을 저장합니다.
-
자동 정리를 수행하지 않습니다. 이제 V2에는
Delete기능이 있어 사용자에게 이미지 삭제를 보다 효과적으로 제어할 수 있습니다. -
registries.conf에 대한 지원을 제공합니다. 이 변경으로 동일한 캐시를 사용하는 동안 여러 개의 enclaves로 미러링할 수 있습니다.
5.2.1. oc-mirror 플러그인 v2 호환성 및 지원 링크 복사링크가 클립보드에 복사되었습니다!
oc-mirror 플러그인 v2는 OpenShift Container Platform에서 지원됩니다.
aarch64,ppc64le 및 s390x 아키텍처에서 oc-mirror 플러그인 v2는 OpenShift Container Platform 버전 4.14 이상에서만 지원됩니다.
미러링해야 하는 OpenShift Container Platform 버전에 관계없이 사용 가능한 최신 oc-mirror 플러그인 v2 버전을 사용합니다.
5.3. 미러 호스트 준비 링크 복사링크가 클립보드에 복사되었습니다!
이미지 미러링에 oc-mirror 플러그인 v2를 사용하려면 플러그인을 설치하고 컨테이너 이미지에 대한 인증 정보가 있는 파일을 생성하여 Red Hat에서 미러로 미러링할 수 있습니다.
5.3.1. oc-mirror OpenShift CLI 플러그인 설치 링크 복사링크가 클립보드에 복사되었습니다!
oc-mirror OpenShift CLI 플러그인을 설치하여 연결이 끊긴 환경에서 이미지 세트를 관리합니다.
사전 요구 사항
OpenShift CLI(
oc)가 설치되어 있습니다. 완전히 연결이 끊긴 환경에서 이미지 세트를 미러링하는 경우 다음을 확인하십시오.- 인터넷에 액세스할 수 있는 호스트에 oc-mirror 플러그인을 설치했습니다.
- 연결이 끊긴 환경의 호스트는 대상 미러 레지스트리에 액세스할 수 있습니다.
-
oc-mirror
를사용하는 운영 체제에서 Cryostat 매개변수를0022로 설정해야 합니다. - 사용 중인 RHEL 버전에 대해 올바른 바이너리를 설치했습니다.
프로세스
oc-mirror CLI 플러그인을 다운로드합니다.
- OpenShift Cluster Manager 의 다운로드 페이지로 이동합니다.
- OpenShift 연결 설치 툴 섹션에서 OpenShift Client(oc) 미러 플러그인 다운로드를 클릭하고 파일을 저장합니다.
아카이브를 추출합니다.
tar xvzf oc-mirror.tar.gz
$ tar xvzf oc-mirror.tar.gzCopy to Clipboard Copied! Toggle word wrap Toggle overflow 필요한 경우 플러그인 파일을 실행 가능하게 업데이트합니다.
chmod +x oc-mirror
$ chmod +x oc-mirrorCopy to Clipboard Copied! Toggle word wrap Toggle overflow 참고oc-mirror파일의 이름을 바꾸지 마십시오.파일을
PATH에 배치하여 oc-mirror CLI 플러그인을 설치합니다(예:/usr/local/bin:)sudo mv oc-mirror /usr/local/bin/.
$ sudo mv oc-mirror /usr/local/bin/.Copy to Clipboard Copied! Toggle word wrap Toggle overflow
검증
다음 명령을 실행하여 oc-mirror v2의 플러그인이 성공적으로 설치되었는지 확인합니다.
oc mirror --v2 --help
$ oc mirror --v2 --helpCopy to Clipboard Copied! Toggle word wrap Toggle overflow
5.3.2. 이미지를 미러링할 수 있는 인증 정보 설정 링크 복사링크가 클립보드에 복사되었습니다!
Red Hat에서 미러로 이미지를 미러링할 수 있는 컨테이너 이미지 레지스트리 인증 정보 파일을 생성합니다.
클러스터를 설치할 때 이 이미지 레지스트리 인증 정보 파일을 풀 시크릿(pull secret)으로 사용하지 마십시오. 클러스터를 설치할 때 이 파일을 지정하면 클러스터의 모든 시스템에 미러 레지스트리에 대한 쓰기 권한이 부여됩니다.
이 프로세스에서는 미러 레지스트리의 컨테이너 이미지 레지스트리에 대한 쓰기 권한이 있어야 하며 인증 정보를 레지스트리 풀 시크릿에 추가해야 합니다.
사전 요구 사항
- 연결이 끊긴 환경에서 사용할 미러 레지스트리를 구성했습니다.
- 미러 레지스트리에서 이미지를 미러링할 이미지 저장소 위치를 확인했습니다.
- 이미지를 해당 이미지 저장소에 업로드할 수 있는 미러 레지스트리 계정을 제공하고 있습니다.
프로세스
설치 호스트에서 다음 단계를 수행합니다.
-
Red Hat OpenShift Cluster Manager에서
registry.redhat.io풀 시크릿을 다운로드합니다. 풀 시크릿을 JSON 형식으로 복사합니다.
cat ./pull-secret | jq . > <path>/<pull_secret_file_in_json>
$ cat ./pull-secret | jq . > <path>/<pull_secret_file_in_json>1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 풀 시크릿을 저장할 폴더의 경로와 생성한 JSON 파일의 이름을 지정합니다.
파일의 내용은 다음 예와 유사합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
파일을
$XDG_RUNTIME_DIR/containers/auth.json으로 저장합니다. 미러 레지스트리에 대한 base64로 인코딩된 사용자 이름 및 암호 또는 토큰을 생성합니다.
echo -n '<user_name>:<password>' | base64 -w0
$ echo -n '<user_name>:<password>' | base64 -w01 BGVtbYk3ZHAtqXs=Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
<user_name>및<password>의 경우 레지스트리에 설정한 사용자 이름 및 암호를 지정합니다.
JSON 파일을 편집하고 레지스트리를 설명하는 섹션을 추가합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 파일은 다음 예제와 유사합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
5.4. 미러 레지스트리로 이미지 세트 미러링 링크 복사링크가 클립보드에 복사되었습니다!
미러 레지스트리로 이미지를 미러링하면 안전하고 제어된 환경에서 필요한 이미지를 사용할 수 있으므로 더 원활한 배포, 업데이트 및 유지 관리 작업을 수행할 수 있습니다.
5.4.1. 이미지 세트 구성 빌드 링크 복사링크가 클립보드에 복사되었습니다!
oc-mirror 플러그인 v2는 이미지 세트 구성을 입력 파일로 사용하여 미러링에 필요한 이미지를 결정합니다.
ImageSetConfiguration 입력 파일의 예
5.4.2. 부분적으로 연결이 끊긴 환경에서 이미지 세트 미러링 링크 복사링크가 클립보드에 복사되었습니다!
인터넷 액세스가 제한된 환경에서 oc-mirror 플러그인 v2를 사용하여 이미지 세트를 레지스트리에 미러링할 수 있습니다.
사전 요구 사항
- oc-mirror 플러그인 v2를 실행하는 환경의 인터넷 및 미러 레지스트리에 액세스할 수 있습니다.
프로세스
다음 명령을 실행하여 지정된 이미지 세트 구성의 이미지를 지정된 레지스트리로 미러링합니다.
oc mirror -c isc.yaml --workspace file://<file_path> docker://<mirror_registry_url> --v2
$ oc mirror -c isc.yaml --workspace file://<file_path> docker://<mirror_registry_url> --v21 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 이미지가 저장되고 삭제해야 하는 미러 레지스트리의 URL 또는 주소를 지정합니다.
검증
-
<file_path>디렉터리에 생성된working-dir디렉터리 내에서cluster-resources디렉터리로 이동합니다. -
ImageDigestMirrorSet,ImageTagMirrorSet및CatalogSource리소스에 YAML 파일이 있는지 확인합니다.
다음 단계
- oc-mirror 플러그인 v2에서 생성한 리소스를 사용하도록 클러스터를 구성합니다.
5.4.3. 완전히 연결이 끊긴 환경에서 이미지 세트 미러링 링크 복사링크가 클립보드에 복사되었습니다!
OpenShift Container Platform 클러스터가 공용 인터넷에 액세스할 수 없는 완전히 연결이 끊긴 환경에서 이미지 세트를 미러링할 수 있습니다.
- mirror to disk: 미러링을 위해 이미지 세트가 포함된 아카이브를 준비합니다. 인터넷 액세스가 필요합니다.
- 수동 단계: 연결이 끊긴 미러 레지스트리의 네트워크로 아카이브를 전송합니다.
- 미러링할 디스크: 아카이브에서 대상 연결이 끊긴 레지스트리로 이미지 세트를 미러링하려면 미러 레지스트리에 액세스할 수 있는 환경에서 oc-mirror 플러그인 v2를 실행합니다.
5.4.3.1. 미러에서 디스크로 미러링 링크 복사링크가 클립보드에 복사되었습니다!
oc-mirror 플러그인 v2를 사용하여 이미지 세트를 생성하고 콘텐츠를 디스크에 저장할 수 있습니다. 그런 다음 생성된 이미지 세트를 연결이 끊긴 환경으로 전송하고 대상 레지스트리로 미러링할 수 있습니다.
oc-mirror 플러그인 v2는 이미지 세트 구성에 지정된 소스에서 컨테이너 이미지를 검색하고 로컬 디렉터리의 tar 아카이브에 추가합니다.
프로세스
다음 명령을 실행하여 지정된 이미지 세트 구성의 이미지를 디스크에 미러링합니다.
oc mirror -c isc.yaml file://<file_path> --v2
$ oc mirror -c isc.yaml file://<file_path> --v21 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 필요한 파일 경로를 추가합니다.
검증
-
생성된
<file_path>디렉터리로 이동합니다. - 아카이브 파일이 생성되었는지 확인합니다.
다음 단계
- oc-mirror 플러그인 v2에서 생성한 리소스를 사용하도록 클러스터를 구성합니다.
5.4.3.2. 디스크에서 미러로 미러링 링크 복사링크가 클립보드에 복사되었습니다!
oc-mirror 플러그인 v2를 사용하여 디스크에서 대상 미러 레지스트리로 이미지 세트를 미러링할 수 있습니다.
oc-mirror 플러그인 v2는 로컬 디스크에서 컨테이너 이미지를 검색하여 지정된 미러 레지스트리로 전송합니다.
프로세스
디스크에서 이미지 세트 파일을 처리하고 다음 명령을 실행하여 콘텐츠를 대상 미러 레지스트리에 미러링합니다.
oc mirror -c isc.yaml --from file://<file_path> docker://<mirror_registry_url> --v2
$ oc mirror -c isc.yaml --from file://<file_path> docker://<mirror_registry_url> --v21 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 이미지가 저장되고 삭제해야 하는 미러 레지스트리의 URL 또는 주소를 지정합니다.
검증
-
<file_path>디렉터리에 생성된working-dir디렉터리 내에서cluster-resources디렉터리로 이동합니다. -
ImageDigestMirrorSet,ImageTagMirrorSet및CatalogSource리소스에 YAML 파일이 있는지 확인합니다.
다음 단계
- oc-mirror 플러그인 v2에서 생성한 리소스를 사용하도록 클러스터를 구성합니다.
5.5. 추가 리소스 링크 복사링크가 클립보드에 복사되었습니다!
5.6. v2에서 생성한 사용자 정의 리소스 정보 링크 복사링크가 클립보드에 복사되었습니다!
oc-mirror 플러그인 v2, ImageDigestMirrorSet (IDMS) 및 ImageTagMirrorSet (ITMS)은 태그가 참조하는 이미지가 하나 이상 발견되면 기본적으로 생성됩니다. 이러한 세트에는 릴리스의 다이제스트 또는 태그, Operator 카탈로그 및 추가 이미지에서 참조하는 이미지의 미러가 포함되어 있습니다.
IDMS( ImageDigestMirrorSet )는 미러 레지스트리를 소스 레지스트리로 연결하고 다이제스트 사양을 사용하여 이미지 가져오기 요청을 전달합니다. 그러나 ImagetagMirrorSet (ITMS) 리소스는 이미지 태그를 사용하여 이미지 가져오기 요청을 리디렉션합니다.
OLM(Operator Lifecycle Manager)은 CatalogSource 리소스를 사용하여 미러 레지스트리에서 사용 가능한 Operator에 대한 정보를 검색합니다.
OSUS 서비스는 UpdateService 리소스를 사용하여 연결이 끊긴 환경에 Cincinnati 그래프를 제공합니다.
5.6.1. oc-mirror 플러그인 v2에서 생성한 리소스를 사용하도록 클러스터 구성 링크 복사링크가 클립보드에 복사되었습니다!
미러 레지스트리로 이미지를 미러링한 후 생성된 ImageDigestMirrorSet (IDMS), ImageTagMirrorSet (ITMS), CatalogSource 및 UpdateService 를 클러스터에 적용해야 합니다.
oc-mirror 플러그인 v2에서 IDMS 및 ITMS 파일은 oc-mirror 플러그인 v1의 ICSP 파일과 달리 전체 이미지 세트를 다룹니다. 따라서 IDMS 및 ITMS 파일에는 증분 미러링 중에 새 이미지만 추가하는 경우에도 세트의 모든 이미지가 포함됩니다.
사전 요구 사항
-
cluster-admin역할의 사용자로 클러스터에 액세스할 수 있어야 합니다.
프로세스
다음 명령을 실행하여 결과 디렉터리의 YAML 파일을 클러스터에 적용합니다.
oc apply -f <path_to_oc-mirror_workspace>/working-dir/cluster-resources
$ oc apply -f <path_to_oc-mirror_workspace>/working-dir/cluster-resourcesCopy to Clipboard Copied! Toggle word wrap Toggle overflow
검증
다음 명령을 실행하여
ImageDigestMirrorSet리소스가 성공적으로 설치되었는지 확인합니다.oc get imagedigestmirrorset
$ oc get imagedigestmirrorsetCopy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여
ImageTagMirrorSet리소스가 성공적으로 설치되었는지 확인합니다.oc get imagetagmirrorset
$ oc get imagetagmirrorsetCopy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여
CatalogSource리소스가 성공적으로 설치되었는지 확인합니다.oc get catalogsource -n openshift-marketplace
$ oc get catalogsource -n openshift-marketplaceCopy to Clipboard Copied! Toggle word wrap Toggle overflow
5.7. 연결이 끊긴 환경에서 이미지 삭제 링크 복사링크가 클립보드에 복사되었습니다!
oc-mirror 플러그인 v2를 사용하려면 이전에 배포된 이미지를 삭제해야 합니다. oc-mirror 플러그인 v2에서 더 이상 자동 정리를 수행하지 않습니다.
oc-mirror 플러그인 v2를 사용할 때 이미지 구성을 삭제하려면 DeleteImageSetConfiguration 파일을 생성해야 합니다. 이렇게 하면 ImageSetConfig.yaml 을 사용하여 변경할 때 필요한 이미지 또는 배포된 이미지를 실수로 삭제하지 않습니다.
다음 예에서 DeleteImageSetConfiguration 은 다음을 제거합니다.
- OpenShift Container Platform 릴리스 4.13.3의 모든 이미지
-
카탈로그 이미지
redhat-operator-indexv4.12. -
aws-load-balancer-operatorv0.0.1 번들 및 모든 관련 이미지 -
해당 다이제스트에서 참조하는
ubi및ubi-minimal이미지입니다.
예: DeleteImageSetConfig
mirror-to-disk 및 disk-to-mirror 워크플로우를 사용하여 미러링 문제를 줄이는 것이 좋습니다.
이미지 삭제 워크플로우에서 oc-mirror 플러그인 v2는 이미지의 매니페스트만 삭제하므로 레지스트리에 사용된 스토리지를 줄일 수 없습니다.
매니페스트가 삭제된 이미지와 같은 불필요한 이미지에서 스토리지 공간을 확보하려면 컨테이너 레지스트리에서 가비지 수집기를 활성화해야 합니다. 가비지 수집기가 활성화되면 레지스트리는 더 이상 매니페스트에 대한 참조가 없는 이미지 Blob을 삭제하여 이전에 삭제된 Blob에서 차지한 스토리지를 줄입니다. 가비지 수집기 활성화는 컨테이너 레지스트리에 따라 다릅니다.
이미지를 삭제할 때 Operator 카탈로그 이미지 삭제를 건너뛰려면 DeleteImageSetConfiguration 파일의 Operator 카탈로그 이미지 아래에 특정 Operator를 나열해야 합니다. 이렇게 하면 카탈로그 이미지가 아닌 지정된 Operator만 삭제됩니다.
Operator 카탈로그 이미지만 지정하면 해당 카탈로그 내의 모든 Operator와 카탈로그 이미지 자체가 삭제됩니다.
5.7.1. 연결이 끊긴 환경에서 이미지 삭제 링크 복사링크가 클립보드에 복사되었습니다!
oc-mirror 플러그인 v2를 사용하여 연결이 끊긴 환경에서 이미지를 삭제하려면 절차를 따르십시오.
프로세스
이전 이미지를 삭제하는 YAML 파일을 생성합니다.
oc mirror delete --config delete-image-set-config.yaml --workspace file://<previously_mirrored_work_folder> --v2 --generate docker://<remote_registry>
$ oc mirror delete --config delete-image-set-config.yaml --workspace file://<previously_mirrored_work_folder> --v2 --generate docker://<remote_registry>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음과 같습니다.
-
<previously_mirrored_work_folder>: 미러링 프로세스 중에 이미지가 이전에 미러링되었거나 저장된 디렉토리를 사용합니다. -
<remote_registry>: 이미지가 삭제될 원격 컨테이너 레지스트리의 URL 또는 주소를 삽입합니다.
-
-
생성된 <
;previously_mirrored_work_folder>/delete 디렉터리로이동합니다. -
delete-images.yaml파일이 생성되었는지 확인합니다. - 파일에 나열된 각 이미지가 더 이상 클러스터에 필요하지 않으며 레지스트리에서 안전하게 제거할 수 있는지 수동으로 확인합니다.
삭제YAML 파일을 생성한 후 원격 레지스트리에서 이미지를 삭제합니다.oc mirror delete --v2 --delete-yaml-file <previously_mirrored_work_folder>/delete/delete-images.yaml docker:/ <remote_registry>
$ oc mirror delete --v2 --delete-yaml-file <previously_mirrored_work_folder>/delete/delete-images.yaml docker:/ <remote_registry>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음과 같습니다.
<previously_mirrored_work_folder> : 이전에 미러링된 작업 폴더를 지정합니다.중요mirror-to-mirror 절차를 사용하는 경우 이미지가 로컬에 캐시되지 않으므로 로컬 캐시에서 이미지를 삭제할 수 없습니다.
5.8. 미러링을 위해 선택한 이미지 확인 링크 복사링크가 클립보드에 복사되었습니다!
oc-mirror 플러그인 v2를 사용하여 실제로 이미지를 미러링하지 않는 테스트 실행(dry run)을 수행할 수 있습니다. 이를 통해 미러링할 이미지 목록을 검토할 수 있습니다. 예행 실행을 사용하여 이미지 세트 구성에서 오류를 조기에 파악할 수 있습니다. 미러-디스크 워크플로우에서 예행 실행을 실행하는 경우 oc-mirror 플러그인 v2는 이미지 세트 내의 모든 이미지를 캐시에서 사용할 수 있는지 확인합니다. 누락된 이미지는 missing.txt 파일에 나열됩니다. 미러링 전에 예행 실행이 수행되면 missing.txt 및 mapping.txt 파일에 동일한 이미지 목록이 포함됩니다.
5.8.1. oc-mirror 플러그인 v2에 대한 시험 실행 수행 링크 복사링크가 클립보드에 복사되었습니다!
이미지를 미러링하지 않고 시험 실행을 수행하여 이미지 세트 구성을 확인합니다. 이렇게 하면 설정이 올바르며 의도하지 않은 변경을 방지할 수 있습니다.
프로세스
테스트 실행을 수행하려면
oc mirror명령을 실행하고--dry-run인수를 명령에 추가합니다.oc mirror -c <image_set_config_yaml> --from file://<oc_mirror_workspace_path> docker://<mirror_registry_url> --dry-run --v2
$ oc mirror -c <image_set_config_yaml> --from file://<oc_mirror_workspace_path> docker://<mirror_registry_url> --dry-run --v2Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음과 같습니다.
-
<image_set_config_yaml>: 방금 생성한 이미지 세트 구성 파일을 사용합니다. -
<oc_mirror_workspace_path> : 작업 공간 경로의 주소를 삽입합니다. <mirror_registry_url>: 이미지가 삭제될 원격 컨테이너 레지스트리의 URL 또는 주소를 삽입합니다.출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
-
검증
생성된 작업 공간 디렉터리로 이동합니다.
cd <oc_mirror_workspace_path>
$ cd <oc_mirror_workspace_path>Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
생성된
mapping.txt및missing.txt파일을 검토합니다. 이러한 파일에는 미러링된 모든 이미지 목록이 포함되어 있습니다.
5.8.2. oc-mirror 플러그인 v2 오류 문제 해결 링크 복사링크가 클립보드에 복사되었습니다!
oc-mirror 플러그인 v2는 이제 모든 이미지 미러링 오류를 별도의 파일에 기록하므로 오류를 더 쉽게 추적하고 진단할 수 있습니다.
릴리스 또는 릴리스 구성 요소 이미지를 미러링하는 동안 오류가 발생하면 중요합니다. 이렇게 하면 미러링 프로세스가 즉시 중지됩니다.
Operator, Operator 관련 이미지 또는 추가 이미지 미러링 관련 오류로 인해 미러링 프로세스가 중지되지 않습니다. 미러링은 계속되고 oc-mirror 플러그인 v2는 8개의 이미지마다 업데이트됩니다.
이미지가 미러링되지 않고 해당 이미지가 하나 이상의 Operator 번들의 일부로 미러링되는 경우 oc-mirror 플러그인 v2는 사용자에게 Operator가 불완전함을 알립니다. 그러면 오류의 영향을 받는 Operator 번들이 명확하게 표시됩니다.
프로세스
서버 관련 문제를 확인합니다.
오류 예
[ERROR] : [Worker] error mirroring image localhost:55000/openshift/graph-image:latest error: copying image 1/4 from manifest list: trying to reuse blob sha256:edab65b863aead24e3ed77cea194b6562143049a9307cd48f86b542db9eecb6e at destination: pinging container registry localhost:5000: Get "https://localhost:5000/v2/": http: server gave HTTP response to HTTPS client
[ERROR] : [Worker] error mirroring image localhost:55000/openshift/graph-image:latest error: copying image 1/4 from manifest list: trying to reuse blob sha256:edab65b863aead24e3ed77cea194b6562143049a9307cd48f86b542db9eecb6e at destination: pinging container registry localhost:5000: Get "https://localhost:5000/v2/": http: server gave HTTP response to HTTPS clientCopy to Clipboard Copied! Toggle word wrap Toggle overflow -
oc-mirror 플러그인 v2 출력 디렉터리에 있는
working-dir/logs폴더에서mirroring_error_date_time.log파일을 엽니다. -
HTTP 500오류, 만료된 토큰 또는 타임아웃과 같이 일반적으로 서버 측 문제를 나타내는 오류 메시지를 찾습니다. - 문제가 지속되면 미러링 프로세스 다시 시도하거나 지원에 문의합니다.
-
oc-mirror 플러그인 v2 출력 디렉터리에 있는
Operator의 불완전한 미러링을 확인합니다.
오류 예
error mirroring image docker://registry.redhat.io/3scale-amp2/zync-rhel9@sha256:8bb6b31e108d67476cc62622f20ff8db34efae5d58014de9502336fcc479d86d (Operator bundles: [3scale-operator.v0.11.12] - Operators: [3scale-operator]) error: initializing source docker://localhost:55000/3scale-amp2/zync-rhel9:8bb6b31e108d67476cc62622f20ff8db34efae5d58014de9502336fcc479d86d: reading manifest 8bb6b31e108d67476cc62622f20ff8db34efae5d58014de9502336fcc479d86d in localhost:55000/3scale-amp2/zync-rhel9: manifest unknown error mirroring image docker://registry.redhat.io/3scale-amp2/3scale-rhel7-operator-metadata@sha256:de0a70d1263a6a596d28bf376158056631afd0b6159865008a7263a8e9bf0c7d error: skipping operator bundle docker://registry.redhat.io/3scale-amp2/3scale-rhel7-operator-metadata@sha256:de0a70d1263a6a596d28bf376158056631afd0b6159865008a7263a8e9bf0c7d because one of its related images failed to mirror error mirroring image docker://registry.redhat.io/3scale-amp2/system-rhel7@sha256:fe77272021867cc6b6d5d0c9bd06c99d4024ad53f1ab94ec0ab69d0fda74588e (Operator bundles: [3scale-operator.v0.11.12] - Operators: [3scale-operator]) error: initializing source docker://localhost:55000/3scale-amp2/system-rhel7:fe77272021867cc6b6d5d0c9bd06c99d4024ad53f1ab94ec0ab69d0fda74588e: reading manifest fe77272021867cc6b6d5d0c9bd06c99d4024ad53f1ab94ec0ab69d0fda74588e in localhost:55000/3scale-amp2/system-rhel7: manifest unknown
error mirroring image docker://registry.redhat.io/3scale-amp2/zync-rhel9@sha256:8bb6b31e108d67476cc62622f20ff8db34efae5d58014de9502336fcc479d86d (Operator bundles: [3scale-operator.v0.11.12] - Operators: [3scale-operator]) error: initializing source docker://localhost:55000/3scale-amp2/zync-rhel9:8bb6b31e108d67476cc62622f20ff8db34efae5d58014de9502336fcc479d86d: reading manifest 8bb6b31e108d67476cc62622f20ff8db34efae5d58014de9502336fcc479d86d in localhost:55000/3scale-amp2/zync-rhel9: manifest unknown error mirroring image docker://registry.redhat.io/3scale-amp2/3scale-rhel7-operator-metadata@sha256:de0a70d1263a6a596d28bf376158056631afd0b6159865008a7263a8e9bf0c7d error: skipping operator bundle docker://registry.redhat.io/3scale-amp2/3scale-rhel7-operator-metadata@sha256:de0a70d1263a6a596d28bf376158056631afd0b6159865008a7263a8e9bf0c7d because one of its related images failed to mirror error mirroring image docker://registry.redhat.io/3scale-amp2/system-rhel7@sha256:fe77272021867cc6b6d5d0c9bd06c99d4024ad53f1ab94ec0ab69d0fda74588e (Operator bundles: [3scale-operator.v0.11.12] - Operators: [3scale-operator]) error: initializing source docker://localhost:55000/3scale-amp2/system-rhel7:fe77272021867cc6b6d5d0c9bd06c99d4024ad53f1ab94ec0ab69d0fda74588e: reading manifest fe77272021867cc6b6d5d0c9bd06c99d4024ad53f1ab94ec0ab69d0fda74588e in localhost:55000/3scale-amp2/system-rhel7: manifest unknownCopy to Clipboard Copied! Toggle word wrap Toggle overflow 콘솔 또는 로그 파일에서 불완전한 Operator를 나타내는 경고를 확인합니다.
Operator가 불완전한 것으로 표시되는 경우 해당 Operator와 관련된 이미지를 미러링하지 못할 수 있습니다.
- 누락된 이미지를 수동으로 미러링하거나 미러링 프로세스를 다시 시도합니다.
생성된 클러스터 리소스와 관련된 오류가 있는지 확인합니다. 일부 이미지가 미러링되지 않더라도 oc-mirror v2는 성공적으로 미러링된 이미지에 대한
IDMS.yaml및ITMS.yaml파일과 같은 클러스터 리소스를 계속 생성합니다.- 생성된 파일의 출력 디렉터리를 확인합니다.
- 이러한 파일이 특정 이미지에 대해 누락된 경우 미러링 프로세스 중에 해당 이미지에 대한 중요한 오류가 발생하지 않았는지 확인합니다.
이러한 단계를 수행하면 문제를 더 잘 진단하고 원활한 미러링을 보장할 수 있습니다.
5.9. enclave 지원의 이점 링크 복사링크가 클립보드에 복사되었습니다!
Enclave 지원은 네트워크의 특정 부분에 대한 내부 액세스를 제한합니다. 방화벽 경계를 통한 인바운드 및 아웃바운드 트래픽 액세스를 허용하는 DMZ(비밀화 영역) 네트워크와 달리 enclaves는 방화벽 경계를 통과하지 않습니다.
Enclave 지원은 기술 프리뷰 기능 전용입니다. 기술 프리뷰 기능은 Red Hat 프로덕션 서비스 수준 계약(SLA)에서 지원되지 않으며 기능적으로 완전하지 않을 수 있습니다. 따라서 프로덕션 환경에서 사용하는 것은 권장하지 않습니다. 이러한 기능을 사용하면 향후 제품 기능을 조기에 이용할 수 있어 개발 과정에서 고객이 기능을 테스트하고 피드백을 제공할 수 있습니다.
Red Hat 기술 프리뷰 기능의 지원 범위에 대한 자세한 내용은 기술 프리뷰 기능 지원 범위를 참조하십시오.
새로운 enclave 지원 기능은 하나 이상의 중간 연결이 끊긴 네트워크 뒤에서 보호되는 여러 enclav에 미러링이 필요한 시나리오에 적합합니다.
Enclave 지원에는 다음과 같은 이점이 있습니다.
- 여러 개의 enclaves의 콘텐츠를 미러링하고 단일 내부 레지스트리에 중앙 집중화할 수 있습니다. 일부 고객은 미러링된 컨텐츠에서 보안 검사를 실행하려고 하므로 이 설정을 사용하면 이러한 검사를 모두 한 번에 실행할 수 있습니다. 그런 다음 콘텐츠는 다운스트림으로 미러링되기 전에 비정형됩니다.
- 각 enclave에 대해 인터넷에서 미러링 프로세스를 다시 시작하지 않고 중앙 집중식 내부 레지스트리에서 직접 콘텐츠를 미러링할 수 있습니다.
- 네트워크 단계 간의 데이터 전송을 최소화하여 Blob 또는 이미지가 한 단계에서 다른 단계로만 전송되도록 할 수 있습니다.
5.9.1. Enclave 미러링 워크플로 링크 복사링크가 클립보드에 복사되었습니다!
이전 이미지는 인터넷 연결이 있고 없이 환경을 포함하여 다양한 환경에서 oc-mirror 플러그인을 사용하는 흐름을 간략하게 설명합니다.
인터넷 연결이 있는 환경:
- 사용자는 oc-mirror 플러그인 v2를 실행하여 온라인 레지스트리의 콘텐츠를 로컬 디스크 디렉터리로 미러링합니다.
- 미러링된 콘텐츠는 오프라인 환경으로 전송하기 위해 디스크에 저장됩니다.
연결이 끊긴 엔터프라이즈 환경(인터넷 없음):
흐름 1:
-
사용자는 oc-mirror 플러그인 v2를 실행하여 온라인 환경에서
enterprise-registry.in레지스트리로 전송된 디스크 디렉터리에서 미러링된 콘텐츠를 로드합니다.
-
사용자는 oc-mirror 플러그인 v2를 실행하여 온라인 환경에서
흐름 2:
-
registries.conf파일을 업데이트한 후 사용자는 oc-mirror 플러그인 v2를 실행하여enterprise-registry.in레지스트리의 콘텐츠를 enclave 환경으로 미러링합니다. - 콘텐츠는 enclave로 전송하기 위해 디스크 디렉터리에 저장됩니다.
-
Enclave 환경 (인터넷 없음):
-
사용자는 oc-mirror 플러그인 v2를 실행하여 디스크 디렉터리의 콘텐츠를
enclave-registry.in레지스트리로 로드합니다.
이미지는 이러한 환경에서 데이터 흐름을 시각적으로 나타내며 oc-mirror를 사용하여 인터넷 연결 없이 연결이 끊긴 환경을 처리합니다.
5.9.2. enclave에 미러링 링크 복사링크가 클립보드에 복사되었습니다!
enclave에 미러링할 때는 먼저 필요한 이미지를 하나 이상의 enclav에서 엔터프라이즈 중앙 레지스트리로 전송해야 합니다.
중앙 레지스트리는 보안 네트워크, 특히 연결이 끊긴 환경 내에 있으며 공용 인터넷에 직접 연결되지 않습니다. 그러나 사용자는 공용 인터넷에 액세스할 수 있는 환경에서 oc mirror 를 실행해야 합니다.
프로세스
연결이 끊긴 환경에서 oc-mirror 플러그인 v2를 실행하기 전에
registries.conf파일을 생성합니다. 파일의 TOML 형식은 이 사양에 설명되어 있습니다.참고$HOME/.config/containers/registries.conf또는/etc/containers/registries.conf아래에 파일을 저장하는 것이 좋습니다.registries.conf예Copy to Clipboard Copied! Toggle word wrap Toggle overflow 미러 아카이브를 생성합니다.
모든 OpenShift Container Platform 콘텐츠를 <
file_path>/enterprise-content아래의 아카이브로 수집하려면 다음 명령을 실행합니다.oc mirror --v2 -c isc.yaml file://<file_path>/enterprise-content
$ oc mirror --v2 -c isc.yaml file://<file_path>/enterprise-contentCopy to Clipboard Copied! Toggle word wrap Toggle overflow isc.yaml의 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 아카이브가 생성되면 연결이 끊긴 환경으로 전송됩니다. 전송 메커니즘은 oc-mirror 플러그인 v2의 일부가 아닙니다. 엔터프라이즈 네트워크 관리자는 전송 전략을 결정합니다.
경우에 따라 디스크가 물리적으로 한 위치에서 연결 해제되고 연결이 끊긴 환경의 다른 컴퓨터에 연결되어 있음을 전송이 수동으로 수행됩니다. 다른 경우에는 FTP(Secure File Transfer Protocol) 또는 기타 프로토콜이 사용됩니다.
아카이브 전송이 완료되면 다음 예에 설명된 대로 관련 아카이브 콘텐츠를 레지스트리(예의
entrerpise_registry.in)에 미러링하기 위해 oc-mirror 플러그인 v2를 다시 실행할 수 있습니다.oc mirror --v2 -c isc.yaml --from file://<disconnected_environment_file_path>/enterprise-content docker://<enterprise_registry.in>/
$ oc mirror --v2 -c isc.yaml --from file://<disconnected_environment_file_path>/enterprise-content docker://<enterprise_registry.in>/Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음과 같습니다.
-
--from은 아카이브가 포함된 폴더를 가리킵니다.file://로 시작합니다. -
docker://는 미러링의 대상이 최종 인수입니다. 이는 docker 레지스트리이기 때문입니다. -
-c(--config)는 필수 인수입니다. oc-mirror 플러그인 v2가 결국 아카이브의 하위 부분만 레지스트리에 미러링할 수 있습니다. 하나의 아카이브에는 여러 OpenShift Container Platform 릴리스가 포함될 수 있지만 연결이 끊긴 환경 또는 enclave는 몇 개만 미러링할 수 있습니다.
-
enclave에 미러링할 콘텐츠를 설명하는
imageSetConfigYAML 파일을 준비합니다.isc-enclave.yaml의 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 연결이 끊긴 레지스트리에 액세스할 수 있는 머신에서 oc-mirror 플러그인 v2를 실행해야 합니다. 이전 예에서 연결이 끊긴 환경
enterprise-registry.in에 액세스할 수 있습니다.그래프 URL 업데이트
graph:true를 사용하는 경우 oc-mirror 플러그인 v2는cincinnatiAPI 끝점에 도달하려고 시도합니다. 이 환경의 연결이 끊어지면UPDATE_URL_OVERRIDE환경 변수 OSUS(OpenShift Update Service)의 URL을 참조하도록 환경 변수 UPDATE_URL_OVERRIDE를 내보내야 합니다.export UPDATE_URL_OVERRIDE=https://<osus.enterprise.in>/graph
$ export UPDATE_URL_OVERRIDE=https://<osus.enterprise.in>/graphCopy to Clipboard Copied! Toggle word wrap Toggle overflow OpenShift 클러스터에서 OSUS를 설정하는 방법에 대한 자세한 내용은 "OpenShift Update Service를 사용하여 연결이 끊긴 환경에서 클러스터 업그레이드"를 참조하십시오.
OpenShift Container Platform EUS (Extended Update Support) 버전을 업그레이드할 때 현재 버전과 대상 버전 간에 중간 버전이 필요할 수 있습니다. 예를 들어 현재 버전이 4.14 이고 대상 버전이 4.16 인 경우 oc-mirror 플러그인 v2를 사용할 때 ImageSetConfiguration 에 4.15.8 과 같은 버전을 포함해야 할 수 있습니다.
oc-mirror 플러그인 v2가 항상 자동으로 감지되지 않을 수 있으므로 필요한 중간 버전을 확인하고 구성에 수동으로 추가하려면 Cincinnati 그래프 웹 페이지를 확인하십시오.
enclave의 엔터프라이즈 레지스트리에서 미러 아카이브를 생성합니다.
enclave1용 아카이브를 준비하기 위해 사용자는 해당 enclave에 특정한imageSetConfiguration을 사용하여 엔터프라이즈 연결이 끊긴 환경에서 oc-mirror 플러그인 v2를 실행합니다. 이렇게 하면 enclave에 필요한 이미지만 미러링됩니다.oc mirror --v2 -c isc-enclave.yaml
$ oc mirror --v2 -c isc-enclave.yaml file:///disk-enc1/Copy to Clipboard Copied! Toggle word wrap Toggle overflow 이 작업은 모든 OpenShift Container Platform 콘텐츠를 아카이브로 수집하고 디스크에 아카이브를 생성합니다.
-
아카이브가 생성되면
enclave1네트워크로 전송됩니다. 전송 메커니즘은 oc-mirror 플러그인 v2의 책임이 아닙니다. enclave 레지스트리에 콘텐츠를 미러링
아카이브 전송이 완료되면 사용자는 관련 아카이브 콘텐츠를 레지스트리에 미러링하기 위해 oc-mirror 플러그인 v2를 다시 실행할 수 있습니다.
oc mirror --v2 -c isc-enclave.yaml --from file://local-disk docker://registry.enc1.in
$ oc mirror --v2 -c isc-enclave.yaml --from file://local-disk docker://registry.enc1.inCopy to Clipboard Copied! Toggle word wrap Toggle overflow enclave1의 OpenShift Container Platform 클러스터 관리자는 이제 해당 클러스터를 설치하거나 업그레이드할 준비가 되었습니다.
5.10. Operator 카탈로그에서 필터링이 작동하는 방법 링크 복사링크가 클립보드에 복사되었습니다!
oc-mirror 플러그인 v2는 imageSetConfig 의 정보를 처리하여 미러링을 위한 번들 목록을 선택합니다.
oc-mirror 플러그인 v2는 미러링을 위한 번들을 선택할 때 GVK(그룹 버전 종류) 또는 번들 종속성을 유추하지 않고 미러링 세트에서 생략합니다. 대신 사용자 지침을 엄격하게 준수합니다. 필요한 종속 패키지 및 해당 버전을 명시적으로 지정해야 합니다.
번들 버전은 일반적으로 의미 체계 버전 관리 표준(SemVer)을 사용하며 채널 내의 번들을 버전별로 정렬할 수 있습니다. ImageSetConfig 에서 특정 범위에 속하는 구두를 선택할 수 있습니다.
이 선택 알고리즘은 oc-mirror 플러그인 v1에 비해 일관된 결과를 보장합니다. 그러나 대체, 건너뛰기 및 와 같은 업그레이드 그래프 세부 정보는 포함되지 않습니다. 이 접근 방식은 OLM 알고리즘과 다릅니다. skip RangeminVersion 과 maxVersion 사이의 업그레이드 경로가 잠재적으로 짧아지므로 클러스터를 업그레이드하는 데 필요한 것보다 많은 번들을 미러링할 수 있습니다.
| ImageSetConfig Operator 필터링 | 예상되는 번들 버전 |
|---|---|
| 시나리오 1 mirror: operators: - catalog: registry.redhat.io/redhat/redhat-operator-index:v4.10
| 카탈로그의 각 패키지에 대해 해당 패키지의 기본 채널의 헤드 버전에 해당하는 1개의 번들입니다. |
| 시나리오 2 mirror:
operators:
- catalog: registry.redhat.io/redhat/redhat-operator-index:v4.10
full: true
| 지정된 카탈로그의 모든 채널의 모든 번들 |
| 시나리오 3 mirror:
operators:
- catalog: registry.redhat.io/redhat/redhat-operator-index:v4.10
packages:
- name: compliance-operator
| 해당 패키지의 기본 채널의 헤드 버전에 해당하는 하나의 번들 |
| 시나리오 4 | 지정된 패키지에 대한 모든 채널의 모든 번들 |
| 시나리오 5 |
|
| 시나리오 6 |
기본 채널의 모든 번들에 해당 패키지의 |
| 시나리오 7 |
해당 패키지의 |
| 시나리오 8 | 해당 패키지의 선택한 채널의 헤드 번들입니다. |
| 시나리오 9 | 지정된 패키지 및 채널에 대한 모든 번들입니다. |
| 시나리오 10 | 해당 패키지의 선택한 각 채널에 대한 헤드 번들입니다. |
| 시나리오 11 |
해당 패키지의 선택한 채널 내에서 |
| 시나리오 12 |
해당 패키지의 선택한 채널 내에서 최대 |
| 시나리오 13 |
해당 패키지의 선택한 채널 내에서 |
| 시나리오 14 | 각 패키지에 지정된 번들만 필터링에 포함됩니다. |
| 시나리오 15 |
이 시나리오를 사용하지 마십시오. |
| 시나리오 16 |
이 시나리오를 사용하지 마십시오. |
| 시나리오 17 |
이 시나리오를 사용하지 마십시오. |
5.11. oc-mirror 플러그인 v2의 이미지 세트 구성 매개변수 링크 복사링크가 클립보드에 복사되었습니다!
oc-mirror 플러그인 v2에는 미러링할 이미지를 정의하는 이미지 세트 구성 파일이 필요합니다. 다음 표에는 ImageSetConfiguration 리소스에 사용 가능한 매개변수가 나열되어 있습니다.
minVersion 및 maxVersion 속성을 사용하여 특정 Operator 버전 범위를 필터링하면 여러 채널 헤드 오류가 발생할 수 있습니다. 오류 메시지는 여러 채널 헤드 가 있음을 나타냅니다. 필터가 적용되면 Operator의 업데이트 그래프가 잘립니다.
OLM에는 모든 Operator 채널에 정확히 하나의 엔드 포인트, 즉 최신 버전의 Operator가 있는 업데이트 그래프를 형성하는 버전이 포함되어 있어야 합니다. 필터 범위가 적용되면 해당 그래프는 두 개 이상의 개별 그래프 또는 두 개 이상의 끝점이 있는 그래프로 전환할 수 있습니다.
이 오류를 방지하려면 최신 버전의 Operator를 필터링하지 마십시오. Operator에 따라 오류가 계속 실행되는 경우 maxVersion 속성을 늘리거나 minVersion 속성을 줄여야 합니다. 모든 Operator 그래프는 다를 수 있으므로 오류가 해결될 때까지 이러한 값을 조정해야 할 수 있습니다.
| 매개변수 | 설명 | 값 |
|---|---|---|
|
|
|
문자열 예: |
|
| 이미지 세트 내의 각 아카이브 파일의 최대 크기(GiB)입니다. |
정수 예: |
|
| 이미지 세트의 구성입니다. | 개체 |
|
| 이미지 세트의 추가 이미지 구성입니다. | 개체 배열 예제: additionalImages: - name: registry.redhat.io/ubi8/ubi:latest
|
|
| 미러링할 이미지의 태그 또는 다이제스트입니다. |
문자열 예: |
|
| 미러링을 차단할 태그 또는 다이제스트(SHA)가 있는 이미지 목록입니다. |
문자열 배열 예: |
|
| 이미지 세트의 Operator 구성 | 개체 배열 예제: operators:
- catalog: registry.redhat.io/redhat/redhat-operator-index:4.16
packages:
- name: elasticsearch-operator
minVersion: '2.4.0'
|
|
| 이미지 세트에 포함할 Operator 카탈로그입니다. |
문자열 예: |
|
|
|
부울 값은 |
|
| Operator 패키지 구성입니다. | 개체 배열 예제: operators:
- catalog: registry.redhat.io/redhat/redhat-operator-index:4.16
packages:
- name: elasticsearch-operator
minVersion: '5.2.3-31'
|
|
| 이미지 세트에 포함할 Operator 패키지 이름입니다. |
문자열 예: |
|
| Operator 패키지 채널 구성 | 개체 |
|
| 이미지 세트에 포함할 Operator 채널 이름은 패키지 내에서 고유합니다. |
문자열 Eample: |
|
| Operator의 가장 높은 버전은 존재하는 모든 채널에서 미러링됩니다. |
문자열 예: |
|
| 존재하는 모든 채널에 미러링할 가장 낮은 버전의 Operator |
문자열 예: |
|
| 존재하는 모든 채널에 미러링할 Operator의 가장 높은 버전입니다. |
문자열 예: |
|
| 존재하는 모든 채널에 미러링할 Operator의 가장 낮은 버전입니다. |
문자열 예: |
|
| 선택한 번들 구성 | 개체 배열 예제: |
|
| 미러용으로 선택한 번들의 이름입니다(카탈로그에 표시됨). |
문자열 예 : |
|
| 참조된 카탈로그를 미러링하는 대체 이름 및 선택적 네임스페이스 계층 구조 |
문자열 예: |
|
| oc-mirror 플러그인 v2에서 생성한 catalogSource 사용자 정의 리소스를 완료하는 데 사용할 템플릿의 디스크 경로입니다. |
문자열 예: |
|
|
|
문자열 예: |
|
| 이미지 세트의 플랫폼 구성입니다. | 개체 |
|
| 미러링할 플랫폼 릴리스 페이로드의 아키텍처입니다. | 문자열 배열은 다음과 같습니다.
기본값은 |
|
| 이미지 세트의 플랫폼 채널 구성입니다. | 오브젝트 배열은 다음과 같습니다. channels: - name: stable-4.12 - name: stable-4.16
|
|
|
|
부울 값 기본값은 |
|
| 릴리스 채널의 이름 |
문자열 예: |
|
| 미러링할 참조된 플랫폼의 최소 버전입니다. |
문자열 예: |
|
| 참조된 플랫폼의 가장 높은 버전을 미러링합니다. |
문자열 예: |
|
| 경로 미러링 또는 전체 범위 미러링을 전환합니다. |
부울 값 기본값은 |
|
| 미러링할 플랫폼의 유형 |
문자열 예: |
|
| OSUS 그래프가 이미지 세트에 추가되고 나중에 미러에 게시되는지 여부를 나타냅니다. |
부울 값 기본값은 |
5.11.1. ImageSet 구성 매개변수 삭제 링크 복사링크가 클립보드에 복사되었습니다!
oc-mirror 플러그인 v2를 사용하려면 미러 레지스트리에서 삭제할 이미지를 정의하는 삭제 이미지 세트 구성 파일이 있어야 합니다. 다음 표에는 DeleteImageSetConfiguration 리소스에 사용 가능한 매개변수가 나열되어 있습니다.
| 매개변수 | 설명 | 값 |
|---|---|---|
|
|
|
문자열 예: |
|
| 삭제할 이미지 세트의 구성입니다. | 개체 |
|
| 삭제 이미지 세트의 추가 이미지 구성입니다. | 오브젝트 배열은 다음과 같습니다. additionalImages: - name: registry.redhat.io/ubi8/ubi:latest
|
|
| 삭제할 이미지의 태그 또는 다이제스트입니다. |
문자열 예: |
|
| 삭제 이미지 세트의 Operator 구성입니다. | 오브젝트 배열은 다음과 같습니다. operators:
- catalog: registry.redhat.io/redhat/redhat-operator-index:{product-version}
packages:
- name: elasticsearch-operator
minVersion: '2.4.0'
|
|
| 삭제 이미지 세트에 포함할 Operator 카탈로그입니다. |
문자열 예: |
|
| true인 경우 전체 카탈로그, Operator 패키지 또는 Operator 채널을 삭제합니다. |
부울 값 기본값은 |
|
| Operator 패키지 구성 | 오브젝트 배열은 다음과 같습니다. operators:
- catalog: registry.redhat.io/redhat/redhat-operator-index:{product-version}
packages:
- name: elasticsearch-operator
minVersion: '5.2.3-31'
|
|
| 삭제 이미지 세트에 포함할 Operator 패키지 이름입니다. |
문자열 예: |
|
| Operator 패키지 채널 구성 | 개체 |
|
| 삭제 이미지 세트에 포함할 Operator 채널 이름(패키지 내에서 고유함)입니다. |
문자열 예: |
|
| 선택한 채널 내에서 삭제할 Operator의 가장 높은 버전입니다. |
문자열 예: |
|
| 존재하는 선택 범위 내에서 삭제할 Operator의 가장 낮은 버전입니다. |
문자열 예: |
|
| 존재하는 모든 채널에서 삭제할 Operator의 가장 높은 버전입니다. |
문자열 예: |
|
| 존재하는 모든 채널에서 삭제할 Operator의 가장 낮은 버전입니다. |
문자열 예: |
|
| 선택한 번들 구성 | 개체 배열 동일한 Operator에 대해 채널과 번들을 모두 선택할 수 없습니다. 예제: |
|
| 삭제할 번들의 이름(카탈로그에 표시됨) |
문자열 예 : |
|
| 이미지 세트의 플랫폼 구성 | 개체 |
|
| 삭제할 플랫폼 릴리스 페이로드의 아키텍처입니다. | 문자열 배열은 다음과 같습니다.
기본값은 |
|
| 이미지 세트의 플랫폼 채널 구성입니다. | 개체 배열 예제: channels: - name: stable-4.12 - name: stable-4.16
|
|
|
|
부울 값 기본값은 |
|
| 릴리스 채널의 이름 |
문자열 예: |
|
| 삭제할 참조 플랫폼의 최소 버전입니다. |
문자열 예: |
|
| 삭제할 가장 높은 버전의 참조 플랫폼입니다. |
문자열 예: |
|
| 가장 짧은 경로를 삭제하고 전체 범위를 삭제하는 사이를 전환합니다. |
부울 값 기본값은 |
|
| 삭제할 플랫폼의 유형 |
문자열 예: |
|
| 미러 레지스트리에서도 OSUS 그래프가 삭제되었는지 여부를 확인합니다. |
부울 값 기본값은 |
5.12. oc-mirror 플러그인 v2에 대한 명령 참조 링크 복사링크가 클립보드에 복사되었습니다!
다음 표에서는 oc-mirror 플러그인 v2의 oc mirror 하위 명령 및 플래그를 설명합니다.
| 하위 명령 | 설명 |
|---|---|
|
| 모든 하위 명령에 대한 도움말 표시 |
|
| oc-mirror 버전을 출력합니다. |
|
| 원격 레지스트리 및 로컬 캐시의 이미지를 삭제합니다. |
| 플래그 | 설명 |
|---|---|
|
|
인증 파일의 문자열 경로를 표시합니다. 기본값은 |
|
| 이미지 세트 구성 파일의 경로를 지정합니다. |
|
| HTTPS가 필요하며 컨테이너 레지스트리 또는 데몬에 액세스할 때 인증서를 확인합니다. |
|
| 이미지를 미러링하지 않고 작업 출력 |
|
| oc-mirror 플러그인 v2를 실행하여 대상 레지스트리를 로드하여 생성된 이미지 세트 아카이브의 경로를 지정합니다. |
|
| 도움말 표시 |
|
|
문자열 로그 수준을 표시합니다. 지원되는 값에는 info, debug, trace, error가 포함됩니다. 기본값은 |
|
|
oc-mirror 플러그인 v2 로컬 스토리지 인스턴스에서 사용하는 HTTP 포트를 결정합니다. 기본값은 |
|
|
중첩된 경로를 제한하는 대상 레지스트리의 최대 중첩된 경로 수를 지정합니다. 기본값은 |
|
|
기본값은 |
|
|
지정된 날짜 이후의 모든 새 콘텐츠를 포함합니다(format: |
|
| HTTPS가 필요하며 컨테이너 레지스트리 또는 데몬에 액세스할 때 인증서를 확인합니다. |
|
|
기본값은 |
|
| oc-mirror 플러그인 v2의 버전을 표시합니다. |
|
| 리소스 및 내부 아티팩트가 생성되는 문자열 oc-mirror 플러그인 v2 작업 영역을 결정합니다. |
Legal Notice
링크 복사링크가 클립보드에 복사되었습니다!
Copyright © 2025 Red Hat
OpenShift documentation is licensed under the Apache License 2.0 (https://www.apache.org/licenses/LICENSE-2.0).
Modified versions must remove all Red Hat trademarks.
Portions adapted from https://github.com/kubernetes-incubator/service-catalog/ with modifications by Red Hat.
Red Hat, Red Hat Enterprise Linux, the Red Hat logo, the Shadowman logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Linux® is the registered trademark of Linus Torvalds in the United States and other countries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
Node.js® is an official trademark of Joyent. Red Hat Software Collections is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation’s permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.
All other trademarks are the property of their respective owners.