Совместное использование постоянного диска между виртуальными машинами Google Compute Engine

Из документации Google:

Можно прикреплять постоянный диск к нескольким экземплярам. Однако, если вы прикрепляете постоянный диск к нескольким экземплярам, ​​все экземпляры должны прикреплять постоянный диск в режиме только для чтения. Невозможно подключить постоянный диск к нескольким экземплярам в режиме чтения-записи.

Если вы прикрепляете постоянный диск в режиме чтения-записи и затем пытаетесь подключить диск к последующим экземплярам, ​​Google Compute Engine возвращает ошибку.

Итак, мне нужно иметь постоянный диск share в качестве интерфейса для всех моих вычислительных движков, хорошо, как вы можете писать на этом общем диске?

Мое предположение (я надеюсь) постоянный диск чтения/записи может быть присоединен только с 1 вычислительным движком, но этот же диск может делиться только чтением других > VM, это правильно?

Допустим, у меня есть 2 виртуальных компьютера Compute Engine и 2 постоянных диска, возможен ли этот поток?

  • вычислить1 читать/записывать disk1 и читать только disk2
  • compute2 чтение/запись disk2 и только чтение disk1

Ответы

Ответ 1

Нет, это невозможно, так как документация, которую вы указали, на момент написания слова (с момента обновления):

Однако, если вы прикрепляете постоянный диск к нескольким экземплярам, ​​все экземпляры должны прикреплять постоянный диск в режиме только для чтения.

Документация была переустановлена ​​с тех пор; новые документы находятся на другом URL, но с тем же содержимым:

Вы можете присоединить постоянный постоянный диск к нескольким экземплярам виртуальной машины в режиме только для чтения, что позволяет делиться статическими данными между несколькими экземплярами. Обмен статическими данными между несколькими экземплярами с одного постоянного диска дешевле, чем копирование ваших данных на уникальные диски для отдельных экземпляров.

Если вы прикрепляете постоянный диск к нескольким экземплярам, ​​все эти экземпляры должны прикреплять постоянный диск в режиме только для чтения. Невозможно подключить постоянный диск к нескольким экземплярам в режиме чтения-записи. Если вам нужно разделить динамическое пространство между несколькими экземплярами, соедините свои экземпляры с Cloud Storage или создать сетевой файловый сервер.

Если у вас есть постоянный диск с данными, которые вы хотите разделить между несколькими экземплярами, отсоедините их от любых экземпляров чтения-записи и присоедините их к одному или нескольким экземплярам в режиме только для чтения.

что означает, что один экземпляр не может иметь доступ на запись, а другой - доступ только для чтения.

Если вы хотите обмениваться данными между ними, вам нужно использовать что-то другое, кроме Persistent Disk. Ниже приведены некоторые возможные решения.

Вы можете использовать любую из следующих размещенных/управляемых служб:

В качестве альтернативы вы можете запустить свой собственный:

  • (будь то SQL или NoSQL)
  • распределенная файловая система, такая как Ceph, GlusterFS, OrangeFS, ZFS и т.д..
  • например NFS или SAMBA
  • одиночная виртуальная машина в качестве хранилища данных node и используйте sshfs для создания монтирования FUSE с других виртуальных машин, которые хотят получить доступ к этому данных