Облачная платформаAdvanced

Управление общими EVS дисками

Эта статья полезна?
Язык статьи: Русский
Показать оригинал
Страница переведена автоматически и может содержать неточности. Рекомендуем сверяться с английской версией.

Что такое совместное использование дисков?

Корпоративные системы, такие как системы финансовых транзакций или масштабные базы данных, требуют высокой доступности данных и быстрого доступа. Традиционные решения хранения часто не справляются с поддержкой одновременного доступа к одним и тем же блокам данных с нескольких серверов, что приводит к узким местам в производительности и увеличенной задержке доступа. Обеспечение того, чтобы несколько серверов могли эффективно и надёжно совместно использовать данные, поэтому является необходимым. EVS решает эту задачу. Вы можете подключить общий EVS диск к нескольким облачным серверам и получать одновременные операции чтения и записи на всех серверах. Этот высокопроизводительный диск обеспечивает надёжность для вашего приложения, и вы можете подключить один общий диск к максимум 16 серверов.

Notice

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

Рисунок 1 Сценарий применения общих EVS дисков


Сценарии использования общих дисков

  • Отказоустойчивость с высокой доступностью (HA): общий диск может быть подключён к нескольким ECS или BMS. При сбое активного узла программное обеспечение кластера (например Windows MSCS или Veritas VCS) использует SCSI‑резервирования для быстрого переключения сервисов на резервный узел. Резервный узел может читать данные, оставленные активным узлом, без репликации. Это обеспечивает восстановление в течение нескольких секунд и поддерживает непрерывную работу критически важных сервисов.
  • Совместное использование данных: для обмена файлами между серверами можно развернуть общую файловую систему или систему управления кластером, например кластер CFS. Если подключить диск к двум серверам без CFS, каждый сервер будет поддерживать собственную таблицу размещения файлов, что может привести к серьёзному перезаписыванию данных и повреждению файловой системы. CFS работает на уровне операционной системы. Он координирует операции чтения и записи от нескольких узлов на одном диске, управляет дисковым пространством и метаданными единым способом и обеспечивает согласованность данных при одновремённом доступе.

Преимущества

  • Множественное подключение: общий EVS диск может быть подключён к максимум 16 серверам.
  • Высокая производительность: случайные IOPS чтения/записи общего ultra‑high I/O диска могут достигать 160 000.
  • Высокая надёжность: общие EVS диски поддерживают как ручной, так и автоматический Бэкап, обеспечивая высоконадежное хранение данных.
  • Широкий спектр применения: общие EVS диски могут использоваться в кластерах Linux RHCS, где требуются только общие VBD диски. Они также могут применяться в кластерах Windows MSCS и Veritas VCS, требующих SCSI‑резервирования.

Характеристики и производительность

Общие EVS диски имеют те же характеристики и производительность, что и несобщие EVS диски.

Как использовать Shared VBD и SCSI Disks?

Вы можете создать shared VBD диски или shared SCSI диски. Рекомендуется подключать общий диск к ECS в той же группе анти‑аффинности ECS. Это гарантирует размещение ECS на разных физических серверах, повышая доступность и надёжность сервиса.

  • Shared VBD disks: Тип устройства вновь созданного общего диска по умолчанию VBD. Такие диски могут использоваться как виртуальные блочные устройства хранения и подходят для большинства сценариев, но они не поддерживают SCSI‑reservations.
  • Shared SCSI disks: Shared SCSI диски поддерживают SCSI‑reservations и подходят для сценариев, требующих расширенных функций хранения.

    Концепции групп анти‑аффинности ECS и SCSI reservations:

    • Политика анти‑аффинности группы ECS позволяет создавать ECS на разных физических серверах, повышая надёжность сервиса.

      Для получения подробной информации о группах ECS см. раздел "Managing ECS Groups" в Elastic Cloud Server User Guide.

    • Механизм SCSI‑reservation использует команду SCSI reservation для выполнения операций SCSI reservation. Если ECS отправляет такую команду диску EVS, диск отображается как заблокированный для других ECS, предотвращая повреждение данных, которое может возникнуть из‑за одновременных чтений/записей на диск с нескольких ECS.
    • Группы ECS и SCSI‑reservations имеют следующую взаимосвязь: SCSI reservation на отдельном диске EVS не может различать несколько ECS на одном физическом хосте. Поэтому, если несколько ECS, использующих один и тот же shared EVS диск, работают на одном физическом хосте, SCSI reservations работать некорректно. Поэтому рекомендуется использовать SCSI reservations только на ECS, находящихся в одной группе ECS, что обеспечивает работающую политику анти‑аффинности.
      Notice
      • Для повышения безопасности данных рекомендуется использовать SCSI reservations совместно с политикой анти‑аффинности группы ECS. При этом убедитесь, что shared SCSI диски подключаются только к ECS в той же группе анти‑аффинности ECS.
      • Если ECS не принадлежит ни одной группе анти‑аффинности ECS, рекомендуется не подключать к нему shared SCSI диски. В противном случае SCSI reservations могут работать некорректно, что может поставить ваши данные под угрозу.

Ограничения для Shared Disks

  • Общий диск может быть подключен к максимум 16 servers.
  • Атрибут совместного использования диска нельзя изменить после его создания.
  • Shared диски могут использоваться только как Диск с данными, а не как системные диски.
  • Система совместного доступа к файлам или система управления кластером должна быть настроена до того, как вы сможете правильно использовать совместный диск. Если просто подключить совместный диск к нескольким серверам, данные не могут быть общими между этими серверами и могут быть перезаписаны.
  • Когда совместный диск подключён к нескольким серверам, суммарная производительность диска на всех серверах не может превышать максимальное значение, разрешённое для одного диска.

Создание совместного EVS диска

Вам необходимо выбрать Share при buy disks в консоли.

Подключение совместного EVS диска

Несовместный EVS диск может быть подключён только к одному сервер, тогда как совместный EVS диск может быть подключён до 16 серверов.

Для получения подробной информации см. Attaching a Shared Disk.

Удаление совместного EVS диска

Поскольку совместный EVS диск может быть подключён к нескольким серверам, убедитесь, что совместный EVS диск отсоединён от всех серверов перед удалением.

Для получения подробной информации см. Deleting an EVS Disk.

Принципы совместного использования данных и типичные ошибки применения

Совместный EVS диск по сути представляет собой диск, который может быть подключён к нескольким серверам для использования. Он аналогичен физическому диску тем, что диск может быть подключён к нескольким физическим серверам, и каждый сервер может читать данные и записывать данные в любое пространство на диске. Если между этими серверами не определены правила чтения/записи данных, такие как последовательность чтения/записи и их смысл, чтение и запись данных между этими серверами могут конфликтовать или возникнуть другие непредсказуемые ошибки.

Совместные диски — это блочные устройства хранения, предоставляющие совместный доступ для серверов, но они не обладают возможностями управления кластером. Необходимо развернуть кластерную систему для управления совместными дисками. Распространённые системы управления кластерами включают Windows MSCS, Linux RHCS, Veritas VCS и Veritas CFS.

Если совместные EVS диски не управляются кластерной системой, могут возникнуть следующие проблемы:

  • Несоответствие данных, вызванное конфликтами чтения/записи

    Когда совместный диск EVS подключён к двум серверов (сервер A и сервер B), сервер A не может распознать дисковые пространства, выделенные серверу B, и наоборот. При этом дисковое пространство, выделенное серверу A, может уже использоваться сервером B. В этом случае происходит повторное выделение дискового пространства, что приводит к ошибкам данных.

    Например, совместный диск EVS отформатирован в файловую систему ext3 и подключён к серверу A и серверу B. Сервер A записал метаданные в файловую систему в пространстве R и пространстве G. Затем сервер B записал метаданные в пространство E и пространство G. В этом случае данные, записанные в пространство G сервером A, будут заменены. При чтении метаданных в пространстве G произойдёт ошибка.

  • Несоответствие данных, вызванное кэшированием данных

    Когда совместный диск EVS подключён к двум серверов (сервер A и сервер B), приложение на сервере A прочитало данные в пространстве R и пространстве G, затем кэшировало их. В тот момент другие процессы и потоки на сервере A также читали эти данные напрямую из кэша. Одновременно, если приложение на сервере B изменило данные в пространстве R и пространстве G, приложение на сервере A не может обнаружить это изменение и продолжает читать данные из кэша. В результате изменённые данные не могут быть просмотрены на сервере A.

    Например, совместный диск EVS отформатирован в файловую систему ext3 и подключён к серверу A и серверу B. Оба серверов кэшировали метаданные в файловой системе. Затем сервер A создал новый файл (файл F) на совместном диске, но сервер B не может обнаружить это изменение и продолжает читать данные из своего кэша. В результате файл F не может быть просмотрен на сервере B.

Прежде чем приобрести совместный диск EVS, определите тип его устройства (VBD или SCSI) на основе приложений, которые будут использовать совместный диск. Совместные SCSI‑диски EVS поддерживают SCSI‑резервирования. Перед использованием SCSI‑резервирований необходимо установить драйвер в сервер OS и убедиться, что образ ОС включён в список совместимости.

Notice

Если просто подключить совместный диск к нескольким серверов, данные или файлы не могут быть общими между серверами, поскольку у совместного диска нет возможности управления кластером. Чтобы делиться файлами между серверов, создайте совместную файловую систему или разверните систему управления кластером.

Полезные ссылки

Для получения дополнительных FAQ по совместному использованию дисков см. Sharing.