當您將磁碟連接至使用 Linux OS 的虛擬機器 (VM) 時,Google Cloud 會自動為磁碟建立符號連結 (symlink)。如要在 Linux VM 中存取永久磁碟磁碟區或本機 SSD 磁碟,請使用符號連結。這些符號連結可預測,且在重新啟動時保持一致。Google Cloud 會為 /dev/disk/by-id
中連結至 VM 的所有磁碟建立符號連結。
本文件說明如何找出連接至 VM 的磁碟的正確符號連結。
限制
如果您將本機 SSD 磁碟連接至 C3 或 C3D VM,可能需要採取額外步驟,為本機 SSD 磁碟建立符號連結。只有在您使用 Google Cloud提供的下列任何公開圖片時,才需要執行這些步驟:
- SLES 15 SP4 和 SP5
- SLES 12 SP4
這些額外步驟僅適用於本機 SSD 磁碟,您不需要對永久磁碟磁區執行任何操作。
上述清單中的公開映像檔並未提供 /dev/disk/by-id/google-local-nvme-ssd-N
形式的本機 SSD 符號連結。這些映像檔中只會存在使用裝置資訊的符號連結,例如 nvme-nvme.1ae0-6e766d655f636172642d7064-6e766d655f636172642d7064-00000001
。
如要為這些 Linux 映像檔取得使用者友善的符號連結,您必須更新 udev
規則,並在執行個體中新增指令碼。
如要瞭解如何更新 udev
規則,以便在 C3 和 C3D 上支援本機 SSD 磁碟的符號連結,請參閱「排解 NVMe 磁碟問題」。
除了使用符號連結之外,您也可以使用 VM 上的本機 SSD 磁碟裝置名稱 (例如 /dev/nvme0n1
) 存取這些磁碟。
符號連結格式
當磁碟連接至 VM 時,系統會在 /dev/disk/by-id
中建立符號連結,無論是在 VM 建立期間或之後皆然。建立的符號連結名稱如下:
Persistent Disk 和 Google Cloud Hyperdisk
系統會依據下列規則建立符號連結:
- 如果您在建立磁碟時指定了自訂裝置名稱:
google-DEVICE_NAME
- 如果您在建立磁碟時未指定自訂裝置名稱:
- 開機磁碟:
google-VM_NAME
- 非開機磁碟:
google-DISK_NAME
- 開機磁碟:
格式化磁碟後,系統會在符號連結後面加上 -partN
,其中 N 是分區號碼,例如 google-data-disk-part1
。
本機 SSD 磁碟
本機 SSD 符號連結的格式會因磁碟介面而異。
- SCSI:符號連結的名稱為
google-local-ssd-N
,其中 N 是本機 SSD 磁碟編號,從 0 開始。 - NVMe:符號連結的名稱為
google-local-nvme-ssd-N
,其中 N 是 SSD 編號,從 0 開始。
格式化本機 SSD 磁碟後,系統會在符號連結後方加上 -partN
,其中 N 是分區編號,例如 google-local-nvme-ssd-0-part1
。
裝置符號連結
Compute Engine 會根據磁碟類型和介面 (例如 scsi-0Google_PersistentDisk_DEVICE_NAME
),在目錄中建立其他符號連結。這些連結的功能與先前提到的符號連結相同。
範例 1:已連結本機 SSD 的 C3 VM
假設您建立了具有下列屬性的 VM:
- VM 名稱:
instance-1
- 機器系列:C3
- 磁碟介面類型:永久磁碟和本機 SSD 皆為 NVMe
- 其他磁碟:無
- 已連結的本機 SSD 磁碟數:2
- 使用的自訂裝置名稱:無
Compute Engine 會為該 VM 建立下列符號連結:
ls -l /dev/disk/by-id/google-*
google-instance-1 -> ../../nvme2n1
google-instance-1-part1 -> ../../nvme2n1p1
google-instance-1-part14 -> ../../nvme2n1p14
google-instance-1-part15 -> ../../nvme2n1p15
google-local-nvme-ssd-0 -> ../../nvme0n1
google-local-nvme-ssd-1 -> ../../nvme1n1
在本例中,永久磁碟開機磁碟符號連結為 google-instance-1
,這是根據 VM 名稱建立。開機磁碟已格式化,並安裝作業系統。開機磁碟有 3 個分區:part1、part14 和 part 15。已連結的本機 SSD 磁碟並未格式化,因此系統只為每個本機 SSD 磁碟建立單一符號連結。
範例 2:N2 VM 已連接 NVMe 本機 SSD 和額外的永久磁碟
假設您建立了具有下列屬性的 VM:
- VM 名稱:
instance-2
- 機器系列:N2
- 磁碟介面類型:永久磁碟為 SCSI,本機 SSD 為 NVMe
- 其他磁碟:1 個名為
extra-scsi-disk
的永久磁碟 - 已連結的本機 SSD 磁碟數:2
- 使用的自訂裝置名稱:無
系統會為該 VM 建立下列符號連結:
ls -l /dev/disk/by-id/google-*
google-extra-scsi-disk -> ../../sdb
google-instance-2 -> ../../sda
google-instance-2-part1 -> ../../sda1
google-instance-2-part14 -> ../../sda14
google-instance-2-part15 -> ../../sda15
google-local-nvme-ssd-0 -> ../../nvme0n1
google-local-nvme-ssd-0-part1 -> ../../nvme0n1p1
google-local-nvme-ssd-1 -> ../../nvme0n2
在本例中,永久磁碟開機磁碟符號連結為 google-instance-2
,這是根據 VM 名稱建立。開機磁碟已格式化,並安裝 OS 映像檔。開機磁碟有 3 個分區:part1、part14 和 part 15。第一個本機 SSD 磁碟也已劃分,且只有一個分區,因此會為該磁碟分區建立額外的符號連結。新增至 VM 的額外永久磁碟會包含符號連結 google-extra-scsi-disk
,其名稱取自磁碟名稱。額外的永久磁碟和第二個本機 SSD 磁碟未經過格式化,因此這些磁碟只會列出單一符號連結。
後續步驟
- 瞭解如何使用永久裝置名稱。
- 在 Linux 或 Windows VM 上格式化及掛接新磁碟。
- 瞭解如何基準測試永久磁碟效能。