簡體   English   中英

在 Google Compute Engine 虛擬機之間共享一個永久性磁盤

[英]Share a persistent disk between Google Compute Engine VMs

來自谷歌的文檔:

可以將一個永久性磁盤附加到多個實例。 但是,如果您將一個永久性磁盤附加到多個實例,則所有實例都必須以只讀模式附加永久性磁盤。 無法以讀寫模式將永久性磁盤附加到多個實例。

如果您以讀寫模式附加永久性磁盤,然后嘗試將該磁盤附加到后續實例,Google Compute Engine 將返回錯誤。

所以,我需要有一個共享持久磁盤作為我所有計算引擎的前端,很好,你怎么能在這個共享磁盤上寫?

我的猜測(我希望)是一個讀/寫持久磁盤只能連接 1 個計算引擎,但同一個磁盤可以只讀共享給其他VM,是嗎?

假設我有 2 個 Compute Engine 虛擬機和 2 個永久性磁盤,這個流程是否可行?

  • 計算 1 讀/寫磁盤 1 和只讀磁盤 2
  • 計算 2 讀/寫磁盤 2 和只讀磁盤 1

更新:自 2020-06-16 起可用

根據 Matthew Lenz 的另一個答案創建多寫入器永久性磁盤的功能可用,但它仍處於 alpha 狀態(即使它被記錄為處於 beta 軌道中)並且需要特殊的每個項目啟用。

注意: 此 GitHub 問題指出該功能仍處於 alpha 階段,即使它被標記為 beta。 如果您想搶先體驗此功能,您可以通過 Cloud Console 提交反饋以請求為您的項目提供反饋,但不保證會啟用該功能。


假設您的項目有權使用此功能(或該功能成為公共訪問權限),請注意它帶有一些警告:

--multi-writer

在多寫入器模式下創建磁盤,以便它可以通過讀寫訪問連接到多個 VM。 只能與地區性 SSD 永久性磁盤一起使用。 多寫入模式的磁盤不支持調整大小和快照操作。

您可以通過以下方式使用它:

$ gcloud beta compute disks create DISK_NAME --multi-writer [...]

注意注意事項:

  • 僅限區域 SSD 永久性磁盤
  • 沒有磁盤調整大小
  • 沒有快照

如果您不能接受這些權衡,請參閱原始答案(如下),其中有一長串推薦的存儲替代方案,用於在多個 GCE 虛擬機之間共享數據。


原答案(2020-06-16 之前有效)

不,這是不可能的,正如在撰寫本文時引用文檔所說(自更新后):

但是,如果您將一個永久性磁盤附加到多個實例,則所有實例都必須以只讀模式附加永久性磁盤。

從那時起,文檔已重新整理; 新文檔位於不同的 URL但具有相同的內容:

您可以在只讀模式下將非根永久性磁盤附加到多個虛擬機實例,這允許您在多個實例之間共享靜態數據。 從一個永久性磁盤在多個實例之間共享靜態數據比將數據復制到單個實例的唯一磁盤更便宜。

如果您將一個永久性磁盤附加到多個實例,則所有這些實例都必須以只讀模式附加永久性磁盤。 無法以讀寫模式將永久性磁盤附加到多個實例。 如果您需要在多個實例之間共享動態存儲空間,請將您的實例連接到Cloud Storage創建網絡文件服務器

如果您有一個包含要在多個實例之間共享數據的永久性磁盤,請將其與任何讀寫實例分離,並以只讀模式將其附加到一個或多個實例。

這意味着您不能讓一個實例具有寫訪問權限,而另一個實例具有只讀訪問權限。

如果要在它們之間共享數據,則需要使用 Persistent Disk 以外的其他東西。 下面是一些可能的解決方案。

您可以使用以下任何托管/托管服務

或者,您可以運行自己的

  • 自我管理或第三方管理的文件服務器解決方案,包括 NetApp 和 Panzura
  • 自我管理的Elastifile 存儲部署(對於完全管理,請參閱上一節的鏈接)
  • 數據庫(無論是 SQL 還是 NoSQL)
  • 分布式文件系統,如CephGlusterFSOrangeFSZFS等。
  • 文件服務器,如NFSSAMBA
  • 單個虛擬機作為數據存儲節點,並使用sshfs從想要訪問該數據的其他虛擬機創建 FUSE 掛載

GCP 具有用於“多寫入”永久性磁盤的 Alpha 功能。 它已經處於 alpha 階段很長時間了,所以誰知道它是否會很快進入 beta 或 ga。 這是文檔的鏈接。 https://cloud.google.com/sdk/gcloud/reference/beta/compute/disks/create#--multi-writer編輯:2020-06-16。 這已升級為測試版。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM