라이선스 관리

이 문서에서는 Compute Engine 인스턴스와 연결된 라이선스를 관리하는 방법을 설명합니다. 여기에는 라이선스 업데이트 기록을 추가, 삭제, 교체, 확인하는 방법이 포함됩니다. Compute Engine의 라이선스에 대한 자세한 내용은 라이선스 정보를 참고하세요.

라이선스 관리 제한사항:

  • AppendableToDisktrue인 경우에만 디스크에 라이선스를 추가할 수 있습니다.
  • RemovableFromDisktrue인 경우에만 삭제할 수 있습니다 (대체 없음).
  • AllowedReplacementLicenses에 나열된 대체 라이선스 중 하나로만 라이선스를 바꿀 수 있습니다.

Ubuntu LTS의 경우 확장 보안 유지보수 (ESM)를 사용 설정하기 위해 라이선스를 Ubuntu Pro로 업그레이드하려면 Ubuntu에서 Ubuntu Pro로 업그레이드를 참고하세요.

연장 지원을 포함하도록 주문형 RHEL 라이선스를 업데이트하려면 라이선스에 RHEL 연장 수명 주기 지원 (ELS) 부가기능 추가를 참고하세요.

시작하기 전에

  • 아직 인증을 설정하지 않았다면 설정합니다. 인증은 Trusted Cloud by S3NS 서비스 및 API에 액세스하기 위해 ID를 확인하는 프로세스입니다. 로컬 개발 환경에서 코드 또는 샘플을 실행하려면 다음 옵션 중 하나를 선택하여 Compute Engine에 인증하면 됩니다.

    Select the tab for how you plan to use the samples on this page:

    Console

    When you use the Trusted Cloud console to access Trusted Cloud by S3NS services and APIs, you don't need to set up authentication.

    gcloud

    1. Google Cloud CLI를 설치한 후 제휴 ID로 gcloud CLI에 로그인합니다. 로그인한 후 다음 명령어를 실행하여 Google Cloud CLI를 초기화합니다.

      gcloud init
    2. Set a default region and zone.

    REST

    로컬 개발 환경에서 이 페이지의 REST API 샘플을 사용하려면 gcloud CLI에 제공한 사용자 인증 정보를 사용합니다.

      Google Cloud CLI를 설치한 후 제휴 ID로 gcloud CLI에 로그인합니다. 로그인한 후 다음 명령어를 실행하여 Google Cloud CLI를 초기화합니다.

      gcloud init

    자세한 내용은 Trusted Cloud 인증 문서의 REST 사용을 위한 인증을 참조하세요.

디스크 라이선스 업데이트 준비

디스크가 실행 중인 인스턴스에 연결되어 있는 동안 디스크의 라이선스를 업데이트하려면 먼저 인스턴스를 중지하거나 디스크를 분리하세요.

  • 인스턴스를 중지합니다. 디스크의 라이선스를 업데이트하기 전에 인스턴스를 일시적으로 종료합니다.
  • 디스크를 분리합니다. 이렇게 하면 디스크의 라이선스를 업데이트하기 전에 인스턴스에서 디스크가 분리됩니다.

VM과 연결된 라이선스 보기

VM과 연결된 라이선스를 보려면 Trusted Cloud 콘솔, gcloud CLI 또는 Compute Engine API를 사용합니다.

콘솔

  1. Trusted Cloud 콘솔에서 VM 인스턴스 페이지로 이동합니다.

    VM 인스턴스로 이동

  2. 라이선스를 확인할 VM의 이름을 클릭합니다. 인스턴스 세부정보 페이지가 열립니다.

  3. 인스턴스 세부정보 페이지 하단에서 동등한 코드를 클릭합니다.

  4. 부팅 디스크의 licenses 필드를 봅니다.

gcloud

  1. 다음 gcloud compute instances describe 명령어를 실행합니다.

    gcloud compute instances describe VM_NAME
    

    VM_NAME을 VM 이름으로 바꿉니다.

  2. 출력의 disks 섹션을 봅니다. licenses 필드에는 부팅 디스크와 연결된 라이선스가 표시됩니다.

REST

instances.get v1 메서드를 호출합니다.

GET https://compute.googleapis.com/compute/v1/projects/PROJECT/zones/ZONE/instancesVM_NAME

다음을 바꿉니다.

  • PROJECT: 프로젝트 이름입니다.
  • ZONE: VM이 포함된 영역입니다.
  • VM_NAME: VM의 이름

Compute Engine API는 licenses 필드의 disks 섹션에서 부팅 디스크와 연결된 라이선스를 반환합니다.

이미지 가져오기 중에 라이선스 추가

이미지 가져오기 프로세스 중에 라이선스를 추가하려면 다음 gcloud compute images import 명령어를 사용합니다.

gcloud compute images import IMAGE_NAME \
  --source-file=SOURCE_FILE
  --os=OS

다음을 바꿉니다.

  • IMAGE_NAME: 만들 이미지의 이름입니다.
  • SOURCE_FILE: 가져올 가상 디스크의 로컬 파일이나 Cloud Storage URI입니다.
  • OS: 가져올 디스크 이미지의 OS입니다. OS의 라이선스는 이 플래그 값에서 추론됩니다. 가져올 때 라이선스 정보를 제공하는 명시적 플래그가 없습니다. 지원 값 목록은 --os 플래그를 참조하세요.

이미지 가져오기에 대한 자세한 내용은 가상 디스크 가져오기를 참고하세요.

이미지를 생성할 때 라이선스 추가

이미지를 만들 때 라이선스를 추가하려면 다음 gcloud compute images create 명령어를 사용합니다.

gcloud compute images create IMAGE_NAME \
  --source-image=SOURCE_IMAGE \
  --licenses=LICENSES

다음을 바꿉니다.

  • IMAGE_NAME: 만들 이미지의 이름입니다.
  • SOURCE_IMAGE: 새 이미지를 만들 이미지의 이름입니다.
  • LICENSES: 쉼표로 구분된 라이선스 문자열 목록입니다. 예를 들면 "license1", "license2"입니다.

이미지 만들기에 대한 자세한 내용은 커스텀 이미지 만들기, 삭제, 지원 중단Windows 이미지 만들기를 참고하세요.

이미지 만들기에 대한 자세한 내용은 커스텀 이미지 만들기, 삭제, 지원 중단Windows 이미지 만들기를 참고하세요.

디스크에 라이선스 추가

VM과 연결된 라이선스를 추가하려면 gcloud CLI 또는 Compute Engine API를 사용합니다.

gcloud

라이선스 참조 또는 코드를 사용하여 디스크에 라이선스를 추가하려면 다음 gcloud compute disks update 명령어를 사용합니다.

gcloud compute disks update DISK_NAME \
--append-licenses=LICENSES

다음을 바꿉니다.

  • DISK_NAME: 추가할 디스크의 이름입니다.
  • LICENSES: 쉼표로 구분된 라이선스 참조 목록입니다(예: "projects/rhel-cloud/global/licenses/rhel-9-server", "projects/rhel-cloud/global/licenses/rhel-8-server").

REST

라이선스 참조 또는 코드를 사용하여 라이선스를 디스크에 추가하려면 다음 disks.update v1 메서드를 호출합니다.

PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT/zones/ZONE/disks/DISK_NAME?paths=licenses --data '{"name":"DISK_NAME", "licenses":["https://www.googleapis.com/compute/v1/LICENSES"]}'

다음을 바꿉니다.

  • PROJECT: 프로젝트 이름입니다.
  • ZONE: VM이 포함된 영역입니다.
  • DISK_NAME: 디스크 이름
  • LICENSES: 쉼표로 구분된 라이선스 참조 목록입니다(예: "projects/rhel-cloud/global/licenses/rhel-9-server", "projects/rhel-cloud/global/licenses/rhel-8-server").

디스크의 라이선스 교체

VM과 연결된 라이선스를 교체하려면 gcloud CLI 또는 Compute Engine API를 사용합니다.

gcloud

라이선스 참조 또는 코드를 사용하여 디스크의 라이선스를 바꾸려면 다음 gcloud compute disks update 명령어를 사용하세요.

gcloud compute disks update DISK_NAME \
--replace-license=PREVIOUS_LICENSE,NEW_LICENSE

다음을 바꿉니다.

  • DISK_NAME: 추가할 디스크의 이름입니다.
  • PREVIOUS_LICENSE: 대체되는 이전 라이선스 참조입니다(예: "projects/rhel-cloud/global/licenses/rhel-9-server", "projects/rhel-cloud/global/licenses/rhel-8-server").
  • NEW_LICENSE: 새 라이선스 참조입니다(예: "projects/rhel-cloud/global/licenses/rhel-9-server", "projects/rhel-cloud/global/licenses/rhel-8-server").

REST

라이선스 참조 또는 코드를 사용하여 디스크의 라이선스를 바꾸려면 disks.update v1 메서드를 호출하고 요청 본문에서 이전 라이선스를 새 라이선스로 바꿉니다.

PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT/zones/ZONE/disks/DISK_NAME?paths=licenses --data '{"name":"DISK_NAME", "licenses":["https://www.googleapis.com/compute/v1/NEW_LICENSE"]}'

다음을 바꿉니다.

  • PROJECT: 프로젝트 이름입니다.
  • ZONE: VM이 포함된 영역입니다.
  • DISK_NAME: 디스크 이름
  • NEW_LICENSE: 새 라이선스 참조입니다(예: "projects/rhel-cloud/global/licenses/rhel-9-server", "projects/rhel-cloud/global/licenses/rhel-8-server").

디스크에서 라이선스 삭제

VM과 연결된 개별 라이선스를 삭제하려면 gcloud CLI 및 Compute Engine API를 사용합니다.

gcloud

라이선스 참조 또는 코드를 사용하여 디스크에서 라이선스를 삭제하려면 gcloud compute disks update 명령어를 사용합니다.

gcloud compute disks update DISK_NAME \
--remove-licenses=LICENSES

다음을 바꿉니다.

  • DISK_NAME: 삭제할 디스크의 이름입니다.
  • LICENSES: 쉼표로 구분된 라이선스 참조 목록입니다(예: "projects/rhel-cloud/global/licenses/rhel-9-server", "projects/rhel-cloud/global/licenses/rhel-8-server").

REST

라이선스를 삭제하려면 다음 disks.update v1 메서드를 호출하여 호출 요청에 경로 선택자와 함께 빈 라이선스 필드를 제공합니다.

PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT/zones/ZONE/disks/DISK_NAME?paths=licenses --data '{"name":"DISK_NAME", "licenses":[]}'

다음을 바꿉니다.

  • PROJECT: 프로젝트 이름입니다.
  • ZONE: VM이 포함된 영역입니다.
  • DISK_NAME: 디스크 이름
  • LICENSES: 비워둡니다.

라이선스 업데이트 기록 보기

다음 절차를 수행하여 프로젝트에 있는 VM의 라이선스 업데이트 기록을 봅니다.

  1. Trusted Cloud 콘솔에서 로그 탐색기 페이지로 이동합니다.

    로그 탐색기로 이동

  2. 툴바에서 쿼리 표시가 사용 설정되어 있는지 확인합니다.

  3. 다음 표현식을 쿼리 편집기에 복사합니다.

    resource.type="gce_disk"
    logName="projects/PROJECT_NAME/logs/cloudaudit.googleapis.com%2Factivity"
    severity>=NOTICE
    protoPayload.request.@type="type.googleapis.com/compute.disks.update"
    protoPayload.request.licenses:*
    
  4. PROJECT_NAME를 파일 이름으로 바꿉니다.

  5. 쿼리 실행을 클릭합니다.

다음 단계