3.6. oc-mirror 플러그인 v1에서 v2로 마이그레이션
oc-mirror v2 플러그인으로 인해 이미지 미러링 워크플로에 대한 주요 변경 사항이 추가되었습니다. 이 가이드에서는 oc-mirror 플러그인 v2과의 호환성을 보장하면서 마이그레이션에 대한 단계별 지침을 제공합니다.
API 버전을 수정하고 더 이상 사용되지 않는 필드를 제거하여 구성을 수동으로 업데이트해야 합니다. 자세한 내용은 "oc-mirror 플러그인 v1에서 v2로 변경"을 참조하십시오.
3.6.1. oc-mirror 플러그인 v1에서 v2로 변경 링크 복사링크가 클립보드에 복사되었습니다!
oc-mirror 플러그인 v1에서 v2로 마이그레이션하기 전에 oc-mirror 플러그인 v1과 v2 간의 다음 차이점을 참조하십시오.
-
명시적 버전 선택:
oc-mirror
를 사용할 때 사용자가--v2
를 명시적으로 지정해야 합니다. 버전을 지정하지 않으면 v1이 기본적으로 실행됩니다. 이 동작은 향후 릴리스에서 변경될 것으로 예상됩니다. 여기서--v2
는 기본값입니다. 업데이트된 명령: oc-mirror 플러그인 v2의 새 워크플로우에 맞게 워크플로우 미러링 명령이 변경되었습니다.
mirror-to-disk의 경우 다음 명령을 실행합니다.
oc-mirror --config isc.yaml file://<directory_name> --v2
$ oc-mirror --config isc.yaml file://<directory_name> --v2
Copy to Clipboard Copied! Toggle word wrap Toggle overflow disk-to-mirror의 경우 다음 명령을 실행합니다.
oc-mirror --config isc.yaml --from file://<directory_name> docker://<remote_registry> --v2
$ oc-mirror --config isc.yaml --from file://<directory_name> docker://<remote_registry> --v2
Copy to Clipboard Copied! Toggle word wrap Toggle overflow mirror-to-mirror의 경우 다음 명령을 실행합니다.
oc-mirror --config isc.yaml --workspace file://<directory_name> docker://<remote_registry> --v2
$ oc-mirror --config isc.yaml --workspace file://<directory_name> docker://<remote_registry> --v2
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 참고mirror-to-mirror 작업에
--workspace
가 필요합니다.
-
API 버전 업데이트:
ImageSetConfiguration
API 버전이v1alpha2
(v1)에서v2alpha1
(v2)으로 변경됩니다. 마이그레이션 전에 구성 파일을 수동으로 업데이트해야 합니다. 구성 변경:
-
storageConfig
는 oc-mirror 플러그인 v2에서 제거해야 합니다. - 증분 미러링은 이제 작업 디렉터리 또는 로컬 캐시를 통해 자동으로 처리됩니다.
-
결과 디렉터리: 연결이 끊긴 클러스터에 적용할 모든 사용자 정의 리소스는 마이그레이션 후 <
workspace_path>/working-dir/cluster-resources
디렉터리에 생성됩니다.- oc-mirror 플러그인 v2의 출력은 oc-mirror 플러그인 v1과 동일한 위치에 저장되지 않습니다.
다음 리소스의 작업 디렉터리에서
cluster-resources
폴더를 확인해야 합니다.-
ImageDigestMirrorSet
(IDMS) -
ImageTagMirrorSet
(ITMS) -
CatalogSource
-
ClusterCatalog
-
UpdateService
-
Workspace 및 디렉터리 이름 지정: 새 oc-mirror v2 규칙을 따르어 버전 간에 전환할 때 잠재적인 데이터 불일치를 방지합니다.
-
oc-mirror 플러그인 v1
oc-mirror-workspace
디렉터리가 더 이상 필요하지 않습니다. - 충돌을 방지하려면 oc-mirror 플러그인 v2에 새 디렉터리를 사용합니다.
-
oc-mirror 플러그인 v1
ICSP(
ImageContentSourcePolicy
) 리소스를 IDMS/ITMS로 교체:중요모든 ICSP(
ImageContentSourcePolicy
) 리소스를 삭제하면 oc-mirror와 관련이 없는 구성이 제거될 수 있습니다.의도하지 않은 삭제를 방지하려면 제거하기 전에 oc-mirror에서 생성한 ICSP 리소스를 식별합니다. 확실하지 않은 경우 클러스터 관리자에게 확인하십시오. 자세한 내용은 "oc-mirror 플러그인 v2를 사용하여 연결이 끊긴 설치의 이미지 미러링"을 참조하십시오.
-
oc-mirror 플러그인 v2에서 ICSP 리소스는
ImageDigestMirrorSet
(IDMS) 및ImageTagMirrorSet
(ITMS) 리소스로 교체됩니다.
-
oc-mirror 플러그인 v2에서 ICSP 리소스는
3.6.2. oc-mirror 플러그인 v2로 마이그레이션 링크 복사링크가 클립보드에 복사되었습니다!
oc-mirror 플러그인 v1에서 v2로 마이그레이션하려면 ImageSetConfiguration
파일을 수동으로 업데이트하고 미러링 명령을 수정하고 v1 아티팩트를 정리해야 합니다. 다음 단계에 따라 마이그레이션을 완료합니다.
프로세스
API 버전을 수정하고
ImageSetConfiguration
에서 더 이상 사용되지 않는 필드를 제거합니다.oc-mirror 플러그인 v1 구성이 포함된
ImageSetConfiguration
파일의 예Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc-mirror 플러그인 v2 구성이 포함된
ImageSetConfiguration
파일의 예Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 IDMS, ITMS,
CatalogSource
,ClusterCatalog
리소스에 대한 작업 디렉터리 내부의cluster-resources
디렉터리를 확인합니다.ls <v2_workspace>/working-dir/cluster-resources/
$ ls <v2_workspace>/working-dir/cluster-resources/
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 마이그레이션이 완료되면 미러링된 이미지 및 카탈로그를 사용할 수 있는지 확인합니다.
- 미러링 중에 오류 또는 경고가 발생하지 않았는지 확인합니다.
-
오류 파일이 생성되지 않았는지 확인합니다(
working-dir/logs/mirroring_errors_YYYYMMdd_HHmmss.txt
).
다음 명령을 사용하여 미러링된 이미지 및 카탈로그를 사용할 수 있는지 확인합니다.
oc get catalogsource -n openshift-marketplace
$ oc get catalogsource -n openshift-marketplace
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get imagedigestmirrorset,imagetagmirrorset -n openshift-config
$ oc get imagedigestmirrorset,imagetagmirrorset -n openshift-config
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 자세한 내용은 "oc-mirror 플러그인 v2를 사용하여 연결이 끊긴 설치의 이미지 미러링"을 참조하십시오.
선택 사항: oc-mirror 플러그인 v1을 사용하여 미러링된 이미지를 제거합니다.
- oc-mirror 플러그인 v1을 사용하여 이미지를 미러링합니다.
ImageSetConfiguration
파일에서v1alpha2
(v1)에서v2alpha1
(v2)으로 API 버전을 업데이트한 다음 다음 명령을 실행합니다.oc-mirror -c isc.yaml file://some-dir --v2
$ oc-mirror -c isc.yaml file://some-dir --v2
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 참고StorageConfig
는ImageSetConfiguration
및DeleteImageSetConfiguration
파일의 유효한 필드가 아닙니다. oc-mirror 플러그인 v2로 업데이트할 때 이 필드를 제거합니다.다음 명령을 실행하여 삭제 매니페스트를 생성하고 v1 이미지를 삭제합니다.
oc-mirror delete --config=delete-isc.yaml --generate --delete-v1-images --workspace file://some-dir docker://registry.example:5000 --v2
$ oc-mirror delete --config=delete-isc.yaml --generate --delete-v1-images --workspace file://some-dir docker://registry.example:5000 --v2
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 중요oc-mirror 플러그인 v2는 oc-mirror 플러그인 v1과 달리 대상 레지스트리를 자동으로 정리하지 않습니다. 더 이상 필요하지 않은 이미지를 정리하려면
--delete-v1-images
명령 플래그와 함께 v2의 삭제 기능을 사용합니다.oc-mirror 플러그인 v1로 미러링된 모든 이미지가 제거되면 더 이상 이 플래그를 사용할 필요가 없습니다. oc-mirror 플러그인 v2로 미러링된 이미지를 삭제해야 하는 경우
--delete-v1-images
를 설정하지 마십시오.이미지 삭제에 대한 자세한 내용은 "연결이 끊긴 환경에서 이미지 삭제"를 참조하십시오.
다음 명령을 실행하여 생성된 매니페스트를 기반으로 이미지를 삭제합니다.
oc-mirror delete --delete-yaml-file some-dir/working-dir/delete/delete-images.yaml docker://registry.example:5000 --v2
$ oc-mirror delete --delete-yaml-file some-dir/working-dir/delete/delete-images.yaml docker://registry.example:5000 --v2
Copy to Clipboard Copied! Toggle word wrap Toggle overflow