加購 RHEL ELS 授權

本文說明如何將 ELS 加購方案附加至 RHEL Compute 執行個體,這些執行個體的映像檔具有隨選授權,且已達到維護期限。

如果 Red Hat Enterprise Linux (RHEL) 版本終止維護,且您的 OS 映像檔使用隨選授權,則根據生命週期階段的維護政策,您對這些 Compute Engine 執行個體的支援和存取權會受到限制。

如要延長支援服務,因應影響程度重大的安全性事件,並根據選定的緊急優先順序修正錯誤,可以加購 RHEL Extended Life Cycle Support (ELS) Add-On。ELS 加購服務適用於主要版本的最新次要版本,如下所示:

  • 如果是 RHEL 7,ELS 加購方案適用於最新次要版本,也就是 RHEL 7.9 或 RHEL 7.9 for SAP。RHEL 7 的 ELS 加購方案將於 2028 年 6 月 30 日終止。
  • 如果是 RHEL 6,ELS 加購方案適用於最新次要版本,也就是 RHEL 6.10。RHEL 6 的 ELS 加購方案將於 2024 年 6 月 30 日終止。將 RHEL 6.10 執行個體遷移至 Cloud de Confiance by S3NS時,系統會自動附加 ELS Add-On。

詳情請參閱 RHEL 生命週期常見問題

總覽

針對每個運算執行個體執行下列操作,附加 ELS 授權:

  1. 停止執行個體,並將授權附加至開機磁碟。

  2. 驗證授權並啟動執行個體。

  3. 在執行個體上安裝 Red Hat Update Infrastructure (RHUI) ELS 用戶端套件。

事前準備

  • ELS 外掛程式僅適用於最新次要版本。針對每個 RHEL 執行個體,請連線至 VM 並執行下列指令,更新至最新次要版本:

    sudo yum -y update
  • 如果尚未設定驗證,請先完成設定。 驗證可確認您的身分,以便存取 Cloud de Confiance by S3NS 服務和 API。如要從本機開發環境執行程式碼或範例,請選取下列其中一個選項,向 Compute Engine 進行驗證:

    選取這個頁面上您打算如何使用範例的分頁:

    控制台

    使用 Cloud de Confiance 控制台存取 Cloud de Confiance by S3NS 服務和 API 時,無須設定驗證。

    gcloud

    1. 安裝 Google Cloud CLI,然後 使用聯合身分登入 gcloud CLI。登入後,執行下列指令來初始化 Google Cloud CLI:

      gcloud init
  • 設定預設地區和區域

必要的角色

如要取得將 ELS 授權附加至執行個體所需的權限,請要求管理員授予您專案的下列 IAM 角色:

如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和組織的存取權」。

這些預先定義的角色具備將 ELS 授權附加至執行個體所需的權限。如要查看確切的必要權限,請展開「Required permissions」(必要權限) 部分:

所需權限

如要將 ELS 授權附加至執行個體,必須具備下列權限:

  • 如要啟動及停止執行個體,請按照下列步驟操作:
    • 專案的 compute.instances.stop
    • 專案的 compute.instances.start
  • 如要查看附加至執行個體的磁碟:
    • compute.instances.get 執行個體
    • compute.disks.get 執行個體
    • compute.disks.list 執行個體
  • 如要更新執行個體的開機磁碟:
    • compute.disks.get 開機磁碟
    • compute.disks.update 開機磁碟

您或許還可透過自訂角色或其他預先定義的角色取得這些權限。

帳單

將 RHEL ELS 連接至磁碟後,Compute Engine 會在帳單中新增額外 SKU。

舉例來說,如果您使用 RHEL 7,帳單會包含 RHEL 7 的一個項目,以及 RHEL 7 ELS 的另一個項目。

系統會根據付費映像檔的定價,向您收取 RHEL 執行個體的費用。

限制

您必須先停止執行個體,才能附加授權。

附加 RHEL ELS 授權

按照下列程序,將 RHEL ELS 授權附加至 Linux VM 的開機磁碟:

  1. 使用 gcloud compute instances stop 指令停止 VM:

    gcloud compute instances stop VM_NAME
    

    VM_NAME 替換為要停止的 VM 名稱。

  2. 使用 gcloud compute instances describe 指令列出與 VM 相關聯的磁碟:

    gcloud compute instances describe VM_NAME --format="yaml(disks)"
    

    VM_NAME 替換為 VM 名稱。

  3. 確認輸出結果與下列內容相似:

    disks:
    - autoDelete: true
      boot: true
      deviceName: persistent-disk-0
      diskSizeGb: '20'
      index: 0
      interface: SCSI
      kind: compute#attachedDisk
      licenses:
      - https://www.googleapis.com/compute/v1/projects/rhel-cloud/global/licenses/RHEL_VERSION
      - https://www.googleapis.com/compute/v1/projects/rhel-cloud/global/licenses/RHEL_ELS_VERSION
      mode: READ_WRITE
      source: https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/zones/ZONE/disks/VM_NAME
      type: PERSISTENT
    

    請注意,目前尚未附加任何 Licenses

  4. 執行 gcloud compute disks list 指令,取得開機磁碟的名稱:

    gcloud compute disks list
    
  5. 使用 gcloud compute disks update 指令,以 RHEL ELS 授權 URI 更新開機磁碟:

    gcloud compute disks update BOOT_DISK_NAME \
       --zone ZONE \
       --append-licenses="https://www.googleapis.com/compute/v1/projects/rhel-cloud/global/licenses/RHEL_ELS_VERSION"
    

    更改下列內容:

    • RHEL_VERSION:RHEL 版本。例如:rhel-7-server

    • BOOT_DISK_NAME:在上一個步驟中取得的開機磁碟名稱

    • ZONE:包含開機磁碟的可用區

    • RHEL_ELS_VERSION:RHEL ELS 版本。例如:rhel-7-els

驗證 RHEL ELS 授權

請按照下列程序,確認 RHEL ELS 授權已附加至 Linux VM 開機磁碟:

  1. 使用 gcloud compute disks describe 指令取得開機磁碟的相關資訊:

    gcloud compute disks describe BOOT_DISK_NAME \
       --zone ZONE
    

    更改下列內容:

    • BOOT_DISK_NAME:要檢查附加授權的開機磁碟名稱

    • ZONE:包含開機磁碟的可用區

  2. 確認輸出結果與下列內容相似:

    creationTimestamp: '2021-05-05T15:26:27.835-07:00'
    id: '727854272460268924'
    interface: SCSI
    kind: compute#disk
    labelFingerprint: 42WmSpB8rSM=
    lastAttachTimestamp: '2021-05-05T15:26:27.836-07:00'
    licenseCodes:
    - '1000006'
    - '6213885950785916969'
    licenses:
    - https://www.googleapis.com/compute/v1/projects/rhel-cloud/global/licenses/RHEL_VERSION
    - https://www.googleapis.com/compute/v1/projects/rhel-cloud/global/licenses/RHEL_ELS_VERSION
    multiWriter: false
    name: VM_NAME
    physicalBlockSizeBytes: '4096'
    selfLink: https://www.googleapis.com/compute/projects/PROJECT_NAME/zones/ZONE/disks/DISK_NAME
    selfLinkWithId: https://www.googleapis.com/compute/projects/PROJECT_NAME/zones/ZONE/disks/DISK_ID
    sizeGb: '20'
    sourceImage: https://www.googleapis.com/compute/projects/IMAGE_PROJECT/global/images/IMAGE
    sourceImageId: '7397991294075835597'
    status: READY
    type: https://www.googleapis.com/compute/projects/PROJECT_NAME/zones/ZONE/diskTypes/DISK_TYPE
    users:
    - https://www.googleapis.com/compute/projects/PROJECT_NAME/zones/ZONE/instances/VM_NAME
    zone: https://www.googleapis.com/compute/projects/PROJECT_NAME/zones/ZONE
    
  3. 檢查上一步的輸出內容,確認 Linux VM 開機磁碟已附加 RHEL ELS 授權,並找出適當授權字串的 Licenses 欄位。

    如果 Licenses 欄位未包含預期的授權字串,您可能需要清除並更新使用者授權。詳情請參閱 gcloud compute disks update 指令

  4. 使用 gcloud compute instances start 指令啟動 VM:

    gcloud compute instances start VM_NAME \
       [--csek-key-file ENCRYPTION_KEY]
    

    更改下列內容:

    • VM_NAME:要啟動的 VM 名稱

    • ENCRYPTION_KEY:選用:如果開機磁碟是以客戶提供的加密金鑰 (CSEK) 加密 (已淘汰),請指定金鑰檔案的路徑

安裝 RHUI ELS 用戶端套件

將授權字串附加至 RHEL 磁碟後,請連線至 VM 並執行下列指令,在 VM 上安裝 RHUI ELS 用戶端套件:

RHEL 7

  1. 確認您使用的是 RHEL 7.9 或 RHEL 7.9 for SAP:

     cat /etc/redhat-release
     

  2. 下載並安裝最新更新:

     sudo yum -y update
     

  3. 移除 RHUI 用戶端套件,並安裝 RHUI ELS 用戶端套件:

     sudo yum -y remove google-rhui-client-rhel7 google-rhui-client-rhel79-sap google-rhui-client-rhel7-sap
     sudo yum makecache
     sudo yum -y install google-rhui-client-rhel7-els
     

RHEL 6

  1. 確認您使用的是 RHEL 6.10:

     cat /etc/redhat-release
     

  2. 下載並安裝最新更新:

     sudo yum -y update
     

  3. 移除 RHUI 用戶端套件,並安裝 RHUI ELS 用戶端套件:

     sudo yum -y remove google-rhui-client-rhel6
     sudo yum makecache
     sudo yum -y install google-rhui-client-rhel6-els
     

查看稽核記錄

如要查看運算執行個體的授權更新記錄,請按照下列步驟操作:

  1. 前往 Cloud de Confiance 控制台的「Logs Explorer」頁面。

    前往 Logs Explorer

  2. 確認工具列中的「Show query」(顯示查詢) 已啟用。

  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. 點選「執行查詢」