5.8. 인클레이브 지원의 이점
인클레이브 지원은 네트워크의 특정 부분에 대한 내부 액세스를 제한합니다. 방화벽 경계를 통해 인바운드 및 아웃바운드 트래픽 액세스를 허용하는 비무장지대(DMZ) 네트워크와 달리, 인클레이브는 방화벽 경계를 넘지 않습니다.
새로운 인클레이브 지원 기능은 최소한 하나의 중간 연결 해제 네트워크 뒤에 보안된 여러 인클레이브에 대한 미러링이 필요한 시나리오를 위한 것입니다.
Enclave 지원에는 다음과 같은 이점이 있습니다.
- 여러 개의 엔클레이브에 대한 콘텐츠를 미러링하고 이를 단일 내부 레지스트리에 중앙화할 수 있습니다. 일부 고객은 미러링된 콘텐츠에 대한 보안 검사를 실행하고 싶어하며, 이 설정을 사용하면 모든 검사를 한 번에 실행할 수 있습니다. 그런 다음 해당 콘텐츠는 다운스트림 엔클레이브에 미러링되기 전에 검토됩니다.
- 각 인클레이브에 대해 인터넷에서 미러링 프로세스를 다시 시작하지 않고도 중앙 집중식 내부 레지스트리에서 인클레이브로 직접 콘텐츠를 미러링할 수 있습니다.
- 네트워크 단계 간 데이터 전송을 최소화하여 블롭이나 이미지가 한 단계에서 다른 단계로 한 번만 전송되도록 할 수 있습니다.
5.8.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레지스트리의 콘텐츠를 인클레이브 환경으로 미러링합니다. - 내용은 인클레이브로 전송하기 위해 디스크 디렉토리에 저장됩니다.
-
인클레이브 환경(인터넷 없음) :
-
사용자는 oc-mirror 플러그인 v2를 실행하여 디스크 디렉토리의 콘텐츠를
enclave-registry.in레지스트리로 로드합니다.
이 이미지는 이러한 환경 전반의 데이터 흐름을 시각적으로 표현하고 인터넷 연결 없이 연결이 끊긴 환경과 고립된 환경을 처리하기 위해 oc-mirror를 사용하는 것을 강조합니다.
5.8.2. 인클레이브로의 미러링 링크 복사링크가 클립보드에 복사되었습니다!
인클레이브로 미러링할 경우 먼저 하나 이상의 인클레이브에서 필요한 이미지를 엔터프라이즈 중앙 레지스트리로 전송해야 합니다.
중앙 레지스트리는 보안 네트워크, 구체적으로는 연결이 끊긴 환경에 위치하며, 공개 인터넷에 직접 연결되어 있지 않습니다. 하지만 사용자는 공개 인터넷에 액세스할 수 있는 환경에서 oc mirror를 실행해야 합니다.
프로세스
연결이 끊긴 환경에서 oc-mirror 플러그인 v2를 실행하기 전에
registries.conf파일을 만드세요. 이 사양에서는 파일의 TOML 형식을 다음과 같이 설명합니다.참고$HOME/.config/containers/registries.conf또는/etc/containers/registries.conf에 파일을 저장하는 것이 좋습니다.예제
registries.conf[[registry]] location="registry.redhat.io" [[registry.mirror]] location="<enterprise-registry.in>" [[registry]] location="quay.io" [[registry.mirror]] location="<enterprise-registry.in>"미러 아카이브를 생성합니다.
<file_path>/enterprise-content아래의 디스크에 있는 아카이브에 모든 OpenShift Container Platform 콘텐츠를 수집하려면 다음 명령을 실행하세요.$ oc mirror --v2 -c isc.yaml file://<file_path>/enterprise-contentisc.yaml의 예
apiVersion: mirror.openshift.io/v2alpha1 kind: ImageSetConfiguration mirror: platform: architectures: - "amd64" channels: - name: stable-4.15 minVersion: 4.15.0 maxVersion: 4.15.3아카이브가 생성된 후 연결이 끊긴 환경으로 전송됩니다. 전송 메커니즘은 oc-mirror 플러그인 v2의 일부가 아닙니다. 기업 네트워크 관리자가 전송 전략을 결정합니다.
어떤 경우에는 디스크를 한 위치에서 물리적으로 분리하고 연결이 끊긴 환경의 다른 컴퓨터에 연결하는 방식으로 전송이 수동으로 수행됩니다. 다른 경우에는 SFTP(Secure File Transfer Protocol)나 다른 프로토콜이 사용됩니다.
아카이브 전송이 완료되면 oc-mirror 플러그인 v2를 다시 실행하여 관련 아카이브 내용을 레지스트리(예시에서는
entrerpise_registry.in)에 미러링할 수 있습니다. 이는 다음 예에서 확인할 수 있습니다.$ oc mirror --v2 -c isc.yaml --from file://<disconnected_environment_file_path>/enterprise-content docker://<enterprise_registry.in>/다음과 같습니다.
-
--from은 아카이브가 들어 있는 폴더를 가리킵니다.file://로 시작합니다. -
docker://는 미러링의 목적지이며 마지막 인수입니다. 도커 레지스트리이기 때문이죠. -
-c(--config)는 필수 인수입니다. 이를 통해 oc-mirror 플러그인 v2가 아카이브의 하위 부분만 레지스트리에 미러링할 수 있습니다. 하나의 아카이브에는 여러 개의 OpenShift Container Platform 릴리스가 포함될 수 있지만, 연결이 끊긴 환경이나 인클레이브는 몇 개만 미러링할 수 있습니다.
-
인클레이브에 미러링할 콘텐츠를 설명하는
imageSetConfigYAML 파일을 준비합니다.isc-enclave.yaml 예시
apiVersion: mirror.openshift.io/v2alpha1 kind: ImageSetConfiguration mirror: platform: architectures: - "amd64" channels: - name: stable-4.15 minVersion: 4.15.2 maxVersion: 4.15.2연결이 끊긴 레지스트리에 액세스할 수 있는 컴퓨터에서 oc-mirror 플러그인 v2를 실행해야 합니다. 이전 예에서 연결이 끊긴 환경인
enterprise-registry.in에 액세스할 수 있습니다.그래프 URL 업데이트
graph:true를사용하는 경우, oc-mirror 플러그인 v2는cincinnatiAPI 엔드포인트에 도달하려고 시도합니다. 이 환경은 연결이 끊어졌으므로 OpenShift 업데이트 서비스(OSUS)의 URL을 참조하도록 환경 변수UPDATE_URL_OVERRIDE를내보내야 합니다.$ export UPDATE_URL_OVERRIDE=https://<osus.enterprise.in>/graphOpenShift 클러스터에서 OSUS를 설정하는 방법에 대한 자세한 내용은 "OpenShift 업데이트 서비스를 사용하여 연결이 끊긴 환경에서 클러스터 업데이트"를 참조하세요.
참고OpenShift Container Platform Extended Update Support(EUS) 버전 간에 업데이트하는 경우 현재 버전과 대상 버전 사이의 중간 마이너 버전에 대한 이미지도 포함해야 합니다. oc-mirror 플러그인 v2는 항상 이 요구 사항을 자동으로 감지하지 못할 수 있으므로 Red Hat OpenShift Container Platform 업데이트 그래프 페이지에서 필요한 중간 버전을 확인하세요.
업데이트 그래프 페이지를 사용하여 애플리케이션에서 제안한 중간 마이너 버전을 찾은 다음, oc-mirror 플러그인 v2를 사용할 때 이러한 버전을
ImageSetConfiguration파일에 포함하세요.엔클레이브에 대한 엔터프라이즈 레지스트리에서 미러 아카이브를 생성합니다.
enclave1에 대한 아카이브를 준비하려면 사용자는 해당 enclave에 특정한imageSetConfiguration을 사용하여 엔터프라이즈 연결 해제 환경에서 oc-mirror 플러그인 v2를 실행합니다. 이렇게 하면 해당 앙클레이브에 필요한 이미지만 미러링됩니다.$ oc mirror --v2 -c isc-enclave.yaml file:///disk-enc1/이 작업은 모든 OpenShift Container Platform 콘텐츠를 아카이브로 수집하고 디스크에 아카이브를 생성합니다.
-
아카이브가 생성된 후
enclave1네트워크로 전송됩니다. 전송 메커니즘은 oc-mirror 플러그인 v2의 책임이 아닙니다. 인클레이브 레지스트리에 대한 미러 콘텐츠
아카이브 전송이 완료된 후 사용자는 oc-mirror 플러그인 v2를 다시 실행하여 관련 아카이브 내용을 레지스트리에 미러링할 수 있습니다.
$ oc mirror --v2 -c isc-enclave.yaml --from file://local-disk docker://registry.enc1.in이제
enclave1에 있는 OpenShift Container Platform 클러스터의 관리자는 해당 클러스터를 설치하거나 업그레이드할 준비가 되었습니다.