생성된 배포 파일 검토
처리 클러스터를 사용하여 워크로드 마이그레이션을 완료한 후에는 마이그레이션 중에 생성된 YAML 파일을 다운로드할 수 있습니다.
마이그레이션 아티팩트라고도 하는 이러한 파일은 마이그레이션된 워크로드 컨테이너를 테스트 또는 프로덕션 클러스터와 같은 다른 클러스터에 배포할 수 있도록 생성되었습니다.
이 주제에서는 생성된 아티팩트 파일을 다운로드하고 다른 클러스터에서 사용할 수 있도록 검토하는 방법을 설명합니다.
시작하기 전에
먼저 마이그레이션 만들기 및 마이그레이션 실행을 마쳐야 합니다.
다운로드를 수행하는 사용자에게 아티팩트 저장소에 대한 읽기 액세스 권한이 있어야 합니다. 자세한 내용은 데이터 저장소 정의를 참조하세요.
생성된 아티팩트 파일 정보
마이그레이션 중에 생성되는 아티팩트 파일에는 다음이 포함됩니다.
deployment_spec.yaml
-- 워크로드를 구성하는 YAML 파일입니다.kubectl apply
에 이 파일을 사용하여 프로덕션 또는 테스트 클러스터와 같은 다른 클러스터에 워크로드를 배포할 수 있습니다.Dockerfile -- 마이그레이션된 VM의 이미지를 빌드하기 위해 사용되는 Dockerfile입니다.
blocklist.yaml
-- 마이그레이션 계획에서 설정에 따라 사용 중지할 컨테이너 서비스 목록입니다. 이 파일을 수정하여 서비스 목록을 제어합니다. 서비스 목록 맞춤설정을 참조하세요.migration.yaml
-- 마이그레이션 계획의 사본입니다.이 파일을 사용하여 마이그레이션 중에 수행된 작업을 확인할 수 있습니다.
logs.yaml
-- 소스 VM에서 검색된 로그 파일 목록입니다. 마이그레이션된 워크로드에서 로그 파일에 기록된 데이터가 Cloud Logging으로 전달됩니다. 이 파일을 수정하여 로그 쓰기를 제어합니다. Cloud Logging에 기록된 로그 데이터 맞춤설정을 참조하세요.
이러한 파일은 아래에 자세히 설명되어 있습니다.
모든 아티팩트 파일 다운로드
migctl
마이그레이션이 완료되고 상태 요청을 수행하면 다음과 같은 메시지가 표시됩니다.
migctl migration status my-migration NAME CURRENT-OPERATION PROGRESS STEP STATUS AGE my-migration GenerateArtifacts [1/1] ExtractImage Completed 14m23s
마이그레이션이 완료되면 migctl migration get-artifacts
로 생성된 모든 아티팩트 파일이 다운로드됩니다.
migctl migration get-artifacts my-migration
CRD
마이그레이션이 완료되면 모든 마이그레이션 아티팩트를 다운로드합니다.
아티팩트를 포함하는 Cloud Storage 버킷을 가져옵니다.
kubectl get migrations.anthos-migrate.cloud.google.com -n v2k-system my-migration -o jsonpath={.status.artifacts.deploymentFiles.bucket}
이 명령어는 버킷 이름을 다음 형식으로 반환합니다.
bucket-migration-artifacts
Cloud Storage 마이그레이션 매니페스트 YAML 파일을 가져옵니다.
kubectl get migrations.anthos-migrate.cloud.google.com -n v2k-system my-migration -o jsonpath={.status.artifacts.deploymentFiles.artifactsManifestFile}
이 명령어는 매니페스트 YAML 파일 이름을 다음 형식으로 반환합니다.
bucket-migration-artifacts/v2k-system-my-migration/ID/manifest.yaml
Google Cloud 콘솔에서 Cloud Storage로 이동하여 매니페스트 파일을 가져옵니다. 아래의 예시 매니페스트 파일에는
artifacts
URL이 포함되어 있습니다.artifacts: - https:/storage.cloud.google.com/bucket-name/v2k-system-my-migration/ID/deployment_spec.yaml - https:/storage.cloud.google.com/bucket-name/v2k-system-my-migration/ID/Dockerfile - https:/storage.cloud.google.com/bucket-name/v2k-system-my-migration/ID/migration.yaml imageUrl: gcr.io/velos-auto-1/matanvm:v1.0.0 name: m1-84xqp namespace: v2k-system uid: daf762-d9-42-bfc-47b71255a version: "1.0"
브라우저에서
artifacts
URL을 열고 아티팩트를 다운로드합니다.
deployment_spec.yaml
이 파일은 테스트 또는 프로덕션 클러스터와 같이 다른 클러스터로 워크로드를 배포하기 위해 사용할 수 있는 YAML 파일입니다. 데이터 마이그레이션을 구성하지 않으면 배포 객체가 생성됩니다. 데이터 마이그레이션이 구성되면 스테이트풀(Stateful) 세트 객체를 생성합니다.
Dockerfile
마이그레이션된 VM의 이미지를 빌드하기 위해 사용되는 Dockerfile입니다.
새 버전의 이미지를 생성하려면 이 파일을 사용합니다. 예를 들어 패키지를 설치하고 이후에 새 이미지를 캡처할 수 있습니다. 이미지를 다시 빌드하는 방식은 Migrate to Containers가 업그레이드되어(버그 수정 등) 새 Migrate to Containers 런타임으로 이미지를 다시 빌드해야 할 경우에도 유용할 수 있습니다. 업그레이드된 런타임은 Container Registry에서 사용할 수 있습니다.
다른 Dockerfile과 마찬가지로 이 파일을 수정해서 이미지를 맞춤설정할 수 있습니다. 자세한 내용은 Dockerfile 작성 권장사항을 참조하세요. 또한 Dockerfile 수정에 대한 자세한 내용은 마이그레이션 후 이미지 업데이트를 참조하세요.
# Please refer to the documentation:
# https://cloud.google.com/migrate/containers/docs/dockerfile-reference
FROM gcr.io/my-project/v2k-run-embedded:v1.12.0
# Image containing data captured from the source VM
FROM gcr.io/my-project/my-vm-instance-1-non-runnable-base:v1.0.0 as source-content
COPY --from=migrate-for-anthos-runtime / /
ADD blocklist.yaml /.m4a/blocklist.yaml
ADD logs.yaml /code/config/logs/logsArtifact.yaml
# If you want to update parts of the image, add your commands here.
# For example:
# RUN apt-get update
# RUN apt-get install -y \
# package1=version \
# package2=version \
# package3=version
# RUN yum update
# RUN wget http://github.com
# Migrate to Containers image includes entrypoint
ENTRYPOINT [ "/.v2k.go" ]
migration.yaml
이 파일은 생성된 마이그레이션의 사본입니다. 이 파일을 사용하여 Migrate to Containers에 사용되는 마이그레이션 세부정보가 마이그레이션 계획에 지정된 것과 일치하는지 확인합니다.
이 파일을 마이그레이션 재실행 용도로 사용해서는 안 됩니다. 마이그레이션을 실행한 후에는 실행한 다음에는 마이그레이션을 삭제하고(migctl migration delete
또는 Google Cloud Console 사용) 마이그레이션 계획으로부터 다시 실행하는 방식으로만 재실행할 수 있습니다.
blocklist.yaml
이 파일에는 마이그레이션 계획의 설정에 따라 사용 중지할 컨테이너 서비스 목록이 나와 있습니다. 이 파일 사용에 대한 자세한 내용은 서비스 목록 맞춤설정을 참조하세요.
다음 단계
- Cloud Logging 로깅 구성 방법 알아보기