Я постараюсь изо всех сил сформулировать это, чтобы это не считалось списком покупок.
В течение некоторого времени мы успешно запускали среду разработки / тестирования ESXi с парой серверов Dell PE2950III через стартовый комплект HP MSA2012fc (с коммутатором HP Class B SAN на базе Brocade). Это сработало для нас очень хорошо, но, находясь в разработке / тестировании, оно сопровождается различными оговорками в отношении времени безотказной работы / производительности.
В любом случае предполагаемый успех платформы разработки / тестирования привел к призывам к более «готовой к производству» платформе виртуализации. В данный момент мы готовим рекомендации.
Однако одна из претензий к существующему стеку - отсутствие поддержки Другой технологии виртуализации (HyperV, Xen и т. д.), поскольку LUN SAN полностью выделены и отформатированы как VMFS. Это то, что нам сказали преодолеть, но, как правило, нет никаких указаний на использование HyperV / Xen (и мы не особенно хотим тратить `` дорогие '' ресурсы хранения, выделяя LUN таким, где он не будет использоваться).
Таким образом, наше текущее направление мышления состоит в том, чтобы отказаться от традиционной волоконно-оптической сети SAN в пользу простой системы CentOS (вероятно, более высокого уровня HP ProLiant DL380p Gen8), на которой работают демоны NFS и Samba / CIFS, с коммутатором 10GbE (возможно, Cisco Nexus серии 5000/5500).
Причина в том, что головы ESXi могут говорить о NFS, а головы HyperV могут говорить о CIFS, но оба в конечном итоге указывают на одни и те же тома XFS / RAID1 + 0.
Теперь я недостаточно экологичен, чтобы думать, что 10GbE позволит мне получить истинную пропускную способность ввода-вывода 10 гигабит между головками и дисками, но я не знаю, какие накладные расходы я могу ожидать от реализации NFS и CIFS (и любые другие биты, которые могут мешать, когда с ним пытается связаться более одного хоста).
я я в надежде получить хотя бы возле к устойчивой скорости чтения / записи дисков с прямым подключением для как можно большего числа хостов. Глядя на веб-сайты различных производителей приводов, я примерно ожидаю, что это будет где-то около отметки 140–160 МБ / с (если я ошибаюсь, дайте мне знать).
Какие рекомендации / руководства / дополнительные материалы для чтения может предложить кто-либо в отношении конфигурации коммутатора Linux / NFS / Samba или 10GbE, который мощь помочь достичь этого?
Я понимаю желание перейти от чистого блочного хранилища к чему-то более гибкому.
Однако я бы не стал использовать для этого простой стек хранения Linux, когда прямо сейчас доступно несколько предложений программного обеспечения для устройств хранения. Подход Linux мог работают, но отсутствие функций управления / поддержки, требуется настройка XFS (Вот и Вот) и то, что это не у специально созданной ОС для хранения есть недостатки.
Добавьте к этому некоторые назойливые проблемы с разработчиком кода XFS / RHEL и неприятную ошибку ядра, которая влияет на среднюю загрузку системы, и описанная вами комбинация Linux становится менее привлекательной.
Чистый Linux мог для этой цели, но настройка, безусловно, будет выходить за рамки нормы и может использовать эзотерические решения, такие как ZFS в Linux или не очень готов к прайм-тайму Btrfs. Подробнее об этом позже.
Я делаю это часто, выбирая NFS в хранилище на основе ZFS для большинства развертываний VMware, а не SAN начального уровня, например массив HP P2000. Я дополняю установку ZFS устройствами L2ARC (чтение) и ZIL (запись) SSD и DRAM. Вдобавок я уже четыре года использую 10GbE с таким типом установки.
Я сосредоточусь на NexentaStor на данный момент, поскольку это программное обеспечение устройства, которое я использую большую часть времени ...
Я построил множество систем на базе HP ProLiant для хранения ZFS, начиная с универсальные хосты VMware автономно DL380 запоминающая "техника" для полнофункциональных многопутевых подключений SAS к модулям JBOD каскадного хранилища (фронт и тыл).
NexentaStor и NFS / CIFS.
Nexenta поддерживает представление файлового и блочного хранилища внешним системам. Я могу взять пул из 24 дисков и предоставить хранилище iSCSI хостам, которым требуется собственное блочное хранилище, NFS для моей инфраструктуры VMware ESXi и CIFS для нескольких клиентов Windows. Пространство используется эффективно и вырезано из хранилища бассейна. Например. никаких искусственных шапок. Сжатие прозрачно и очень помогает в сценариях виртуальных машин (меньше перемещений по сети).
10GbE помогает, но это зависит от того, что вы представляете своим хостам виртуализации. Будут ли они также 1GbE или 10GbE?
Контрольные показатели:
Я проведу быстрый тест гостевой виртуальной машины, работающей на хосте ESXi, подключенном через 10GbE к NexentaStor SAN.
Это будет массив из 6 дисков. (в корпусе HP D2600 - 600 ГБ 15k SAS)
[root@Test_VM /data]# iozone -t1 -i0 -i1 -i2 -r1m -s6g
Iozone: Performance Test of File I/O
Run began: Mon Feb 11 18:25:14 2013
Record Size 1024 KB
File size set to 6291456 KB
Command line used: iozone -t1 -i0 -i1 -i2 -r1m -s6g
Output is in Kbytes/sec
Children see throughput for 1 initial writers = 128225.65 KB/sec
Children see throughput for 1 readers = 343696.31 KB/sec
Children see throughput for 1 random readers = 239020.91 KB/sec
Children see throughput for 1 random writers = 160520.39 KB/sec
Это идет на загруженный массив из 16 дисков (в корпусе HP D2700 - 300 ГБ 10k SAS).
[root@Test_VM2 /data]# iozone -t1 -i0 -i1 -i2 -r1m -s4g
Iozone: Performance Test of File I/O
Run began: Mon Feb 11 16:33:53 2013
Record Size 1024 KB
File size set to 4194304 KB
Command line used: iozone -t1 -i0 -i1 -i2 -r1m -s4g
Output is in Kbytes/sec
Children see throughput for 1 initial writers = 172846.52 KB/sec
Children see throughput for 1 readers = 366484.00 KB/sec
Children see throughput for 1 random readers = 261205.91 KB/sec
Children see throughput for 1 random writers = 152305.39 KB/sec
Графики ввода-вывода для одного и того же прогона ... Килобайт / сек и показатели IOPS.
Использование хоста Linux, обеспечивающего хранилище CIFS для хостов Hyper-V, нецелесообразно и определенно не поддерживается Microsoft. Когда вы говорите о таком важном, как виртуализация для критически важной бизнес-инфраструктуры, вам определенно нужна поддержка поставщика.
Вам потребуется либо предоставить более традиционное хранилище iSCSI или Fibre Channel для своих серверов Hyper-V, либо, если вы планируете использовать Windows 2012, вы можете использовать службы хранилища Windows 2012 для предоставления iSCSI своим хостам.
Другая возможность - запустить Windows 2012 или что-то вроде Nexenta в качестве виртуального гостя в вашей инфраструктуре VMWare, чтобы обеспечить iSCSI для ваших гостей Hyper-V. Это не самая производительная конфигурация, но тоже неплохая. Поскольку размер вашего Hyper-V невелик или его нет, это может быть хорошим компромиссом для максимальной гибкости без выделенного LUN.
В противном случае вам понадобится что-то, что полностью виртуализирует ваши LUN, например HP LeftHand SAN. В LeftHand диски не предназначены для LUN. Вместо этого все LUN распределяются по всем дискам. Звучит немного странно, но продукт хороший.
Это, вероятно, частично мой фон и опыт, но я бы не рекомендовал домашнее серверное решение для хранения виртуальных машин в том, что можно было бы считать «производственной» или «корпоративной» средой.
Я бы посмотрел на основных поставщиков хранилищ, которые могли бы предоставить решение SAN, но с парой головок NAS с высокой доступностью для экспорта базовой файловой системы как NFS / CIFS поддерживаемым, сертифицированным способом.