Quelles sont les «bonnes» vitesses pour iSCSI et NFS sur Ethernet 1 Go?

9

J'ai une boîte OpenSolaris partageant deux systèmes de fichiers ZFS. L'une est une connexion NFS à un boîtier CentOS exécutant un serveur VMware (les images de disque sont stockées dans ZFS). L'autre est une connexion iSCSI à un serveur Windows 2008 avec un formatage NTFS au-dessus du ZFS. Les deux connexions sont directes sur gig-E (pas de commutateurs).

J'exécute Munin pour surveiller les boîtes, mais je ne sais pas à quel type de chiffres je dois m'attendre. Quelqu'un peut-il me donner des chiffres de base pour comparer ou faire des suggestions sur où commencer le réglage?

Voici les statistiques NFS que je vois, je publierai iSCSI une fois que je corrigerai munin sur la boîte Solaris: P

interface

client nfs

Sysadminicus
la source
Quelles unités recherchez-vous? KBPS? IO / sec?
WerkkreW
Je ne sais même pas par où commencer. J'ai mis à jour le post avec les statistiques que j'ai de munin. Faites-moi savoir s'il y a de meilleurs endroits où chercher.
Sysadminicus

Réponses:

12

Nous avons poussé une écriture Sun X4100 sur GigE lié et iSCSI vers une Sun X4500 à 280 Mo / s.

Il y a beaucoup à faire pour régler la pile TCP sur Solaris pour aider les choses, c'est ma configuration de réglage de mon stock. (extrait d'une collection de livres blancs de Sun):

$ cat /etc/rc3.d/S99ndd
#!/bin/bash

NDD=/usr/sbin/ndd

$NDD -set /dev/tcp tcp_xmit_hiwat 1048576
$NDD -set /dev/tcp tcp_recv_hiwat 8388608
$NDD -set /dev/tcp tcp_max_buf 8388608
$NDD -set /dev/udp udp_xmit_hiwat 1048576
$NDD -set /dev/udp udp_recv_hiwat 8388608
$NDD -set /dev/udp udp_max_buf 8388608
$NDD -set /dev/tcp tcp_conn_req_max_q 65536
$NDD -set /dev/tcp tcp_conn_req_max_q0 65536
$NDD -set /dev/tcp tcp_fin_wait_2_flush_interval 67500

En outre, il vaut la peine de se pencher sur votre machine OpenSolaris en modifiant l'intervalle fsflush, le réglage d'interruption "magique" et la désactivation des anneaux souples. Ajoutez ce qui suit à / etc / system (redémarrage requis):

* "fsflush" tuning
set tune_t_fsflushr = 5
set autoup = 300
* Disable the Automatic Interrupt Adjustment
set dld:dld_opt = 2
* Disable "soft rings"
set ip:ip_squeue_fanout = 0
set ip:ip_soft_rings_cnt = 0

Il convient de mentionner que je le fais sur Solaris 10 - pas sur OpenSolaris - mais je pense que les paramètres ajustables devraient fonctionner pour vous de la même manière.

Je suis un grand fan de Filebench pour jouer avec les options de réglage et faire des tests de débit.

La version (récemment renommée) d'OpenSolaris 2009.06 semble être très excitante dans le monde d'iSCSI et de ZFS.

J'espère que cela aide certains!

jharley
la source
3

J'obtiens environ 90 Mo / s sur mes baies EMC AX150i via iSCSI sur 1 Go d'Ethernet.

Brent Ozar
la source
1

Pour un seul dd ou bonnie ++ (vitesse brute, écriture linéaire), vous devriez vous rapprocher de la vitesse du fil.

Mais votre goulot d'étranglement sera la baie de disques, une fois que vous commencerez à charger la charge d'E / S aléatoire de plusieurs machines virtuelles, bien plus que le transport.

De plus, si vous n'avez pas de cache d'écriture sauvegardé par batterie avec une quantité importante de RAM, vos performances augmenteront dès que vous commencerez à obtenir beaucoup d'écritures avec tout autre IO en cours.

jwiz
la source
0

J'ai pu pousser les données via iSCSI à environ 200 Mbit / s sur des liaisons de 1 Go. Mais j'avais un RAID 6 à 14 disques hébergé par un EMC CX4-240 avec pas grand-chose d'autre utilisant le cache à l'époque.

Le plus gros goulot d'étranglement sera probablement la quantité de cache du contrôleur et la vitesse des disques (lorsque le cache sera plein).

mrdenny
la source
1
Nous avons échoué au stade de la planification en plaçant les 12 disques sur le même contrôleur. J'imagine que le partage de ceux-ci entre un autre contrôleur serait une victoire de vitesse facile pour nous.
Sysadminicus
Cela pourrait, tout dépend de l'endroit où se trouve le goulot d'étranglement. Notre RAID 6 est un contrôleur unique car il se trouve dans une seule étagère. Mais c'est dans un matériel assez haut de gamme. Où est le goulot d'étranglement? Vous devrez peut-être simplement mettre plus de cache dans le contrôleur et / ou affecter un pourcentage plus élevé de cache comme cache d'écriture.
mrdenny
J'ai une configuration similaire (mais avec AX4-5). Je n'utilise pas iSCSI, mais j'ai obtenu des transferts extrêmement rapides en utilisant des protocoles non cryptés entre deux machines sur le SAN. Je souhaite que je connaissais un bon document d'optimisation SAN.
Matt Simmons
0

J'obtiens environ 80 Mo / s sur mon serveur Windows via ISCSI sur Ethernet 1G. Cible: KernSafe iStorage Server http://www.kernsafe.com/Product.aspx?id=5 Initiateur: Microsoft Initiator www.microsoft.com/downloads/details.aspx?familyid=12cb3c1a-15d6-4585-b385-befd1319f825&displaylang= en

Disque dur: ATA 7200


la source
0

Pour ceux d'entre nous qui sont plus proches de la fin semi-pro (plutôt que pro), j'obtiens une lecture constante et cohérente de 150 Mo à 120 Mo d'écriture à partir du serveur W2012 double 1 Go nic associé via un commutateur géré draytek à blackarmorsnas via RJ45 cuivre, transfert unique de fichier de 20 Go. Aucune autre opération simultanée pendant le test. Pour y parvenir, j'utilise des trames jumbo 9k, flux rx et tx, c'est-à-dire toutes les optimisations de pilote normales, mais pas de réglages autres que d'allumer les choses et de faire monter la trame jumbo au maximum.

user174818
la source