Помогите Nic Bonding iSCSI RAMDrive - Debian
Доброе время суток, возникла проблема которую не смог решить сам поэтому прошу вашей помощи.
Необходимо добиться максимальной скорости передачи данных между 2 серверами.
При удачных тестах все введется в эксплуатацию на боевых серверах с приличным объемом РАМ
----
Что имеем:
2 одинаковых сервера (тестовая лаборатория):
P4 x64
сетевая карта 1 - 1 Гбит
сетевая карта 2 - 4-х портовая 1Гбит
4GB Ram
eth0 - интерфейс 1 карты
bond0 - бондинг с задействоваными интерфейсами eth1 eth2 eth3 eth4
Cisco Catalyst 3560G
----
Что сделано
1. Созданы виртуальные РАМдиски на каждом сервере ( mount -t tmpfs -o size=3000M tmpfs /mnt/RAMDrive/ )
2. Вроде как настроен Nic Bonding (Nic Teaming) На обоих серверах, IP 10.10.250.3 и 10.10.250.2
auto bond0
iface bond0 inet static
address 10.10.250.3
netmask 255.255.255.0
network 10.10.250.0
bond_mode balance-rr
bond_miimon 100
bond_downdelay 200
bond_updelay 200
slaves eth1 eth2 eth3 eth4
3. Поднят iSCSI-Target & iSCSI Initiator (/nmt/iSCSI)
конфиг iSCSI-target
mount -t tmpfs -o size=3000M tmpfs /mnt/tmpfs/
dd if=/dev/zero of=/mnt/tmpfs/image.img bs=1024k count=2000
Target test.802:test-debian.lun0
IncomingUser
OutgoingUser
Lun 0 Path=/mnt/tmpfs/image.img,Type=fileio
Alias LUN0
# MaxConnections 1
# ImmediateData Yes # Data can accompany command
# MaxRecvDataSegmentLength 8192 # Max data per PDU to receive
# FirstBurstLength 65536 # Max unsolicited data sequence
Далее мои результаты:
Создаем файлик 1.1 гиг dd if=/dev/zero of=/mnt/iscsi/image.img bs=1024k count=1024
И результаты скорости:
iSCSI - > RAMDrive 298MB/sec
RAMDrive - > iSCSI 177MB/sec
Как увеличить скорость?
тесты проводятся в «тепличных условиях» для дальнейшего применения на боевых серверах фирмы.
Так же на боевых машинках используется infinyband и корзинки =)
Результаты:
~# dd if=/dev/zero of=/mnt/iscsi/image.img bs=1024k count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 9.35884 s, 115 MB/s
iotop 80-260Mb/Sec
iptraf показывает 0..... новерно он не понял bonding...
Скорость работы с файлами (замерена через mc):
Копирование:
iSCSI -> RAMDrive 185-310M/Sec
RAMDrive -> iSCSI 135-185M/Sec
Перезапись файла:
iSCSi -> RAMDrive 180-320M/Sec
RAMDrive -> iSCSI 150-175M/Sec
Поставил режим balance-tlb и попробовал посоздавать файлы разных размеров вот что вышло...
# dd if=/dev/zero of=/mnt/iscsi/image.img bs=1024k count=200 && dd if=/dev/zero of=/mnt/iscsi/image.img bs=1024k count=400 && dd if=/dev/zero of=/mnt/iscsi/image.img bs=1024k count=600 && dd if=/dev/zero of=/mnt/iscsi/image.img bs=1024k count=750
200+0 records in
200+0 records out
209715200 bytes (210 MB) copied, 0.159145 s, 1.3 GB/s
400+0 records in
400+0 records out
419430400 bytes (419 MB) copied, 0.511152 s, 821 MB/s
600+0 records in
600+0 records out
629145600 bytes (629 MB) copied, 3.38926 s, 186 MB/s
750+0 records in
750+0 records out
786432000 bytes (786 MB) copied, 5.69244 s, 138 MB/s
3# dd if=/dev/zero of=/mnt/iscsi/image.img bs=1024k count=800 && dd if=/dev/zero of=/mnt/iscsi/image.img bs=1024k count=1100
800+0 records in
800+0 records out
838860800 bytes (839 MB) copied, 6.24761 s, 134 MB/s
1100+0 records in
1100+0 records out
1153433600 bytes (1.2 GB) copied, 10.3507 s, 111 MB/s
скорость РАМдрайва сама по себе нормальная.
Выше показано создание файла на РАМдиск по сети по iSCSI в bonding.
Локально на любом сервере скорость работы РАМдиска нормальная, вот результаты
# dd if=/dev/zero of=/mnt/ramdrv/image.img bs=1024k count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 0.861937 s, 1.2 GB/s
Скорость при использовании НЕ iSCSI, попытка на NFS
# dd if=/dev/zero of=/mnt/nfs/imeea.img bs=1024k count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 9.28765 s, 116 MB/s
ФТП тоже самое....