We have been extensively testing the feasibility of building iscsi
target servers to replace some iscsi SAN units we have.
The reasons are many, but basically you have to move up to the
$15,000.00 plus range in order to get a decent feature set on a 12+
drive unit.
Here are some features that are hard to find in an inexpensive RAID box:
Replication
Snapshots
Thin Luns
Large number of Luns per Array
To name a few.
In this regard, we have tested iscsi-target, tgt, and a couple
commercial offerings that are based upon them.
It seems to us that tgt is in reality a rewrite of iscsi-target done by
RedHat. Is that a fair assessment? The kernel modules necessary to run
tgt are in the kernel. The iscsi-target kernel module and base software
need to be built by hand or downloaded from third party repositories.
The main difference seems to be that iscsi-target uses a variable number
of child processes to handle the incoming traffic. This is the model
long used by NFS, and seems logical to me. TGT appears to use a single
daemon to manage all traffic to and from the storage and networks. This
single process often appears to be a bottleneck.
However, all things equal, the number of spindles involved in the target
seems to be the most potent performance metric.
For instance: We can achieve reasonable throughput speeds with two
1000BT ports on 15 spindles. Less than that and the results are less.
Two questions:
Are there specific kernel tunables that have an impact on
iscsi-target/tgt? I will include here the ones I have found and am using.
What is the consensus here: tgt or iscsi-target? Is tgt ready for
prime time?
Comments, speculations and criticisms welcome.
Here are my tunables:
net.core.somaxconn = 2048
net.ipv4.tcp_max_syn_backlog = 10240
net.ipv4.tcp_rmem = 20000000 20000000 20000000
net.ipv4.tcp_wmem = 20000000 20000000 20000000
net.ipv4.tcp_mem = 20000000 20000000 20000000
net.core.rmem_max = 8738000
net.core.wmem_max = 6553600
net.core.rmem_default = 524287
net.core.wmem_default = 524287
net.core.optmem_max = 8738000
net.core.netdev_max_backlog = 300000
net.ipv4.ipfrag_low_thresh = 196608
net.ipv4.ipfrag_high_thresh = 10485760
Thanks!
--
fedora-list mailing list
fedora-list@xxxxxxxxxx
To unsubscribe: https://www.redhat.com/mailman/listinfo/fedora-list
Guidelines: http://fedoraproject.org/wiki/Communicate/MailingListGuidelines