Назад | Перейти на главную страницу

Программный RAID под хранилищем данных ESXi

Я создаю виртуальную среду для малого бизнеса. Он основан на одном хосте ESXi 5.1, на котором будет размещено около полдюжины виртуальных машин. Однако у меня есть некоторые сомнения относительно того, как реализовать хранилище. Я, естественно, хочу, чтобы хранилище данных было отказоустойчивым, но я не могу получить средства ни на отдельную машину хранения, ни на дорогие аппаратные решения RAID, поэтому я хотел бы использовать некоторый программный RAID (скорее всего, lvm / mdadm). Как это можно реализовать? Моя единственная идея до сих пор заключалась в создании виртуальной машины, которая имеет адаптер хранилища в качестве сквозного, помещает некоторый программный RAID поверх дисков, а затем представляет полученные тома «обратно» на хост ESXi, который затем создает хранилище данных, из которого другие виртуальные машины представить их хранилище.

Это похоже на обходной маневр, есть ли у меня варианты получше? Судя по моим исследованиям, сквозная передача имеет ряд недостатков, таких как отсутствие приостановки / возобновления и т. Д.

ESXi не является ОС общего назначения и не должна считаться таковой - строго придерживайтесь Списка совместимого оборудования и, следовательно, используйте проверенный и одобренный аппаратный адаптер RAID. Сделайте что-нибудь еще, и вы присоединитесь к кучке других, которые срезают углы и в конечном итоге снова здесь жалуются, что их системы не работают или они потеряли данные - мы получаем МНОГО из них.

Это похоже на обходной маневр, есть ли у меня варианты получше?

Ваша общая идея точна. Я бы лично предложил использовать ZFS с Solaris или FreeBSD, но mdadm также может работать. Возможно, хотя вы не получаете всех преимуществ, о которых я пишу в этом посте, примите это как отказ от ответственности. Пост будет довольно длинным, заранее прошу прощения за стенку текста.

Судя по моим исследованиям, сквозная передача имеет ряд недостатков, таких как отсутствие приостановки / возобновления и т. Д.

Вот некоторые из них:

  1. Работает только с поддержкой vt-d (или AMD IOMMU) на CPU (Intel) или плате CPU + (AMD): нет проблем, сегодня сложно получить сервер без него, так как он есть в каждом процессоре Intel, кроме Atoms (даже в базовых системах от HP, Dell и других)
  2. Невозможно создать VMware-снимки всех ВМ с сквозными элементами: теоретически проблема, но это влияет только на вашу виртуальную машину хранения, которая имеет минимальную настройку конфигурации и не используется ни для чего другого. Вы можете делать снимки на уровне хранилища, где они быстрее, дешевле и не замедляют работу системы. Кроме того, вы можете без проблем делать снимки всех других виртуальных машин на хосте (и даже комбинировать их со снимками файловой системы для получения мощных опций восстановления и длительного архивирования состояний).
  3. Ваша внутренняя сложность увеличена в некоторых областях: На первый взгляд, это правда - вы добавляете дополнительный уровень, и вам нужно управлять большим количеством вещей, например, вашим новым внутренним SAN (настройка сети / VLAN в VMware) или самой виртуальной машиной хранения (обновления и т. Д.). Но, с другой стороны, у вас также есть простота и гибкость:
    • Согласованные резервные копии работающих виртуальных машин могут быть созданы автоматически с помощью нескольких простых сценариев и совершенно бесплатны. Их также можно хранить на другом компьютере, диске или в облаке (в зашифрованном виде) без каких-либо дополнительных дорогостоящих программных решений.
    • Если ваш сервер выходит из строя, просто купите другую готовую замену, установите ESXi, включите сквозную передачу, настройте сеть, добавьте диски и загрузите виртуальную машину хранилища. После того, как он будет запущен, повторно просканируйте свое хранилище, и вы увидите, что все ваши данные в безопасности, и вы это знаете (вместо этого с HW RAID, как вы надеетесь).
    • Особые требования могут быть выполнены с минимальными изменениями по мере необходимости. У компании есть устаревшее приложение, которому для резервного копирования требуются локальные диски? Просто настройте iSCSI и прозрачно представьте свое хранилище. Они растут и им нужно больше места для хранения? Просто увеличьте пул, добавив больше дисков, и представьте их либо непосредственно через iSCSI, либо через VMware (NFS или iSCSI с vmdk наверху). Они хотят использовать базу данных на отдельном мощном сервере? Просто откройте свою NFS в другой LAN / VLAN и предоставьте ее новому серверу как «настоящую» SAN.
  4. Сквозной режим GPU работает только для дорогих карт Nvidia и всех карт AMD: В настоящее время это так, но вашей виртуальной машине хранения ни в коем случае не требуется выделенный графический процессор.

Есть также общие неприятности, не связанные с сквозной передачей:

  1. Чтобы перезагрузить виртуальную машину хранилища, необходимо сначала выключить все остальные виртуальные машины, которые от нее зависят: Об этой очевидной проблеме редко говорят, но, на мой взгляд, она раздражает больше всего. Конечно, обновления самого ESXi также требуют полной перезагрузки, но, поскольку теперь у вас две системы, время может не синхронизироваться идеально. Я рекомендую стабильную операционную систему и выстраивать некритические обновления между обеими системами. Кроме того, следует ограничить виртуальную машину хранилища ее собственной внутренней виртуальной локальной сетью, что еще больше снизит потребность в применении исправлений сразу после их выпуска. Обратите внимание, что это также относится к случайным перезагрузкам виртуальной машины хранения из графического интерфейса.
  2. Ошибки в базовом стеке делают всю вашу машину неработоспособной: Этот риск увеличивается по сравнению только с ESXi, потому что теперь у вас есть две системы и два сетевых стека между ними. С другой стороны, как ваша виртуальная машина хранения, так и ESXi должны быть стабильными, а ошибок должно быть немного. Тем не менее, я советую запланировать обновления через несколько дней / недель после выпуска, чтобы вы могли видеть, возникли ли проблемы у других. С другой стороны, отсутствие изменения конфигурации означает, что она очень стабильна, что является плюсом для SME (требуется меньше поддержки).
  3. Решение не известно стороннему персоналу службы поддержки: Это довольно редкая установка, поэтому вероятность того, что ваша случайная замена сможет понять это без вашей документации с самого начала, мала - это может быть проблемой или преимуществом, в зависимости от ваших бизнес-целей. Его можно смягчить с помощью некоторой базовой документации, объясняющей структуру настройки (используйте изображения / диаграммы!), Сравнения с традиционной настройкой RAID и что делать в общих проблемных случаях (резервное копирование, восстановление, замена диска, обновления, сетевые изменения, аппаратное расширение).

Помимо технических вопросов, вы должны думать о своих целях и способах их достижения. Это определяет практичность выбранного вами решения, его достоинства и недостатки, а также ваш общий результат (успех или неудача). Это то, что во многом зависит от потребностей самого бизнеса. Некоторые соображения за или против предлагаемого решения с точки зрения бизнеса:

  • Бюджет: есть предприятия, которые могут оправдать выплату нескольких тысяч долларов в год за контракт на поддержку, который почти никогда не используется, потому что один раз он стоит для них намного больше. Есть предприятия, которые могут платить только за немедленную отдачу и которые могут справиться с неожиданными простоями довольно дешево / гибко, поэтому деньги будут потрачены впустую.
  • Требования безопасности: есть предприятия, где один-единственный уничтоженный или поврежденный файл, созданный 10 лет назад, недопустим, а в других случаях даже полная потеря всех текущих данных является лишь неудобством. В зависимости от этого меняются потребности в резервных копиях, моментальных снимках и т. Д.
  • Структура поддержки: есть компании, которые хотят купить машину, настроить ее, а затем запускать (виртуально) вечно без какой-либо потребности в поддержке, а также другие компании, которые хотят и нуждаются в постоянных изменениях, обновлениях и прямой поддержке людей, которым они доверяют.
  • Требования к гибкости: есть предприятия, которые меняются так быстро, что вы не можете заранее увидеть их потребности, что может быть, а может и не быть аргументом в пользу более гибкой настройки. С другой стороны, есть такие, которые никогда не меняются и ценят стабильность и предсказуемость превыше всего.

Вы должны помнить об этом в любом случае. Ваше решение может быть успешным только в том случае, если вы соответствуете целям, неважно, что выберет большинство, только то, что: а) технически возможно реализовать, б) в рамках бюджета, в) соответствовать целям бизнеса. Если все эти пункты соблюдены и вам все еще нужно решить, выберите более простое / менее сложное решение (KISS). Если они одинаково просты, выберите тот, который принесет вам больше денег и / или счастья.

Я бы вас уволил, если бы я был небольшим бизнесом, и вы развернули бы что-то вроде этого ... Но это общая тема. VMware имеет четко определенную список совместимого оборудования. Однако при использовании в качестве автономного сервера вы НЕОБХОДИМОСТЬ аппаратный RAID. Диски без RAID тоже будут работать, но это не то, что вам нужно. Итак, мои вопросы:

  • Недостаточно средств для хранения? Что это за серверное оборудование? Вы можете позволить себе диски, но без RAID-контроллера? Совместимый RAID-контроллер стоит недорого.
  • Разве это не случай управления ожиданиями клиентов? Отдельное хранилище явно будет дороже, чем аппаратный RAID.
  • Пока универсальные решения для хранения данных возможны, они лучше всего подходят для конкретных технических требований, а не для экономии средств.

Это случай злоупотребления VMware. Программный RAID не поддерживается. Я бы вернулся к заказчику и пересмотрел сборку / требования.

"Сколько стоят ваши данные?"

Посмотрите этот блог, чтобы увидеть пример использования ZFS в качестве резервного хранилища. http://blog.laspina.ca/ubiquitous/encapsulating-vt-d-accelerated-zfs-storage-within-esxi

При этом предупреждения об использовании стандартного оборудования действительны. ESXi довольно разборчив.

«Я, естественно, хочу, чтобы хранилище данных было отказоустойчивым, но у меня нет средств ни на отдельную машину хранения, ни на дорогие аппаратные решения RAID, поэтому я хотел бы использовать программный RAID (скорее всего, lvm / mdadm). Как это можно реализовать?

esxi не будет работать без НАСТОЯЩЕГО HW-массива RAID для хранилища данных.. Не сработает даже программный рейд на основе BIOS.

I run a HW backed 2x1TB SSD datastore for VMS

Получил свой рейд-контроллер Adaptec 6405e за 100 $ на Ebay!

НО что касается следующей части,

Моя единственная идея до сих пор заключалась в создании виртуальной машины, которая имеет адаптер хранилища в качестве сквозного, помещает некоторый программный RAID поверх дисков и затем представляет полученные тома «обратно» хосту ESXi, который затем создает хранилище данных, из которого другие виртуальные машины представьте их хранилище ".

Мой "FileServer" состоит из Жесткие диски 4x5TB передаются напрямую на виртуальную машину. Затем я построил mdadm Raid 5 на общую сумму около 14 ТБ и экспортировал это через NFS ко всем моим виртуальным машинам. Около 15/20 в любой момент времени с 10/20 виртуальными машинами разработчика, которые выключены, если они не используются. У меня это хорошо сработало, но не для большой группы пользователей. Фактически, я действительно единственный локальный пользователь, но я размещаю веб-сайты, которые генерируют некоторый трафик, но опять же, они в основном статичны.

Хороший вопрос, который следует задать в этом сценарии, если вы думаете об использовании этой идеи: для чего нужен FileServer?

В моем случае 90% моей виртуальной машины, если не все, размещают все необходимые данные внутри виртуальной машины (linux) и имеют размер менее 20 ГБ. Я использую FileServer в качестве центрального репозитория для резервного копирования, а также любые мультимедийные приложения, такие как Plex, будут читать с FileServer, а мой P2P сохраняет непосредственно на FileServer, но ни один из моих хостов не имеет базы данных или чего-либо, что находится на FileServer. Однако они делают все свои резервные копии на FileServer. Мой файловый сервер - это моя единственная виртуальная машина, на которой размещены 2 службы, и это NFS для виртуальных машин, а также SMB для доступа к Windows через графический интерфейс. У меня это прекрасно сработало. Я также смонтировал FileServer через NFS в качестве хранилища данных, и я могу смонтировать ISO на новые виртуальные машины из хранилища данных. Я также создаю резервные копии снимков OVA через SMB в Windows непосредственно на FileServer. Запуск виртуальных машин в экспортированном программном рейде NFS был бы безумием, но экспорт большого хранилища данных NFS обратно на хост esXi имеет много преимуществ.

В ESXi есть поддержка программного RAID для контроллера HPE Dynamic Smart Array. Я использую его на DL20 g9 с зеркальными твердотельными накопителями Enterprise, и он отлично работает.

http://www8.hp.com/us/en/products/servers/solutions.html?compURI=1499005#tab=TAB4

Тем не менее, я только что купил Smart Array 440 на eBay за 200 долларов, который является аппаратным RAID без всякой причины, кроме как когда есть выбор, всегда используйте аппаратное обеспечение.

Я большой поклонник программных RAID-массивов (Linux), потому что они гибкие, экономичные, простые в управлении и полностью предсказуемые. В реальных сценариях они всегда превосходят по скорости аппаратные RAID-контроллеры среднего уровня. ЕДИНСТВЕННАЯ проблема - обеспечить надежную передачу RDM или контроллера диска на виртуальную машину, на которой работает NAS. Самые недорогие контроллеры LSI в режиме IT делают свое дело. Я получаю потрясающую скорость и стабильность с программным RAID10 на виртуальном NAS на базе Openmediavault (адаптер Vmxnet3, контроллер паравиртуального диска), который экспортирует хранилище данных для других виртуальных машин на том же хосте через NFS (внутренняя связь 10 Гбит).

Это просто вопрос бюджета. Если ваш бюджет неограничен - выбирайте RAID-адаптеры высшего класса от Whitelist. Если вы хотите сэкономить и знакомы с внутренним устройством ESXi и NAS - используйте программные рейды.

Я вижу все негативные комментарии и понимаю, что эти люди не знают, как работает VSAN. уволить кого-нибудьпросто потому, что они используют технологию, которую VMware поддерживает в своем собственном продукте? Честно говоря, это больше говорит о том, что у менеджера не хватает навыков поиска и принятия советов или постоянного обучения.

Прочтите о старом проекте Poor Man's SAN (PMS), где два хоста с сквозной передачей на дисковых устройствах будут Glusterfs для томов и обслуживают полученное блочное хранилище через iSCSi обратно в тот же кластер. Это было гениально.

Я думаю, что ваша идея вполне может сработать. См., Например, https://communities.vmware.com/message/2368577#2368577

Жалко, что ESXi не поддерживает mdadm. Итак, ваша идея звучит как круглая, но я предполагаю, что если вы все настроите правильно, будут очень незначительные накладные расходы на производительность. См. Следующую статью о производительности: https://www.linux.com/news/hardware/servers/8222-benchmarking-hardware-raid-vs-linux-kernel-software-raid

Если у вас небольшая установка, mdadm, вероятно, будет использовать только 5-25% одноядерного процессора. По моему собственному опыту, у меня было очень низкое использование процессора mdadm на сервере CentOS с RAID 5, который был подключен к ESXi как общий ресурс NFS в сети 1 Гбит. Однако у нас была проблема с виртуальными машинами, которые использовали тяжелые диски (в основном не из-за программного RAID, а из-за NFS). Подробности см. В моем другом ответе: https://serverfault.com/a/608120/118677.

Еще одним преимуществом такой настройки будет то, что mdadm хорошо документирован, легко переподключить массив к другому серверу в случае сбоя сервера.

Однако вы должны учитывать, что обычная настройка ESXi не предполагает, что хранилище данных будет на одном сервере с самим ESXi. В вашем случае, если жесткий диск с ESXi и / или «виртуальная машина с адаптером хранилища в качестве транзитного» выйдет из строя (и, конечно, это не RAID), ваше хранилище данных больше не будет доступно. Если вы разделили хранилище данных, вам потребуется меньше действий для восстановления настроек в случае сбоя. Поэтому я считаю, что вам следует еще раз попытаться найти средства для отдельного ПК с хранилищем данных. Это может быть подержанный ПК с процессором 1-2 ГГц и контроллером SATA, на котором вы можете настроить ОС Linux с помощью mdadm.

P.S. Не забудьте настроить мониторинг (например, уведомления по электронной почте) о состоянии вашего RAID-массива mdadm.

Я полюбил ESXi, когда впервые использовал его, он мне все еще нравится, но больше не нравится, и сейчас тестирую proxmox в качестве альтернативы.

Я узнал, что VMWARE, конечно, хотят зарабатывать деньги, и у них, вероятно, есть соглашения с поставщиками оборудования о поддержке только высокопроизводительного оборудования серверного класса, что увеличивает их продажи в обмен на откаты от этих поставщиков.Я знаю еще одно правдоподобное объяснение - управлять своими поддержка накладных расходов, но я думаю, что это больше о «поощрении» людей к оборудованию серверного класса.

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

Однако мои домашние системы подключены к устройствам ИБП, а мои бизнес-системы в центрах обработки данных имеют ИБП, поставляемые центром обработки данных. Я считаю, что такие вещи, как программный zfs raid, намного безопаснее, чем что-то вроде HP smartarray, как и защита bitrot, а также прямой доступ к статусу SMART диска.

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