3.7. 다중 아키텍처 컴퓨팅 시스템을 사용하여 클러스터로 마이그레이션
다중 아키텍처, 매니페스트 목록 페이로드로 업데이트하여 단일 아키텍처 컴퓨팅 머신이 있는 클러스터로 현재 클러스터를 마이그레이션할 수 있습니다. 이를 통해 혼합 아키텍처 컴퓨팅 노드를 클러스터에 추가할 수 있습니다.
다중 아키텍처 컴퓨팅 머신 구성에 대한 자세한 내용은 "OpenShift Container Platform 클러스터에서 다중 아키텍처 컴퓨팅 머신 구성"을 참조하십시오.
단일 아키텍처 클러스터를 다중 아키텍처 컴퓨팅 머신이 있는 클러스터로 마이그레이션하기 전에 Multiarch Tuning Operator를 설치하고 ClusterPodPlacementConfig
사용자 정의 리소스를 배포하는 것이 좋습니다. 자세한 내용은 Multiarch Tuning Operator를 사용하여 다중 아키텍처 클러스터에서 워크로드 관리를 참조하십시오.
다중 아키텍처 페이로드에서 단일 아키텍처 페이로드로의 마이그레이션은 지원되지 않습니다. 다중 아키텍처 페이로드를 사용하여 클러스터가 전환되면 더 이상 단일 아키텍처 업데이트 페이로드를 허용할 수 없습니다.
3.7.1. CLI를 사용하여 다중 아키텍처 컴퓨팅 머신이 있는 클러스터로 마이그레이션 링크 복사링크가 클립보드에 복사되었습니다!
사전 요구 사항
-
cluster-admin
역할의 사용자로 클러스터에 액세스할 수 있어야 합니다. OpenShift Container Platform 버전은 4.13.0 이상의 최신 버전입니다.
클러스터 버전을 업데이트하는 방법에 대한 자세한 내용은 웹 콘솔을 사용하여 클러스터 업데이트 또는 CLI를 사용하여 클러스터 업데이트를 참조하십시오.
-
현재 클러스터의 버전과 일치하는 OpenShift CLI(
oc
)를 설치했습니다. -
oc
클라이언트가 최소 정점 4.13.0으로 업데이트되었습니다. OpenShift Container Platform 클러스터는 AWS, Azure, GCP, 베어 메탈 또는 IBM P/Z 플랫폼에 설치됩니다.
클러스터 설치에 지원되는 플랫폼을 선택하는 방법에 대한 자세한 내용은 클러스터 설치 유형 선택을 참조하십시오.
프로세스
다음 명령을 실행하여 CVO(Cluster Version Operator)에서
RetrievedUpdates
조건이True
인지 확인합니다.oc get clusterversion/version -o=jsonpath="{.status.conditions[?(.type=='RetrievedUpdates')].status}"
$ oc get clusterversion/version -o=jsonpath="{.status.conditions[?(.type=='RetrievedUpdates')].status}"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow RetrievedUpates
조건이False
인 경우 다음 명령을 사용하여 실패에 대한 추가 정보를 찾을 수 있습니다.oc adm upgrade
$ oc adm upgrade
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 클러스터 버전 조건 유형에 대한 자세한 내용은 클러스터 버전 조건 유형 이해 를 참조하십시오.
RetrievedUpdates
조건이False
인 경우 다음 명령을 사용하여 채널을stable-<4.y
> 또는fast-<4.y
>로 변경합니다.oc adm upgrade channel <channel>
$ oc adm upgrade channel <channel>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 채널을 설정한 후
RetrievedUpdates
가True
인지 확인합니다.채널에 대한 자세한 내용은 업데이트 채널 및 릴리스 이해 를 참조하십시오.
다음 명령을 사용하여 다중 아키텍처 페이로드로 마이그레이션합니다.
oc adm upgrade --to-multi-arch
$ oc adm upgrade --to-multi-arch
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
검증
다음 명령을 실행하여 마이그레이션을 모니터링할 수 있습니다.
oc adm upgrade
$ oc adm upgrade
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
working towards ${VERSION}: 106 of 841 done (12% complete), waiting on machine-config
working towards ${VERSION}: 106 of 841 done (12% complete), waiting on machine-config
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 중요클러스터가 새 상태가 되면 시스템 시작이 실패할 수 있습니다. 머신을 시작하지 못하는 경우 이를 확인하고 복구하려면 머신 상태 점검을 배포하는 것이 좋습니다. 머신 상태 점검 및 배포 방법에 대한 자세한 내용은 머신 상태 점검 정보를 참조하십시오.
선택 사항: 업데이트 상태에 대한 자세한 정보를 검색하려면 다음 명령을 실행하여 마이그레이션을 모니터링합니다.
oc adm upgrade status
$ oc adm upgrade status
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc adm upgrade status
명령을 사용하는 방법에 대한 자세한 내용은 oc adm upgrade status (기술 프리뷰)를 사용하여 클러스터 업데이트 상태 수집을 참조하십시오.
클러스터에 다른 아키텍처가 있는 컴퓨팅 머신 세트를 추가하려면 마이그레이션이 완료되어야 하며 모든 클러스터 Operator가 안정적이어야 합니다.
3.7.2. Amazon Web Services에서 x86 컨트롤 플레인을 arm64 아키텍처로 마이그레이션 링크 복사링크가 클립보드에 복사되었습니다!
클러스터의 컨트롤 플레인을 AWS(Amazon Web Services)의 x86
에서 arm64
아키텍처로 마이그레이션할 수 있습니다.
사전 요구 사항
-
OpenShift CLI(
oc
)가 설치되어 있습니다. -
cluster-admin
권한이 있는 사용자로oc
에 로그인했습니다.
프로세스
다음 명령을 실행하여 컨트롤 플레인 노드의 아키텍처를 확인합니다.
oc get nodes -o wide
$ oc get nodes -o wide
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력의
KERNEL-VERSION
필드에는 노드의 아키텍처가 표시됩니다.다음 명령을 실행하여 클러스터가 멀티 페이로드를 사용하는지 확인합니다.
oc adm release info -o jsonpath="{ .metadata.metadata}"
$ oc adm release info -o jsonpath="{ .metadata.metadata}"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 출력이 표시되면 클러스터가 다중 아키텍처와 호환됩니다.
{ "release.openshift.io/architecture": "multi", "url": "https://access.redhat.com/errata/<errata_version>" }
{ "release.openshift.io/architecture": "multi", "url": "https://access.redhat.com/errata/<errata_version>" }
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 클러스터에서 다중 페이로드를 사용하지 않는 경우 클러스터를 다중 아키텍처 클러스터로 마이그레이션합니다. 자세한 내용은 "다중 아키텍처 컴퓨팅 머신이 있는 클러스터로 마이그레이션"을 참조하십시오.
다음 명령을 실행하여 단일 아키텍처에서 다중 아키텍처로 이미지 스트림을 업데이트합니다.
oc import-image <multiarch_image_stream_tag> --from=<registry>/<project_name>/<image_name> \ --import-mode='PreserveOriginal'
$ oc import-image <multiarch_image_stream_tag> --from=<registry>/<project_name>/<image_name> \ --import-mode='PreserveOriginal'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 컨트롤 플레인 머신 세트를 구성하기 위해
arm64
호환 Amazon Machine Image (AMI)를 가져옵니다.oc get configmap/coreos-bootimages -n openshift-machine-config-operator -o jsonpath='{.data.stream}' | jq -r '.architectures.aarch64.images.aws.regions."<aws_region>".image'
$ oc get configmap/coreos-bootimages -n openshift-machine-config-operator -o jsonpath='{.data.stream}' | jq -r '.architectures.aarch64.images.aws.regions."<aws_region>".image'
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- &
lt;aws_region&
gt;을 현재 클러스터가 설치된 AWS 리전으로 바꿉니다. 다음 명령을 실행하여 설치된 클러스터의 AWS 리전을 가져올 수 있습니다.
oc get infrastructure cluster -o jsonpath='{.status.platformStatus.aws.region}'
$ oc get infrastructure cluster -o jsonpath='{.status.platformStatus.aws.region}'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
ami-xxxxxxx
ami-xxxxxxx
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여
arm64
아키텍처를 지원하도록 컨트롤 플레인 머신 세트를 업데이트합니다.oc edit controlplanemachineset.machine.openshift.io cluster -n openshift-machine-api
$ oc edit controlplanemachineset.machine.openshift.io cluster -n openshift-machine-api
Copy to Clipboard Copied! Toggle word wrap Toggle overflow instanceType
필드를arm64
아키텍처를 지원하는 유형으로 업데이트하고ami.id
필드를arm64
아키텍처와 호환되는 AMI로 설정합니다. 지원되는 인스턴스 유형에 대한 자세한 내용은 "64비트 ARM 인프라에서 AWS 테스트 인스턴스 유형"을 참조하십시오.AWS의 컨트롤 플레인 머신 세트 구성에 대한 자세한 내용은 "Amazon Web Services의 컨트롤 플레인 구성 옵션"을 참조하십시오.
검증
컨트롤 플레인 노드가 이제
arm64
아키텍처에서 실행되고 있는지 확인합니다.oc get nodes -o wide
$ oc get nodes -o wide
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
3.7.3. Google Cloud의 아키텍처 간에 컨트롤 플레인 또는 인프라 머신 세트 마이그레이션 링크 복사링크가 클립보드에 복사되었습니다!
Google Cloud 클러스터의 컨트롤 플레인 또는 인프라 머신 세트를 x86
아키텍처와 arm64
아키텍처 간에 마이그레이션할 수 있습니다.
사전 요구 사항
-
OpenShift CLI(
oc
)가 설치되어 있습니다. -
cluster-admin
권한이 있는 사용자로oc
에 로그인했습니다.
프로세스
다음 명령을 실행하여 컨트롤 플레인 또는 인프라 노드의 아키텍처를 확인합니다.
oc get nodes -o wide
$ oc get nodes -o wide
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
NAME STATUS ROLES AGE VERSION INTERNAL-IP EXTERNAL-IP OS-IMAGE KERNEL-VERSION CONTAINER-RUNTIME worker-001.example.com Ready infra 100d v1.30.7 10.x.x.x <none> Red Hat Enterprise Linux CoreOS 4xx.xx.xxxxx-0 5.x.x-xxx.x.x.el9_xx.x86_64 cri-o://1.30.x master-001.example.com Ready control-plane,master 120d v1.30.7 10.x.x.x <none> Red Hat Enterprise Linux CoreOS 4xx.xx.xxxxx-0 5.x.x-xxx.x.x.el9_xx.x86_64 cri-o://1.30.x
NAME STATUS ROLES AGE VERSION INTERNAL-IP EXTERNAL-IP OS-IMAGE KERNEL-VERSION CONTAINER-RUNTIME worker-001.example.com Ready infra 100d v1.30.7 10.x.x.x <none> Red Hat Enterprise Linux CoreOS 4xx.xx.xxxxx-0 5.x.x-xxx.x.x.el9_xx.x86_64 cri-o://1.30.x master-001.example.com Ready control-plane,master 120d v1.30.7 10.x.x.x <none> Red Hat Enterprise Linux CoreOS 4xx.xx.xxxxx-0 5.x.x-xxx.x.x.el9_xx.x86_64 cri-o://1.30.x
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력의
KERNEL-VERSION
필드에는 노드의 아키텍처가 표시됩니다.다음 명령을 실행하여 클러스터가 멀티 페이로드를 사용하는지 확인합니다.
oc adm release info -o jsonpath="{ .metadata.metadata}"
$ oc adm release info -o jsonpath="{ .metadata.metadata}"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 출력이 표시되면 클러스터가 다중 아키텍처와 호환됩니다.
{ "release.openshift.io/architecture": "multi", "url": "https://access.redhat.com/errata/<errata_version>" }
{ "release.openshift.io/architecture": "multi", "url": "https://access.redhat.com/errata/<errata_version>" }
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 클러스터에서 다중 페이로드를 사용하지 않는 경우 클러스터를 다중 아키텍처 클러스터로 마이그레이션합니다. 자세한 내용은 "다중 아키텍처 컴퓨팅 머신이 있는 클러스터로 마이그레이션"을 참조하십시오.
사용자 지정 이미지 스트림을 사용하는 경우 각 이미지 스트림에 대해 다음 명령을 실행하여 단일 아키텍처에서 다중 아키텍처로 업데이트합니다.
oc import-image <multiarch_image_stream_tag> --from=<registry>/<project_name>/<image_name> \ --import-mode='PreserveOriginal'
$ oc import-image <multiarch_image_stream_tag> --from=<registry>/<project_name>/<image_name> \ --import-mode='PreserveOriginal'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Compute 엔진의 범용 시스템 제품군 (Google 문서)에서 대상 아키텍처와 일치하는 인스턴스 유형을 선택합니다. 사용 가능한 리전 및 영역 테이블(Google 문서)을 확인하여 해당 영역에서 인스턴스 유형이 지원되는지 확인합니다.
- Compute 엔진(Google 문서)용 범용 머신 제품군의 "지원된 디스크 유형" 섹션에서 선택한 인스턴스 유형에 대해 지원되는 디스크 유형을 선택합니다.
다음 명령을 실행하여 머신 세트가 마이그레이션 후 사용하는 Google Cloud 이미지를 확인합니다.
oc get configmap/coreos-bootimages \ -n openshift-machine-config-operator \ -o jsonpath='{.data.stream}' | jq \ -r '.architectures.aarch64.images.gcp'
$ oc get configmap/coreos-bootimages \ -n openshift-machine-config-operator \ -o jsonpath='{.data.stream}' | jq \ -r '.architectures.aarch64.images.gcp'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
"gcp": { "release": "415.92.202309142014-0", "project": "rhcos-cloud", "name": "rhcos-415-92-202309142014-0-gcp-aarch64" }
"gcp": { "release": "415.92.202309142014-0", "project": "rhcos-cloud", "name": "rhcos-415-92-202309142014-0-gcp-aarch64" }
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력의
project
및name
매개변수를 사용하여projects/<project>/global/images/<name> 형식으로
.이미지
매개변수를 만듭니다컨트롤 플레인을 다른 아키텍처로 마이그레이션하려면 다음 명령을 실행합니다.
oc edit controlplanemachineset.machine.openshift.io cluster -n openshift-machine-api
$ oc edit controlplanemachineset.machine.openshift.io cluster -n openshift-machine-api
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
disks.type
매개변수를 선택한 디스크 유형으로 바꿉니다. -
disks.image
매개변수를 이전에 설정한image
매개변수로 바꿉니다. -
machineType
매개변수를 선택한 인스턴스 유형으로 바꿉니다.
-
인프라 머신 세트를 다른 아키텍처로 마이그레이션하려면 인프라 머신 세트의 ID를 사용하여 다음 명령을 실행합니다.
oc edit machineset <infra-machine-set_id> -n openshift-machine-api
$ oc edit machineset <infra-machine-set_id> -n openshift-machine-api
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
disks.type
매개변수를 선택한 디스크 유형으로 바꿉니다. -
disks.image
매개변수를 이전에 설정한image
매개변수로 바꿉니다. -
machineType
매개변수를 선택한 인스턴스 유형으로 바꿉니다.
-