Расширяемое хранилище [закрыто]

Я разрабатываю службу веб-приложений и хочу масштабировать наши внутренние серверы.

Наш текущий сервер имеет емкость хранения ~ 1 ТБ. Пользователи создают ~ 10 ГБ данных, которые ежедневно добавляются в нашу базу данных.

Как вы можете видеть при наших текущих темпах, мы сможем поддерживать такой рост хранилища только ~ 100 дней. Мы не ожидаем замедления темпов создания данных в ближайшем будущем. Из-за характера информации мы не стремимся использовать коммерческое облачное хранилище (aws, google, microsoft, softlayer и т. Д.)

Мы хотели бы создать серверную инфраструктуру, которую можно было бы постоянно расширять (за пределы 100 ТБ) . По мере необходимости это будет постепенный процесс, охватывающий несколько серверных стоек 4U.

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

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

3
задан 14 August 2017 в 20:44
1 ответ

Даже исходя из моего ограниченного опыта, я должен сказать, что ваша проблема недооценена. Например, вы не говорите о требованиях к нагрузке, задержке и пропускной способности. Дополнительную информацию можно найти на этой странице вопросов и ответов: Можете ли вы помочь мне с планированием емкости?


Мой опыт создания и управления хранилищем объемом 140 ТБ (и расширением, 80 ТБ основного + 60 резервных) для нашей лаборатории. Мы используем его как хранилище для данных исследований (в основном данных изображений, немного геномики; без баз данных). Система состоит из двух серверов в разных серверных комнатах и ​​была разработана с возможностью расширения. Пожалуйста, отнеситесь к тому, что я пишу, с недоверием.

На наших серверах работают FreeBSD и ZFS, коробки 4U с расширителями SAS . Каждая коробка набита дисками по 4-5 ТБ. Резервное копирование новее и имеет 12 дисков по 5 ТБ, сконфигурированных как RAID6 или RAIDZ2.

Расширяемость достигается двумя путями:

  1. Каждый пул Z (например, 12x5 ТБ) может быть расширен путем добавления дополнительных 12 жестких дисков параллельно. Хитрость в том, что нам придется добавлять диски в хранилище кусками по 60 ТБ, мы не можем (AFAIK) добавить 30 ТБ, а через шесть месяцев дополнительные 30 ТБ.Если вас интересует ZFS, вам следует ознакомиться с терминологией (многие веб-сайты, включая Oracle и FreeBSD )
  2. Использование SAS позволяет нам легко добавить дополнительный блок JBOD 4U с 45 слотами для дисков, подключившись к карте HBA / RAID основного блока с помощью одного кабеля.

Итак, из того, что я знаю:

  • ZFS, при запуске на оборудовании серверного уровня, может успешно использоваться с почти отсутствует контроль за размещением 100 ТБ данных и автоматическое резервное копирование за пределами площадки
  • Расширение хранилища ZFS может быть легко выполнено с использованием расширителей SAS, если соблюдены требования к полосе пропускания
  • Возможность расширения не является «плавной» в том смысле, что Если вы сконфигурируете zpool блоками по 20 ТБ, в дальнейшем вам придется добавлять диски блоками по 20 ТБ или больше. Вы не можете просто купить жесткий диск емкостью 1 ТБ и подключить его, если у вас какой-то RAID6 / 7. В случае RAID10 вы можете это сделать, потому что вы "блокируете" по существу 1 или 2 диска

Обновление

Текущие ограничения пропускной способности системы следующие:

  1. Сеть через медный Ethernet 1 Гбит / с (весь кампус) или 10 Гбит / с (внутри стойки)
  2. Массивы RAID60 с жесткими дисками: n x 160 МБ / с (в конфигурации 4x это ~ 5 Гбит / с)
  3. Протокол SAS3 с использованием 4x12 = 48 Гбит / с (соединяет объединительную плату к HBA с использованием кабелей SAS3 4x)

Как вы можете видеть, в настоящее время мы ограничены Ethernet-сетью 1 Гбит / с, если мы работаем внутри стойки (хранилище <-> анализирующий сервер), мы будем ограничены способностью сервера принимать потоки 5 Гбит / с. Наши данные - это в основном большие файлы (5-500 ГБ), поэтому я не уверен в IOPS. Чтобы улучшить пропускную способность, в настоящее время нам необходимо установить оптоволокно в здании (наша лаборатория и серверные комнаты находятся на разных этажах), тогда мы будем ограничены скоростью наших массивов RAID60. Затем нам нужно либо добавить дополнительные полосы, либо создать хранилище на основе SSD. Эта система была создана для работы вместо жесткого диска на базе USB3, который она лучше всего работает.

2
ответ дан 3 December 2019 в 06:56

Теги

Похожие вопросы