ライセンスの管理

このドキュメントでは、Compute Engine インスタンスに関連付けられたライセンスを管理する方法について説明します。これには、ライセンス更新の履歴を追加、削除、置換、表示する方法が含まれます。Compute Engine のライセンスの詳細については、ライセンスについてをご覧ください。

ライセンスの管理に関する制限事項:

  • ライセンスをディスクに追加できるのは、AppendableToDisktrue の場合のみです。
  • RemovableFromDisktrue の場合にのみ、削除できます(置き換えは行われません)。
  • ライセンスを置き換えられるのは、AllowedReplacementLicenses にリストされている置き換えのいずれかのみです。

Ubuntu LTS について、ライセンスを Ubuntu Pro にアップグレードして拡張セキュリティ メンテナンス(ESM)を有効にするには、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. After installing the Google Cloud CLI, sign in to the gcloud CLI with your federated identity and then initialize it by running the following command:

        gcloud init
      2. Set a default region and zone.
      3. REST

        このページの REST API サンプルをローカル開発環境で使用するには、gcloud CLI に指定した認証情報を使用します。

          After installing the Google Cloud CLI, sign in to the gcloud CLI with your federated identity and then initialize it by running the following command:

          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. [クエリを実行] をクリックします。

次のステップ