新增本機 SSD

Compute Engine 會為虛擬機器執行個體提供一律加密的本機固態硬碟 (SSD) 區塊儲存空間。每個本機 SSD 的大小為 375 GB,但最多可連接八個本機 SSD 裝置,每個執行個體總計有 3TB 的本機 SSD 儲存空間。可以選擇將多個本機 SSD 裝置格式化和掛接至單一邏輯磁碟區。

永久磁碟不同,本機 SSD 是以實體方式連接至託管您的虛擬機器執行個體的伺服器。與永久磁碟相較之下,這種緊密結合的方式,可提供卓越的效能、極高的每秒輸入/輸出作業數 (IOPS),並將延遲時間降至極低。如需詳細資料,請參閱永久磁碟和本機 SSD 效能一文。

本機 SSD 僅適合暫時儲存之用,例如快取、處理空間或低價值資料等。若您要將重要資料儲存於本機 SSD 裝置上,請務必將相同資料儲存在耐用儲存空間選項中。

您無法停止和重新啟動具有本機 SSD 的執行個體。若您透過訪客作業系統關閉含有本機 SSD 的執行個體,則會無法重新啟動執行個體,且會失去本機 SSD 上存放的資料。

若本機 SSD 不符合您對備援或靈活性的需求,可將本機 SSD 與其他執行個體儲存空間選項搭配使用。

事前準備

瞭解本機 SSD 資料保存

建立具有本機 SSD 的執行個體之前,您必須瞭解哪些事件會保存本機 SSD 資料,又有哪些事件會導致本機 SSD 資料無法復原。

系統僅會透過下列事件保存本機 SSD 上的資料:

  • 重新啟動客體作業系統時。
  • 設定執行個體執行即時遷移,且執行個體遭遇到主機維護事件。
  • 若主機系統發生主機錯誤,Compute Engine 會嘗試保存本機 SSD 資料,但僅有在基礎磁碟機於 60 分鐘內復原時,才會執行此動作。

系統不會透過下列事件保存本機 SSD 上的資料:

  • 手動終止執行個體時。
  • 關閉訪客作業系統並強制停止執行個體時。
  • 將執行個體設為先佔,且執行個體歷經先佔程序時。
  • 將執行個體設為在主機維護事件期間終止,且執行個體遭遇到主機維護事件。
  • 若主機系統發生主機錯誤,且基礎磁碟機未在 60 分鐘內復原,則 Compute Engine 不會嘗試將資料保存於您的本機 SSD。
  • 若您在設定本機 SSD 時出錯,而導致無法連上 SSD。
  • 如果您停用專案計費功能。執行個體會停止且將遺失您的資料。

建立具有本機 SSD 的執行個體

由於本機 SSD 位於虛擬機器執行個體運作的實體機器上,因此僅可在執行個體建立程序期間建立本機 SSD。本機 SSD 無法做為啟動裝置使用。

建立本機 SSD 後,您必須先格式化並掛接裝置,方可使用。

選擇 NVMe 或 SCSI 介面

您可使用 NVMe 或 SCSI 介面,將本機 SSD 連接至介面。大部分的公開映像檔皆包含 NVMe 和 SCSI 驅動程式。不過,某些映像檔內有最佳化的驅動程式,可讓執行個體透過 NVMe 發揮出最佳效能,或是能夠使用多佇列 SCSI 在 SCSI 介面上達到最佳效能。

  • NVMe 最佳化公開映像檔
    • Ubuntu 14.04 LTS 映像檔 ubuntu-1404-trusty-v20170110 及更新版本,或是 ubuntu-1404-lts 映像檔系列
    • Ubuntu 16.04 LTS 映像檔 ubuntu-1604-xenial-v20170113 及更新版本,或是 ubuntu-1604-lts 映像檔系列
    • Ubuntu 17.10 映像檔系列 ubuntu-1710
    • Ubuntu 18.04 LTS 映像檔系列 ubuntu-1804-lts
  • 多佇列 SCSI 功能公開映像檔:
    • Debian 9 Stretch 映像檔或映像檔系列 debian-9
    • Ubuntu 14.04 LTS 映像檔 ubuntu-1404-trusty-v20170807ubuntu-1404-trusty-v20170110 及更新版本,或是 ubuntu-1404-lts 映像檔系列
    • Ubuntu 16.04 LTS 映像檔 ubuntu-1604-xenial-v20170803 及更新版本,或是 ubuntu-1604-lts 映像檔系列
    • Ubuntu 17.10 映像檔系列 ubuntu-1710
    • Ubuntu 18.04 LTS 映像檔系列 ubuntu-1804-lts
    • 所有 Windows Server 映像檔
    • 所有 SQL Server 映像檔

您也可以在匯入至專案的自訂映像檔上啟用多佇列 SCSI。如需進一步瞭解,請參閱啟用多佇列 SCSI一文。

建立本機 SSD

您可使用 Google Cloud Platform 主控台gcloud 工具API,建立具有本機 SSD 的執行個體。

主控台

  1. 在 GCP 主控台中,前往「VM Instances」(VM 執行個體) 頁面。

    前往 VM 執行個體頁面

  2. 按一下 [建立執行個體]
  3. 在「Create a new instance」 (建立新執行個體) 頁面上,填入您要為執行個體 設定的屬性。
  4. 展開 [Management, security, disks, networking, sole tenancy] (管理、安全性、磁碟、網路、單獨租用)
  5. 按一下 [Disks] (磁碟),並在 [Additional disks] (其他磁碟) 下方,按一下 [Add new disk] (新增磁碟)
  6. 在「Name」(名稱) 欄位下方,輸入新磁碟的名稱。
  7. 在「Type」(類型) 下方,選擇 [Local SSD scratch disk (maximum 8)] (本機 SSD 暫存磁碟 (最多 8 個))
  8. 按一下 [Done] (完成)
  9. 按一下 [Create] (建立) 來建立執行個體。
  10. 建立本機 SSD 後,您必須先格式化並掛接裝置方可使用。

gcloud

若要建立已連接本機 SSD 的虛擬機器執行個體,請按照操作說明建立執行個體,使用 --local-ssd 標記建立和連接本機 SSD 裝置。若要建立多個本機 SSD 裝置,請額外新增 --local-ssd 標記。或者也可以設定介面的值,以及每個 --local-ssd 標記的裝置名稱。

同樣地,您可建立具有兩部本機 SSD 的執行個體,每部 SSD 皆使用 SCSI 介面,如下所示:

gcloud compute instances create example-instance \
    --machine-type n1-standard-8 \
    --local-ssd interface=[INTERFACE_TYPE] \
    --local-ssd interface=[INTERFACE_TYPE] \
    --image-project [IMAGE_PROJECT] \
    --image-family [IMAGE_FAMILY]

其中:

  • [INTERFACE_TYPE] 是您要用於此裝置的本機 SSD 介面。若開機磁碟映像檔具有最佳化 NVMe 驅動程式,或是適用於其他映像檔的 scsi,請指定 nvme
  • [INSTANCE_NAME] 是新執行個體的名稱。
  • [IMAGE_FAMILY]可用映像檔系列中的映像檔。
  • [IMAGE_PROJECT] 是映像檔系列所屬的映像檔專案

如有需要,您可以將本機 SSD 裝置連接至單一執行個體,在不同的裝置上一併使用 nvmescsinvme 裝置的效能取決於執行個體的開機磁碟映像檔。

建立本機 SSD 後,您必須先格式化並掛接裝置,方可使用。

API

當您在 API 中使用 initializeParams 屬性建立虛擬機器執行個體時,可建立本機 SSD 裝置。請務必提供下列屬性:

  • diskType:設為本機 SSD
  • autoDelete:設為 true
  • type:設為 SCRATCH

本機 SSD 執行個體無法設定下列屬性:

  • diskName
  • sourceImage 屬性
  • diskSizeGb

在以下的範例要求酬載中,會建立具有開機磁碟和本機 SSD 裝置的執行個體:

{
   "machineType":"zones/us-central1-f/machineTypes/n1-standard-8",
   "name":"local-ssd-instance",
   "disks":[
      {
         "type":"PERSISTENT",
         "initializeParams":{
            "sourceImage":"projects/ubuntu-os-cloud/global/images/family/ubuntu-1604-lts"
         },
         "boot":true
      },
      {
         "type":"SCRATCH",
         "initializeParams":{
            "diskType":"zones/us-central1-f/diskTypes/local-ssd"
         },
         "autoDelete":true,
         "interface": "NVME"
      }
   ],
   "networkInterfaces":[
      {
         "network":"global/networks/default"
      }
   ]
 }

建立本機 SSD 後,您必須先格式化並掛接裝置,方可使用。

如要進一步瞭解如何在 API 中建立執行個體,請參閱 API 參考資料

格式化並掛接本機 SSD 裝置

格式化並掛接個別的本機 SSD 裝置

若要將本機 SSD 連接至執行個體,最簡單的方式就是透過單一磁碟分區來格式化和掛接每部裝置。或者也可以將多部裝置合併為單一邏輯磁碟區

Linux 執行個體

若要在 Linux 執行個體上格式化和掛接新的本機 SSD,可使用任何您需要的磁碟分區格式與配置。在此範例中,會建立單一的 ext4 磁碟分區。

  1. 前往 VM 執行個體頁面。

    前往 VM 執行個體頁面

  2. 在新連接本機 SSD 的執行個體旁,按一下 [SSH] 按鈕。瀏覽器會開啟執行個體的終端機連線。

  3. 在終端機中,使用 lsblk 指令識別想要掛接的本機 SSD。處於 SCSI 模式的本機 SSD 會具有類似 sdb 的標準 ID,處於 NVMe 模式的本機 SSD,則會有類似 nvme0n1 的 ID。

    $ lsblk
    
    NAME    MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
    sda       8:0    0   10G  0 disk
    └─sda1    8:1    0   10G  0 part /
    nvme0n1 259:0    0  375G  0 disk
    
  4. 以 ext4 檔案系統格式化本機 SSD。此指令會刪除本機 SSD 中的全部現有資料。

    $ sudo mkfs.ext4 -F /dev/[SSD_ID]
    

    其中:[SSD_ID] 是您要格式化的本機 SSD ID。

  5. 使用 mkdir 指令建立目錄,您可在其中掛接裝置。

    $ sudo mkdir -p /mnt/disks/[MNT_DIR]
    

    其中:[MNT_DIR] 是您要掛接本機 SSD 的所在目錄。

  6. 將本機 SSD 掛接至執行個體。或者也可以選擇停用寫入快取清除功能,以提昇寫入效能,但此做法可能會使快取資料寫入作業的耐用性降低,最多可達兩秒。

    $ sudo mount /dev/[SSD_ID] /mnt/disks/[MNT_DIR]
    

    其中:

    • [SSD_ID] 是您要掛接的本機 SSD ID。
    • [MNT_DIR] 是您要掛接本機 SSD 的所在目錄。
  7. 設定對裝置的讀取與寫入存取權。在此範例中,授予所有使用者對裝置的寫入存取權。

    $ sudo chmod a+w /mnt/disks/[MNT_DIR]
    

    其中:[MNT_DIR] 是您掛接本機 SSD 的所在目錄。

也可以選擇將本機 SSD 新增至 /etc/fstab 檔案,讓裝置在執行個體重新啟動時自動重新掛接。若執行個體停止或終止,則此項目不會在本機 SSD 上保存資料。如需本機 SSD 資料保存的完整詳細資料,請參閱瞭解本機 SSD 資料保存一文。

指定項目 /etc/fstab 檔案時,請務必加入 nofail 選項,讓執行個體即使在無本機 SSD 時仍可繼續啟動。舉例而言,若您要建立開機磁碟的快照,並建立不含本機 SSD 的新執行個體,這時執行個體仍可繼續執行啟動程序,而不會永久暫停。若為執行 Ubuntu 12.04 或 Ubuntu 14.04 的執行個體,請指定 nobootwait 選項而非 nofail

  1. 請建立 /etc/fstab 項目。請使用 blkid 指令在裝置上尋找檔案系統的 UUID,並透過掛接選項編輯 /etc/fstab 檔案,以加入該 UUID。您可透過單一指令完成此步驟。例如:

    $ echo UUID=`sudo blkid -s UUID -o value /dev/disk/by-id/google-local-ssd-0` /mnt/disks/[MNT_DIR] ext4 discard,defaults,[NOFAIL_OPTION] 0 2 | sudo tee -a /etc/fstab
    

    其中:

    • [MNT_DIR] 是您掛接本機 SSD 的所在目錄。
    • [NOFAIL_OPTION] 選項會指定在系統無法掛接此本機 SSD 時,所應執行的動作。大部分的發行版本指定 nofail 即可。若為執行 Ubuntu 12.04 或 Ubuntu 14.04 的執行個體,請指定 nobootwait 選項。
  2. 請使用 cat 指令驗證 /etc/fstab 項目是否正確:

    $ cat /etc/fstab
    

若您是以此執行個體的開機磁碟來建立快照,並使用該快照建立不含本機 SSD 的獨立執行個體,請編輯 /etc/fstab 檔案,並移除此本機 SSD 的項目。即使已有 nofailnobootwait 選項,也請將 /etc/fstab 檔案與連接至執行個體的裝置保持同步處理,並在建立開機磁碟快照前移除這些項目。

Windows 執行個體

使用 Windows 磁碟管理工具,即可在 Windows 執行個體上格式化和掛接本機 SSD。

  1. 請透過遠端桌面協定連線至執行個體。在此範例中,請前往 VM 執行個體頁面,然後在已連接本機 SSD 的執行個體旁,按一下 [RDP] 按鈕。輸入使用者名稱和密碼後,會開啟一個伺服器桌面介面視窗。

  2. 在 Windows [開始] 按鈕上按一下滑鼠右鍵,然後選取 [磁碟管理]

    於 Windows [開始] 按鈕的右鍵功能表,選取 [Windows 磁碟管理員] 工具。

  3. 若之前尚未初始化本機 SSD,此工具會提示您選取新裝置的分區配置。請選取 [GPT],然後按一下 [確定]

    在磁碟初始化視窗中,選取磁碟分區配置。

  4. 本機 SSD 初始化後,請在未配置的磁碟空間上按一下滑鼠右鍵,然後選取 [新增簡單磁碟區]

    以已連接的磁碟建立新簡單磁碟區。

  5. 請按照「新增簡單磁碟區精靈」中的操作說明,設定新的磁碟區。您可使用任何想要的磁碟分區格式,但在此範例中請選取 NTFS。此外,也請勾選 [執行快速格式化],以加速執行格式化程序。

    在「新增簡單磁碟區精靈」中,選取磁碟分區格式類型。

  6. 結束精靈並完成磁碟區格式化作業後,請檢查新的本機 SSD 確認其是否處於 Healthy 狀態。

    檢視 Windows 辨識的磁碟清單,確認本機 SSD 處於「健康狀態良好」狀態。

這樣就可以了!現在已可將檔案寫入至本機 SSD。

格式化和掛接多個本機 SSD 裝置至單一邏輯磁碟區

本機 SSD 與永久 SSD 不同,每部連接至執行個體的每部裝置,容量皆固定為 375 GB。若您想要將多個本機 SSD 裝置合併至單一邏輯磁碟區,則必須自行定義全體裝置磁碟區的管理作業。

Linux 執行個體

請使用 mdadm 建立 RAID 0 陣列。此範例會透過單一 ext4 檔案系統將陣列格式化,但您可套用任何偏好的檔案系統。

  1. 前往 VM 執行個體頁面。

    前往 VM 執行個體頁面

  2. 在新連接本機 SSD 的執行個體旁,按一下 [SSH] 按鈕。瀏覽器會開啟執行個體的終端機連線。

  3. 在終端機中,安裝 mdadm 工具。此 mdadm 安裝程序包含會停止指令碼的使用者提示,因此請手動執行此程序。

    Debian 與 Ubuntu:

    $ sudo apt-get update && sudo apt-get install mdadm --no-install-recommends
    

    CentOS 與 RHEL:

    $ sudo yum install mdadm -y
    

    SLES 與 openSUSE:

    $ sudo zypper install -y mdadm
    

  4. 請使用 lsblk 指令識別想要一同掛接的所有本機 SSD。在此範例中,執行個體具有八個處於 NVMe 模式的本機 SSD 裝置:

    $ lsblk
    
    NAME    MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
    sda       8:0    0   10G  0 disk
    └─sda1    8:1    0   10G  0 part /
    nvme0n1 259:0    0  375G  0 disk
    nvme0n2 259:1    0  375G  0 disk
    nvme0n3 259:2    0  375G  0 disk
    nvme0n4 259:3    0  375G  0 disk
    nvme0n5 259:4    0  375G  0 disk
    nvme0n6 259:5    0  375G  0 disk
    nvme0n7 259:6    0  375G  0 disk
    nvme0n8 259:7    0  375G  0 disk
    
    

    處於 SCSI 模式的本機 SSD 會具有類似 sdb 的標準 ID,處於 NVMe 模式的本機 SSD,則會有類似 nvme0n1 的 ID。

  5. 請使用 mdadm 將多個本機 SSD 裝置合併至名為 /dev/md0 的單一陣列。此範例會合併處於 NVMe 模式的八個本機 SSD 裝置。至於處於 SCSI 模式的本機 SSD 裝置,請指定您以 lsblk 指令取得的 ID:

    $ sudo mdadm --create /dev/md0 --level=0 --raid-devices=8 \
    /dev/nvme0n1 /dev/nvme0n2 /dev/nvme0n3 /dev/nvme0n4 \
    /dev/nvme0n5 /dev/nvme0n6 /dev/nvme0n7 /dev/nvme0n8
    
    mdadm: Defaulting to version 1.2 metadata
    mdadm: array /dev/md0 started.
    
    
  6. 請以 ext4 檔案系統將整個 /dev/md0 陣列格式化。此指令會刪除本機 SSD 中的全部現有資料。

    $ sudo mkfs.ext4 -F /dev/md0
    
  7. 請建立可掛接 /dev/md0 的目錄。在此範例中,會建立 /mnt/disks/ssd-array 目錄:

    $ sudo mkdir -p /mnt/disks/[MNT_DIR]
    

    其中 [MNT_DIR] 是您要掛接本機 SSD 陣列的所在目錄。

  8. 請將 /dev/md0 陣列掛接至 /mnt/disks/ssd-array 目錄。或者也可以選擇停用寫入快取清除功能,以提昇寫入效能,但此做法可能會使快取資料寫入作業的耐用性降低,最多可達兩秒。

    $ sudo mount /dev/md0 /mnt/disks/[MNT_DIR]
    

    其中 [MNT_DIR] 是您要掛接本機 SSD 陣列的所在目錄。

  9. 設定對裝置的讀取與寫入存取權。在此範例中,授予所有使用者對裝置的寫入存取權。

    $ sudo chmod a+w /mnt/disks/[MNT_DIR]
    

    其中 [MNT_DIR] 是您掛接本機 SSD 陣列的所在目錄。

也可以選擇將本機 SSD 新增至 /etc/fstab 檔案,讓裝置在執行個體重新啟動時自動重新掛接。若執行個體終止,則此項目不會在本機 SSD 上保存資料。如需本機 SSD 資料保存的詳細資料,請參閱瞭解本機 SSD 資料保存一文。

指定項目 /etc/fstab 檔案時,請務必加入 nofail 選項,讓執行個體即使在無本機 SSD 時仍可繼續啟動。舉例而言,若您要建立開機磁碟的快照,並建立不含本機 SSD 的新執行個體,這時執行個體仍可繼續執行啟動程序,而不會永久暫停。若為執行 Ubuntu 12.04 或 Ubuntu 14.04 的執行個體,請指定 nobootwait 選項而非 nofail

  1. 請建立 /etc/fstab 項目。請使用 blkid 指令在裝置上尋找檔案系統的 UUID,並透過掛接選項編輯 /etc/fstab 檔案,以加入該 UUID。您可透過單一指令完成此步驟。例如:

    $ echo UUID=`sudo blkid -s UUID -o value /dev/md0` /mnt/disks/[MNT_DIR] ext4 discard,defaults,[NOFAIL_OPTION] 0 2 | sudo tee -a /etc/fstab
    

    其中:

    • [MNT_DIR] 是您掛接本機 SSD 陣列的所在目錄。
    • [NOFAIL_OPTION] 選項會指定在系統無法掛接此本機 SSD 時,所應執行的動作。大部分的發行版本指定 nofail 即可。若為執行 Ubuntu 12.04 或 Ubuntu 14.04 的執行個體,請指定 nobootwait 選項。
  2. 請使用 cat 指令驗證 /etc/fstab 項目是否正確:

    $ cat /etc/fstab
    

若您是以此執行個體的開機磁碟來建立快照,並使用該快照建立不含本機 SSD 的獨立執行個體,請編輯 /etc/fstab 檔案,並移除此本機 SSD 陣列的項目。即使已有 nofailnobootwait 選項,也請將 /etc/fstab 檔案與連接至執行個體的裝置保持同步處理,並在建立開機磁碟快照前移除這些項目。

Windows 執行個體

使用 Windows 磁碟管理工具,即可在 Windows 執行個體上格式化和掛接本機 SSD 陣列。

  1. 請透過遠端桌面協定連線至執行個體。在此範例中,請前往 VM 執行個體頁面,然後在已連接本機 SSD 的執行個體旁,按一下 [RDP] 按鈕。輸入使用者名稱和密碼後,會開啟一個伺服器桌面介面視窗。

  2. 在 Windows [開始] 按鈕上按一下滑鼠右鍵,然後選取 [磁碟管理]

    於 Windows [開始] 按鈕的右鍵功能表,選取 [Windows 磁碟管理員] 工具。

  3. 若之前尚未初始化本機 SSD,此工具會提示您選取新裝置的分區配置。請選取 [GPT],然後按一下 [確定]

    在磁碟初始化視窗中,選取磁碟分區配置。

  4. 本機 SSD 初始化後,請在未配置的磁碟空間上按一下滑鼠右鍵,然後選取 [新增等量磁碟區]

    以已連接的磁碟建立新簡單磁碟區。

  5. 請選取想要加入等量陣列中的本機 SSD 裝置。在此範例中,請選取要合併至單一本機 SSD 裝置的所有裝置。

    選取要加入到陣列中的本機 SSD 裝置。

  6. 請按照「新增等量磁碟區精靈」中的操作說明,設定新磁碟區。您可使用任何想要的磁碟分區格式,但在此範例中請選取 NTFS。此外,也請勾選 [執行快速格式化],以加速執行格式化程序。

    在「新增等量磁碟區精靈」中,選取磁碟分區格式類型。

  7. 結束精靈並完成磁碟區格式化作業後,請檢查新的本機 SSD 確認其是否處於 Healthy 狀態。

    檢視 Windows 辨識的磁碟清單,確認本機 SSD 處於「健康狀態良好」狀態。

這樣就可以了!現在已可將檔案寫入至本機 SSD。

本頁內容對您是否有任何幫助?請提供意見:

傳送您對下列選項的寶貴意見...

這個網頁
Compute Engine 說明文件