๋ผ์ด์„ ์Šค ๊ด€๋ฆฌ


์ด ๋ฌธ์„œ์—์„œ๋Š” Compute Engine ์ธ์Šคํ„ด์Šค์™€ ์—ฐ๊ฒฐ๋œ ๋ผ์ด์„ ์Šค๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์—๋Š” ๋ผ์ด์„ ์Šค ์—…๋ฐ์ดํŠธ ๊ธฐ๋ก์„ ์ถ”๊ฐ€, ์‚ญ์ œ, ๊ต์ฒดํ•˜๊ณ  ๋ณด๋Š” ๋ฐฉ๋ฒ•์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. Compute Engine์˜ ๋ผ์ด์„ ์Šค์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์€ ๋ผ์ด์„ ์Šค ์ •๋ณด๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

๋ผ์ด์„ ์Šค ๋ณ€๊ฒฝ ์ œํ•œ์‚ฌํ•ญ

ํŠน์ • OS ๋ผ์ด์„ ์Šค๋งŒ ์ถ”๊ฐ€, ์‚ญ์ œ ๋˜๋Š” ๊ต์ฒดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Red Hat Enterprise Linux (RHEL), RHEL for SAP, SUSE Linux Enterprise Server (SLES), SLES for SAP, Ubuntu, Ubuntu Pro์˜ ๋ผ์ด์„ ์Šค ๋ณ€๊ฒฝ์ด ์ง€์›๋ฉ๋‹ˆ๋‹ค.

ํ—ˆ์šฉ๋˜๋Š” ๋ผ์ด์„ ์Šค ๋ณ€๊ฒฝ์‚ฌํ•ญ์€ ๋ผ์ด์„ ์Šค ์†Œ์œ ์ž๊ฐ€ ๊ฒฐ์ •ํ•˜๋ฉฐ ๋ณ€๊ฒฝ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. VM์— ํ—ˆ์šฉ๋˜๋Š” ๋ผ์ด์„ ์Šค ๋ณ€๊ฒฝ์‚ฌํ•ญ์„ ํ™•์ธํ•˜๋ ค๋ฉด ๋ผ์ด์„ ์Šค ๋ณ€๊ฒฝ์‚ฌํ•ญ ๋ฐ ์ œํ•œ์‚ฌํ•ญ ๊ฒ€ํ† ๋ฅผ ์ฐธ๊ณ ํ•˜์„ธ์š”.

์‚ฌ์šฉ๋Ÿ‰์— ๋”ฐ๋ผ ์ง€๋ถˆ (PAYG)๊ณผ ์‚ฌ์šฉ์ž ๊ตฌ๋… ์‚ฌ์šฉ (BYOS) ๊ฐ„์— RHEL ๋˜๋Š” SLES ๋ผ์ด์„ ์Šค๋ฅผ ๋ณ€๊ฒฝํ•˜๋ ค๋ฉด PAYG์™€ BYOS ๊ฐ„ ์ „ํ™˜์„ ์ฐธ๊ณ ํ•˜์„ธ์š”.

Ubuntu LTS์˜ ๊ฒฝ์šฐ ํ™•์žฅ ๋ณด์•ˆ ์œ ์ง€๋ณด์ˆ˜(ESM)๋ฅผ ์‚ฌ์šฉ ์„ค์ •ํ•˜๋„๋ก ๋ผ์ด์„ ์Šค๋ฅผ Ubuntu Pro๋กœ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜๋ ค๋ฉด Ubuntu์—์„œ Ubuntu Pro๋กœ ์—…๊ทธ๋ ˆ์ด๋“œ๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

์—ฐ์žฅ ์ง€์›์ด ํฌํ•จ๋˜๋„๋ก ์ฃผ๋ฌธํ˜• RHEL ๋ผ์ด์„ ์Šค๋ฅผ ์—…๋ฐ์ดํŠธํ•˜๋ ค๋ฉด ๋ผ์ด์„ ์Šค์— RHEL ์—ฐ์žฅ ์ˆ˜๋ช… ์ฃผ๊ธฐ ์ง€์› (ELS) ๋ถ€๊ฐ€๊ธฐ๋Šฅ ์ถ”๊ฐ€๋ฅผ ์ฐธ๊ณ ํ•˜์„ธ์š”.

์‹œ์ž‘ํ•˜๊ธฐ ์ „์—

  • ์•„์ง ์„ค์ •ํ•˜์ง€ ์•Š์•˜๋‹ค๋ฉด ์ธ์ฆ์„ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ์ธ์ฆ์€ Google Cloud ์„œ๋น„์Šค ๋ฐ API์— ์•ก์„ธ์Šคํ•˜๊ธฐ ์œ„ํ•ด ID๋ฅผ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค. ๋กœ์ปฌ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์—์„œ ์ฝ”๋“œ ๋˜๋Š” ์ƒ˜ํ”Œ์„ ์‹คํ–‰ํ•˜๋ ค๋ฉด ๋‹ค์Œ ์˜ต์…˜ ์ค‘ ํ•˜๋‚˜๋ฅผ ์„ ํƒํ•˜์—ฌ Compute Engine์— ์ธ์ฆํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

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

    Console

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

    gcloud

    1. Google Cloud CLI๋ฅผ ์„ค์น˜ํ•ฉ๋‹ˆ๋‹ค. ์„ค์น˜ ํ›„ ๋‹ค์Œ ๋ช…๋ น์–ด๋ฅผ ์‹คํ–‰ํ•˜์—ฌ Google Cloud CLI๋ฅผ ์ดˆ๊ธฐํ™”ํ•ฉ๋‹ˆ๋‹ค.

      gcloud init

      ์™ธ๋ถ€ ID ๊ณต๊ธ‰์—…์ฒด(IdP)๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ ๋จผ์ € ์ œํœด ID๋กœ gcloud CLI์— ๋กœ๊ทธ์ธํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

    2. Set a default region and zone.

    REST

    ๋กœ์ปฌ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์—์„œ ์ด ํŽ˜์ด์ง€์˜ REST API ์ƒ˜ํ”Œ์„ ์‚ฌ์šฉํ•˜๋ ค๋ฉด gcloud CLI์— ์ œ๊ณตํ•œ ์‚ฌ์šฉ์ž ์ธ์ฆ ์ •๋ณด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

      Google Cloud CLI๋ฅผ ์„ค์น˜ํ•ฉ๋‹ˆ๋‹ค. ์„ค์น˜ ํ›„ ๋‹ค์Œ ๋ช…๋ น์–ด๋ฅผ ์‹คํ–‰ํ•˜์—ฌ Google Cloud CLI๋ฅผ ์ดˆ๊ธฐํ™”ํ•ฉ๋‹ˆ๋‹ค.

      gcloud init

      ์™ธ๋ถ€ ID ๊ณต๊ธ‰์—…์ฒด(IdP)๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ ๋จผ์ € ์ œํœด ID๋กœ gcloud CLI์— ๋กœ๊ทธ์ธํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

    ์ž์„ธํ•œ ๋‚ด์šฉ์€ Google Cloud ์ธ์ฆ ๋ฌธ์„œ์˜ REST ์‚ฌ์šฉ์„ ์œ„ํ•œ ์ธ์ฆ์„ ์ฐธ์กฐํ•˜์„ธ์š”.

๋””์Šคํฌ ๋ผ์ด์„ ์Šค ์—…๋ฐ์ดํŠธ ์ค€๋น„

๋””์Šคํฌ๊ฐ€ ์‹คํ–‰ ์ค‘์ธ ์ธ์Šคํ„ด์Šค์— ์—ฐ๊ฒฐ๋˜์–ด ์žˆ๋Š” ๋™์•ˆ์— ๋””์Šคํฌ ๋ผ์ด์„ ์Šค๋ฅผ ์—…๋ฐ์ดํŠธํ•˜๋ ค๋ฉด ๋จผ์ € ์ธ์Šคํ„ด์Šค๋ฅผ ์ค‘์ง€ํ•˜๊ฑฐ๋‚˜ ๋””์Šคํฌ๋ฅผ ๋ถ„๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

  • ์ธ์Šคํ„ด์Šค๋ฅผ ์ค‘์ง€ํ•ฉ๋‹ˆ๋‹ค. ๋””์Šคํฌ ๋ผ์ด์„ ์Šค๋ฅผ ์—…๋ฐ์ดํŠธํ•˜๊ธฐ ์ „์— ์ธ์Šคํ„ด์Šค๋ฅผ ์ผ์‹œ ์ข…๋ฃŒํ•ฉ๋‹ˆ๋‹ค.
  • ๋””์Šคํฌ๋ฅผ ๋ถ„๋ฆฌํ•ฉ๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ๋””์Šคํฌ ๋ผ์ด์„ ์Šค๋ฅผ ์—…๋ฐ์ดํŠธํ•˜๊ธฐ ์ „์— ์ธ์Šคํ„ด์Šค์—์„œ ๋””์Šคํฌ๊ฐ€ ๋ถ„๋ฆฌ๋ฉ๋‹ˆ๋‹ค.

VM๊ณผ ์—ฐ๊ฒฐ๋œ ๋ผ์ด์„ ์Šค ๋ณด๊ธฐ

VM๊ณผ ์—ฐ๊ฒฐ๋œ ๋ผ์ด์„ ์Šค๋ฅผ ๋ณด๋ ค๋ฉด Google Cloud ์ฝ˜์†”, gcloud CLI ๋˜๋Š” Compute Engine API๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฝ˜์†”

  1. Google 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. Google 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. ์ฟผ๋ฆฌ ์‹คํ–‰์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

๋‹ค์Œ ๋‹จ๊ณ„