У меня стоит 2 роутера
FreeBSD 8.2-STABLE #0: Tue Sep 27 13:00:25 EEST 2011
r...@router1.informalians.org:/usr/obj/usr/src/sys/Kernel amd64
Timecounter "i8254" frequency 1193182 Hz quality 0
CPU: Intel(R) Xeon(R) CPU 3050 @ 2.13GHz (2128.01-MHz K8-class CPU)
Origin = "GenuineIntel" Id = 0x6f6 Family = 6 Model = f Stepping = 6
Features=0xbfebfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE>
Features2=0xe3bd<SSE3,DTES64,MON,DS_CPL,VMX,EST,TM2,SSSE3,CX16,xTPR,PDCM>
AMD Features=0x20100800<SYSCALL,NX,LM>
AMD Features2=0x1<LAHF>
TSC: P-state invariant
real memory = 2147483648 (2048 MB)
avail memory = 2053545984 (1958 MB)
ACPI APIC Table: <PTLTD APIC >
FreeBSD/SMP: Multiprocessor System Detected: 2 CPUs
FreeBSD/SMP: 1 package(s) x 2 core(s)
cpu0 (BSP): APIC ID: 0
cpu1 (AP): APIC ID: 1
26.09.2011 23:31, Владимир Друзенко пишет:
Доброго времени суток, коллеги!
По мотивам активно обсуждаемой в данный момент темы "zfs" возникло
несколько вопросов.
Занимаюсь сейчас в фоновом режиме поднятием файл сервера
(высоконагруженным он не будет, но несколько десятков одновременных
пользователей с не большими файлами по SMB/NFS на нём точно будут + в
среднем не более одного качающего/заливающего что-то тяжёлое типа
дистрибутивов или образов CD/DVD).
Железо следующее (куплено было относительно давно и сейчас
дополнительный бюджет очень ограничен - читай 0$, и только при крайней
необходимости):
мама: Intel® Server Board S5000PSLSATAR (2xLGA771)
http://ark.intel.com/products/46546/Intel-Server-Board-S5000PSLSATAR;
проц (один): Intel® Xeon® Processor 5030 (4M Cache, 2.66 GHz, 667 MHz
FSB)
http://ark.intel.com/products/27208/Intel-Xeon-Processor-5030-%284M-Cache-2_66-GHz-667-MHz-FSB%29
- последняя линейка нетбёрстов (видимо аналог P4 CedarMill 65нм) 2
ядра + гипертрединг;
память: 2x1Gb DDR2 FB-DIMM 667MHz;
3Ware PCI-X SATA RAID (модель не вспомню, но если будет критично, то
обязательно напишу) 4xSATA;
4x500Gb SATA Samsung + ещё несколько различных SATA дисков разных
объёмов, которые буду подключать к маме напрямую.
Для тестов поставил лежавшую под рукой 8.1. Тестировал dd иdiskinfo -t
(цель не повторить реальную нагрузку, а хотя бы примерно оценить на
что можно рассчитывать).
Аппаратный RAID10 (на контроллере 3Ware)из 4x500Gb Sumsungдаёт свыше
150Mb/s на чтение! Но это несколько расточительно в плане объёма при
ограниченном бюджете.
Сделал аппаратный RAID5 (на контроллере 3Ware) - скорость чтения
примерно равно скорости чтения одиночного винта - ~80-90Mb/s.
Все RAID с Chunk Size 256Kb. Постараюсь в ближайшее время провести
повторные измерения, но с Chunk Size 64Kb (128Kb контроллер выставить
не позволяет).
Начал смотреть в сторону ZFS, а именно raid-z. Литературы перечитал
прилично, но просветление так полностью и не пришло. :-]
Вот мы и добрались до вопросов:
1. 2Gb памяти для zfs:
работать будет, только не забыть выключить - в loader.conf
vfs.zfs.prefetch_disable="1"
1.1. Совсем мало или жить можно? FBDIMM не дешёвая, поэтому с запасом
покупать не получится - 2Gb планка ~50$ (это дороже чем 4Gb DDR3 Reg
ECC).
1.2. Будет ли толк для ZFS, если установить amd64 (проц и мама
поддерживают), но памяти оставить 2Gb? Или для amd64 тем более надо
памяти 4+Gb? Что на счёт 6Gb?
толк будет, однозначно ставить amd64
2. Посмотрел на compression и deduplication, но сразу возникли вопросы:
compression по желанию а вот dedup не советую - скорость дисковых
операций очень падает, рекомендовано для хранилищ и где не критична
скорость записи
2.1. Хватит ли проца для этого?
хватит
2.2. Не окажется ли, что RAID10 (zfs или 3Ware) + compress + dedup
медленней, чем RAID5 (3Ware), а raid-z + compress + dedup так и подавно?
Нагуглил много упоминаний, что современные процы вполне себе быстро
справляются с подобными задачами и не являются узким местом, но в моём
случае процессор не такой и современный. Покупать такой же второй за
200$, IMHO, деньги на ветер. Более современные на замену этому тоже
уже устаревшие - серия Xeon E5400 (цены на них от 200-300$). Да и
вообще экономическую целесообразность имеет смысл обсуждать, когда
известно, на сколько это поможет.
если мамка позволяет SATA +NCQ - викинуть рейд и собрать с новым ATA_CAM
драйвером, если нет - оставить, но рейд сделать на ZFS, на 3Ware диски
jbod режим.
чем больше параллелизм - тем быстрее скорость
вот примерная статистика при закачке файла по ftp (скорость 10 Mb/sec)
<root> zpool iostat 1
capacity operations bandwidth
pool alloc free read write read write
---------- ----- ----- ----- ----- ----- -----
zrouter 18,9G 271G 0 39 6,37K 245K
zrouter 18,9G 271G 0 0 0 0
zrouter 18,9G 271G 0 218 0 20,2M
zrouter 19,0G 271G 0 440 0 33,6M
zrouter 19,0G 271G 0 0 0 0
zrouter 19,0G 271G 0 0 0 0
zrouter 19,0G 271G 0 0 0 0
zrouter 19,0G 271G 0 149 0 17,3M
zrouter 19,0G 271G 0 429 0 37,3M
zrouter 19,0G 271G 0 0 0 0
zrouter 19,0G 271G 0 223 0 27,9M
zrouter 19,0G 271G 0 0 0 0
zrouter 19,0G 271G 0 255 0 23,4M
zrouter 19,1G 271G 0 427 0 30,1M
zrouter 19,1G 271G 0 0 0 0
zrouter 19,1G 271G 0 0 0 0
zrouter 19,1G 271G 0 0 0 0
zpool status
pool: zrouter
state: ONLINE
scan: none requested
config:
NAME STATE READ WRITE CKSUM
zrouter ONLINE 0 0 0
mirror-0 ONLINE 0 0 0
gpt/disk0 ONLINE 0 0 0
gpt/disk1 ONLINE 0 0 0
errors: No known data errors
2.3. Если сильно не хватит текущего проца, то на сколько поможет
докупка второго или замена на Xeon E54xx?
проца хватет
Идеальным будет вариант оставить 2Gb, получить 1500Gb из 4x500Gb (с
возможностью вылета одного из дисков), неважно i386 или amd64, и это
всё даёт на чтение не ниже 150Mb/s и что-то в том же духе на запись.
Если есть какие реальные тесты - с удовольствием почитаю. Личный опыт
- ещё лучше.
За ранее спасибо за любую помощь!
И прошу прощения за простыню. [-:
Дерзайте :)