Follow Slashdot stories on Twitter


Forgot your password?
Data Storage

SANs and Excessive Disk Utilization? 83

pnutjam asks: "I work for a small to medium mental health company as the Network Administrator. While I think a SAN is a bit of overkill for our dozen servers, it was here when I got here. We currently boot 7 servers from our SAN, which houses all of their disks. Several of them have started to show excessive disk load, notably our SQL server, and our old domain controller (which is also the file/print server). I am in the process of separating our file/print server from our domain controller, but right now I get excessive disk load during the morning when people log on (we use roaming profiles). I think the disks need to be defragged, but should this be done on the servers, or on the SAN itself? When it comes to improving performance, I get conflicting answers when I inquire whether I would get better throughput from newer fibre-channel cards (ours are PCI-x, PCI-e is significantly faster), or mixing in some local disks, or using multiple fibre channel cards. Has anyone dealt with a similar situation or has some expertise in this area?"
This discussion has been archived. No new comments can be posted.

SANs and Excessive Disk Utilization?

Comments Filter:
  • Who's San Box is it? (Score:5, Informative)

    by haplo21112 ( 184264 ) <haplo@epi t h n a .com> on Thursday March 22, 2007 @08:35AM (#18441587) Homepage
    You might want to consider calling the maker for technical support. Some SAN devices require defrag at the BOX level and doing it from the Server will adversely affect your data. Others its OK either way.
    • Re: (Score:1, Informative)

      by Anonymous Coward
      Defrag at the box level? Methinks you don't know what you're talking about*

      Disk enclosures, from low end to high end, simply employ differing RAID levels to present logical disks as sequential block extents (ranges). A disk enclosure is not in the business of layout... block 001 is immediately before block 002 (although might be RAID-1 or RAID-5 or RAID-6 on the backend).

      Also, to the submitters question: Throughput is rarely the issue with SANs, 1Gb or more is more than adequate for most apps. The bottle
    • Windows network, right? don't know much about that, but let's try.
      the problems started after splitting the pdc and the file/print sharing. where are the profiles stored? on the pdc or on the file/print server? try moving them to the server that really needs them at login time.
      • by pnutjam ( 523990 )
        The problem is ongoing, we are trying to split the PDC from the file/print server to address the problem. That hasn't been accomplished yet.
    • by pnutjam ( 523990 )
      I've talked to three people who are either certified on this product or work for the manufacturer. I got three different answers with little in the way of explanation.
      • I've talked to three people who are either certified on this product or work for the manufacturer. I got three different answers with little in the way of explanation.

        Then I have two words for you: "support ticket."

        Open a ticket with their tech support. Tell them about the diagnostic steps you've taken. If possible, get someone to come out and examine the box or do maintenance on it for you.
        • by pnutjam ( 523990 )
          I'm posting this reply since I found your information useful. It turns out our SAN had 97% of it's disk space allocated to LUN's. These LUN's were nowhere near full, but the SAN still doesn't like this. Xiotech indicated their SAN's start to degrade substantially after they become 80% allocated. We added a bay of disks and have seen a vast improvement in performace. Since our license doesn't allow us to use all the space we added we shouldn't have this problem again.
    • Re: (Score:2, Interesting)

      by Sobrique ( 543255 )
      Really? I must admit, I'm surprised. SAN is just a way to attach disks over scsi. I've yet to see an array that allows you to defragment a volume (a host device). EMC Clariions will let you defrag raid groups, but that doesn't do anyhting more tham move the LUNs around on they physical devices.

      Or are you perhaps thinking of NAS (Network attached storage) devices?

      • by narf ( 207 )
        I've seen that option on some of the hybrid NAS/SAN boxes. For example, on NetApp filers, the command is called "wafl scan reallocate". You can tell it to reallocate by NetApp volume, or just a single LUN. The option exists because you can spread multiple volumes and/or LUNs over a single group of disks.
      • SANs rarely use SCSI as an interconnect (even if it uses SCSI drives). Most often fiber channel (as seems to be the case here), increasingly ethernet.

        But yeah, with a SAN you're talking about something that provides a block level interface to storage. Fragmentation is a filesystem level issue.
        • Re: (Score:2, Informative)

          by Sobrique ( 543255 )
          SCSI is the protocol, FC or ethernet is the transport. Those chunky big cables you may be thinking of, might be correctly referred to as 'Parallel SCSI', which might be the source of the confusion.
          • Actually, no. SCSI is a group of standards, including a command set and signalling. The protocol would be SCSI-1, SCSI-2, SAS, iSCSI, etc. What you're talking about is the SCSI command set, which runs over a number of signalling protocols on a variety of physical interconnects. You spoke of "attaching" disks which implies (to me, at least) interconnect (from physical connection up through device signalling).
  • by hattmoward ( 695554 ) on Thursday March 22, 2007 @08:40AM (#18441617)
    I've always kept the system disks local so the server isn't dependent on the SAN connection to boot. That said, do you have this SAN configured as a single shared filesystem or as a group of raid containers that are isolated from one another and provisioned to a single server? If it's shared, I'd say you need to take all but one server down and defragment from that. If it's not shared, they can all defragment their private filesystems at once (though I'd only do one or two at a time anyway).
    • by Gr8Apes ( 679165 )
      This is definitely a good suggestion. I'd only keep data needing solid backups on the SAN. Systems should have their own boot disks and pagefile locations locally (lowers SAN utilization).

      Then again, it truly sounds like he probably needs to review his SAN architecture. I'd probably have the DB on its own set of spindles, and having 2 domain controllers, with the primary being standalone and the secondary (and potentially tertiary if needed) doubling as print servers. Other than that, we'd need a lot more i
      • No. Booting off the SAN is usually a good idea if done correctly. You can easily snapshot and replicate the boot drives. Have a server fail? No issue. Just point another server to that volume on the SAN and boot. Plus you can do an easy DR by replicating those server drives offsite to cold systems.
        • by Gr8Apes ( 679165 )
          I assumed it was a bad idea based on the little we could glean from the submission. I'm guessing he has one set of spindles divided up into multiple partitions. In that case, it's not a good idea.
      • by pnutjam ( 523990 )
        This is probably a huge part of our problem. The SAN was sold to my predecessors as a kind of "magic box". I've avoided taking any training on it because it seems so simple to administer. In hindsight this was a mistake and I should probably take the effort to learn more about how the physical architecture relates to the assigned disks.
  • Are we talking an HP XP12000 or Bob's "Box-o-disks".
    • Re:What kind of SAN? (Score:4, Informative)

      by pnutjam ( 523990 ) <> on Thursday March 22, 2007 @09:20AM (#18441987) Homepage Journal
      Xiotech 3d 1000, w/ qlogic fibre channel cards.
      • Re: (Score:2, Informative)

        by Animixer ( 134376 )
        Here are a few things to consider.

        1. How many target ports on the magnitude 3d? For that model, I'm not sure but they are probably 2gbit each. Try to balance load across the ports via multipathing software or manual balancing (server a uses port 1, server b uses port 2, etc).

        2. What is your SAN switch topology? If hopping across ISLs make sure that you have an adequate amount of trunked bandwidth between the switches.

        3. What speed are your SAN switches? Using 1gbit switches would bottleneck a lot fas
      • by Lxy ( 80823 )
        Call Xiotech, they have some excellent SEs on staff. They can help you out far batter than /.
      • The Xiotech machinery tends to run along fine ... right up until you cross the 90% full threshold. Then performance goes in the toilet, fast. Which is probably better than getting to 100% full and crashing hard....

        Seconded on the suggestion to call Xiotech. They know their stuff and should be able to help you out.

        It's kind of funny - I'm at Novell BrainShare, and my fourth session of the day was how to diagnose poor server performance due to SAN congestion. In NetWare we have always had tools to measure h

        • by pnutjam ( 523990 )
          do you mean 90% full of data, or 90% full on allocated LUN's?
          • by Degrees ( 220395 )
            Oooof - I don't remember. I went to Xiotech training last summer, and I remember hearing "90% full is a problem" several times. 90% full on allocated LUN's makes the most sense, because the Xiotech needs to deal with striping and parity data behind the scenes. To the server, it's just a hard disk with an (initial) long spinup delay. I don't see the Xiotech caring if the blocks being requested by the OS are near the front of the (virtual) disk or the end of the virtual disk. So I'm going with option C - call
            • by pnutjam ( 523990 )
              I'm posting this reply since I found your information useful. It turns out our SAN had 97% of it's disk space allocated to LUN's. These LUN's were nowhere near full, but the SAN still doesn't like this. Xiotech indicated their SAN's start to degrade substantially after they become 80% allocated. We added a bay of disks and have seen a vast improvement in performace. Since our license doesn't allow us to use all the space we added we shouldn't have this problem again. Thanks for your insight.
    • Re: (Score:1, Offtopic)

      by DaMattster ( 977781 )
      Personally, I like Bob's "Box-o-Discs." Easier, cheesier, and square . . . .
  • by PapaZit ( 33585 ) on Thursday March 22, 2007 @09:10AM (#18441873)
    First, what do you mean by excessive disk load? I'm not being facetious here. Do you mean that the SAN unit is pegged. How do you know that? Are the servers spending a lot of time waiting for I/O? Is the unit making loud noises? Or are the machines that are connected to the server just slow without the processor being pegged?

    Also, while "have you tried defragging?" is a common home troubleshooting tip, it's not clear how you came up with the idea that the SAN has to be defragged. If you have reasons and you're just simplifying to keep the post short, great. Defrag away according to the SAN manufacturer's recommendations. However, don't become obsessed with it unless you know that fragmentation's an issue.

    You need to spend some time benchmarking the whole system. Figure out how much disk, processor, network IO, and SAN IO are being used. Know what percentage of the total that is. Figure out exactly which servers are causing performance problems at which times.

    "Find the problem" is always the first step in "fix the problem."
    Once you know what's going on, you can deal with the problem intelligently. Are all the servers booting at the same time? Give them different spindles to work from or stagger the boot times. Are all of the users logging in at once? Figure out why that's slow (network speed, SAN, data size, etc.) and split the data across multiple servers and SANS or improve the hardware.

    If you can make the case with hard data that the SAN is swamped, you can probably pry money from management to fix the problem. However, guessing that it -might- be something won't get you very far. They don't want to spend $20k on a fix to be told, "Nope. It was something else."
    • by pnutjam ( 523990 ) <> on Thursday March 22, 2007 @09:44AM (#18442333) Homepage Journal
      I use Big Sister to monitor all my servers. I get nice graphs that show memory, CPU, network load, disk utilization, etc. I looked and looked at this trying to find the cause of my problems. People complained about slow login times, sometimes they would get temporary profiles because their roaming profile would time out. The also complained about slow access times in our SQL dependant EMR (Electronic Medical Records) system. All my graphs showed everything within an acceptable range.

      I finally found an SNMP query for "disk load". This purports to be a percentage, but I've seen it showing way over 100, sometimes as high as four or five hundred. If it gets above 50 or 60 people start to complain. My disk load spikes in the morning when people are logging in, it generally goes to about 80% or higher on my graphs []. My SQL server doesn't have these problems and I have yet to find a suitable way of monitoring the SQL log where I think the problem is originating.
      • Assuming you mean Microsoft SQL server, check the Avg. Disk Queue Length metric to see if your bottle neck is on the server rather than the storage. On Linux, you'd find the disk queue length in /proc/scsi/qla*/#, where # is different based on number of ports / HBAs / etc. Check out a site such as this one [] for some good metrics to look at.

        There's lots of tuning that can take place on the server side before you start re-striping. That being said, more spindles will likely help on the storage side.

        A couple of
    • by TopSpin ( 753 ) *
      I have to agree; there is not enough information given to reach a credible conclusion. My read of the article and subsequent posts from pnutjam [] indicate that not enough data has been gathered. For instance, an SNMP query called "disk load" is too general to isolate specific performance bottlenecks.

      Monitor and analyze a few common metrics on your servers. Physical Disk IO Bytes/sec can help you determine whether the FC HBAs are a bottleneck; a 2Gb/s HBA is good for (at most) 200MB/s either direction; are
  • I can tell you that it's highly doubtful that the problem is the speed of your fibre cards. If you are getting latency at the host, it is likely that either you've got conflicting access on a number of the same drives in the storage server, or a problem with your fiber switch.

    I can definitely say that without vendor make, model, and software version information, you're not likely to get much helpful information in this venue, and you properly ought to be going to the vendor for technical support.
  • I would not assume the disks need to be defragged without other evidence. There are many components that can affect the performance of SAN storage. PCI-e is a faster bus architecture. However, it is unlikely that would increase your performance unless you are running dual-port 4Gb/s host bus adapters (HBA's). What type of storage array is it? What is the speed of your SAN switches, or are you using direct connect? What is the speed of the storage array's fiber channel ports? How many fiber connection
  • hmm.. (Score:5, Informative)

    by Anonymous Coward on Thursday March 22, 2007 @09:34AM (#18442185)
    I am the Sr. Storage Architect for a Fortune 100 company. If you gave the type of array you have specifically, I'd be able to give more specific advice. That said: 1. You should have at least two fibre cards in each box anyway, and it has nothing to do with throughput. 2. Generally, your bottleneck is the disks themselves. If you want to increase performance, You need to increase the number of spindles that the data is striped across. Depending on the type of array, this may be a non-disruptive operation. The other big thing to look at is the type of RAID being used. You can usually get better performance from something striped with RAID10 vs. Raid 5, especially for write intensive data, because RAID 5 incurs an IO write penalty in calculating parity. 3. If you are going to defrag, do it on the server. It could help. There are some defrag functions available in most mid tier storage arrays, but it isn't what you think. The defrag there typically refers to lining up LUNs in a raid group. So, if you have a raid group with 5 LUNs in it, then delete one, you end up with a big empty space in the middle of the group. Defragging that raid group lines up all the LUNs inside that raid group.
  • by JamesTRexx ( 675890 ) <> on Thursday March 22, 2007 @09:34AM (#18442187) Homepage Journal
    Maybe you're looking at it all wrong.
    You state that the disk load is high in the morning when everyone logs in with roaming profiles, which suggests to me that the roaming profiles are way too large.
    Depending on the Windows versions used, move the contents of the "My documents" folder to their personal network shares (give them one if they don't have any), tell them to move data in their Desktop folder to that share and only create shortcuts, maybe even create a mandatory quota limit on the clients.
    Check your favorite search site on "Windows reduce roaming profile size" for more tips.
    • by pnutjam ( 523990 )
      I don't think this is a problem. Our roaming profiles are only used for Citrix, which is where the majority of our users are. I have user directory going to a network drive (on the same server as profiles). I've never seen a significant hit on the network cards on either the file/print/pdc or the citrix servers. I've also never seen significant hit on any of switch ports (servers are on gigabit).
      • Re: (Score:2, Informative)

        I believe he is actually referring to the disk usage caused by having to copy the contents of My Documents out to the workstation, not the network utilization. He is stating that you should redirect My Documents to a file share. Then they are not included in the Roaming Profiles that are copied, this will reduce your disk access at the peak login/logout times. It also could solve your problem if the roaming profiles are the culprit. Although an assessment of your SAN probably would not hurt anything.
  • I work in IT, in healthcare. I manage our Storage, and our AIX hosts. We boot from SAN.

    We boot some hosts from our SAN (McData SAN switches, IBM SVC, Multiple DS4800's). First, is it your SAN that's bottlenecking (the switches?), the storage controller, or the hosts? When they bottleneck, are you seeing a lot of paging. Large roaming profiles loading all at once could be causing you to page, since your swap is out on your storage controller, you're doing double duty, and paying a penalty for it. As o

    • by pnutjam ( 523990 )
      I don't have any good way to measure throughput on my fibre cards or McData switch (this I should probably start monitory). The bottleneck seems to show up in the disk load. I attached some graphs here [] to show what I'm looking at.

      Our page file is on a dedicated partition on the SAN also. I do notice that it is usually 80% utilized and at night when our backups run it goes close to 100%. Our diskload also spikes at that time, but not as high as it does in the morning. When I get the high diskload spi
      • by Kraegar ( 565221 )
        If you're using Qlogic HBAs, they have something you can install called SanSurfer that's good for looking at performance type things. Newer McData switches have some built in performance monitoring, but I'm not familiar with the older models. There are some awesome software packages to help track utilization, but they're pricey. (IBM's TPC for Data is stellar, and is pricer per TB managed).

        Defragging at the OS level might help you, and there's no harm in it. The more sequential (at both a logical placem

      • What's that disk load counter actually measuring though? I had a look, but I can't actually tell.

        Disks are a bit more complicated that processors or memory in terms of measuring how much of their 'performance' is in use.

        Factors to look at, include.... well most of the ones you'll see under 'PhysicalDisk' in Windows perfmon.

        I/Os per sec and bytes transferred per sec are of interest, but the one that's _really_ in indicator in terms of performance is disk queue length. A long queue, means that for 'what

  • SANs (Score:4, Informative)

    by Sobrique ( 543255 ) on Thursday March 22, 2007 @09:59AM (#18442523) Homepage
    The fact you're using a SAN is likely to be fairly irrelevant here. SANs are a way to move data between server and disks. They're not really much more complicated than that.

    First question, is what's the symptoms of the problem - how do you know you're 'pegging your disks'? If you're seeing IO load to your HBAs being really high, then yes, you might find that you need to upgrade these. From experience though, HBAs are rarely your limiting factor.

    Much more likely is that you're experiencing local disk fragmentation, as you correctly point out. I can't offer specific advise for your array, but in my experience, SANs are 'blind' to filesystems. They work on disks and LUNs. LUNs are the devices a host sees. This can be safely and easily be defragmented, in all the normal ways that you would do normally.

    Are you accessing your SAN over fiber channel or iSCSI? IF it's fiber, then again, you _may_ have network contention, but it's unusual in my experience (especially on a 17 servre SAN). If it's network, then you have contention to worry about. Is it possible that your 'gimme profile' requests across your network are also contending with your iSCSI traffic?

    You may find that your SAN has 'performance tools' built in. That's worth a look, to see how busy your spindles are. Because of the nature of a SAN, you may find that the LUNs are being shared on the same physical disks. This can be a real problem if you've done something scary like using windows dynamic disk to grow your filesystem - Imagine having two LUNS striped, when in acutality on the back end, they're on two different 'bits' of a RAID 5 set. This is bad, and is worth having a look at.

    One place where SANs do sometimes have issues is in page files. Which is possibly a problem if you're SAN booting. SANs have latency, and windows doesn't like high latency on page files. If you really push it, it'll start bluescreening.

    This is fixed by local disks for OS, or just moving swap file to local disk.

    HBA expansion _might_ improve performance, assuming this is your bottleneck. However you'll need to ensure you are multipathing your HBAs. (Think of them like network cards, and you won't go far wrong - you need to 'cheat' a bit in order to share network bandwidth on multiple cards). But like I say, you probably want to check this is actually a problem. If they're not very old, then it's unlikely, although it might be worth checking which internal bus the HBAs are on. (Resilience and contention).

    It's possible your SAN is fragmented, but it's unlikely this is your problem - SANs don't have the same problem with adding and deleting files (LUNs) so all your backend storage will be in contiguous lumps anyway.

    And I apologise if I use terminology that you're not familiar with. Each SAN vendor seems to have their own nomenclature when it comes to the 'bits', but they all work in roughly the same way. You have disks, which are ... well disks. RAID groups, which are disks bundled together, with a RAID 1, RAID 1+0, RAID 5 (with variable numbers of parity ratio) and very occasionally RAID 0. You have LUNs. Logical Units. These are ... well, chunks of your bundles of disks. The first 100Mb of a 5 disk RAID 5 group, might be a LUN. The LUN is what the host 'sees', as a single atomic volume. Most disk groups can have multiple LUNs on them, which is why you do need to watch out for how volume management is operating. I have seen a case where a Windows 2000 server added a second LUN, and used dynamic disk to stripe. Not realising that on the back end, both those LUNs were on the same RAID 5 (4+1). Which cause the disks to seek back and forth continually, and really hurt performance.

    Oh, and this is also probably a good excuse to be booking SAN training. IMO SANs are fun and interesting, not to mention in demand and well paid :)

  • SANS do not need to be defragged. Let me be a little more clear on this: When you allocate a LUN (logical unit) on your SAN and present it to a server, you are doing one of two things:

    1. Presenting physical spindles to the server as raw disks -or-
    2. Presenting a RAID volume to the server, which consists of a section of many disks.

    All SAN vendors that I'm aware of allocate LUNs as contiguous areas of disk. It's faster this way because heads don't have to seek very far to find data within the same LUN. Ev
    • by Kraegar ( 565221 )
      If you do a lot of extending and reducing or deleting of LUNs, you can get fragmentation. (Especially with deleting LUNS, as new LUNs fill in the leftover gaps of space) That's pretty dependent upon whose storage controller you're using, how many spindles, LUN size, etc.

      I'd tend to agree, not usually a problem. But then if the storage controller has been in place for a long time, with multiple admins, hosts added & deleted, etc. The (mis)management of it over the years could have lead to lots of litt

    • by pnutjam ( 523990 )
      I should have mentioned our roaming profiles are only used for Citrix. We don't publish a desktop. I have noticed that some users who have excessive login times have a profile that uses much more space on disk then the size of the profile. Recreating the user's profile complete seems to clear this up. That's one of the things that makes me look at disk fragmentation.
      • the consensus seems to be that there is
        a) too little information
        b) no good reason to associate the problem with the SAN and
        c) a noted problem with the profiles you are using.
  • You need to knwow the actual layout on the SAN's physical disk, that is how many spindles are available for each of your servers and which servers use the same set of spindles.

    The most likely cause of bad performance is that the same spindles are overloaded while some other do nothing, as it is very rare to have the link elements (fibre and cards) over loaded. As one other poster noted you need to know the load on your disk to decide if the link may be in cause, for example are you doing more than 1 Gb/s IO

  • Maybe your SQL servers need a few more Gig of ram, or the databases themselves need some TLC.

    An SQL server doing something that is too big for it can get you in "slower than my last 486" territory pretty quick.

    I know very little about SANs, but assume the file system is pretty fast... so maybe it's not the problem at all.
  • By and large, SANs don't need defragging: They do all sorts of striping and mirroring internally that there's almost no guarantee that what your servers think are adjacent blocks are anywhere near each other on the SAN itself.

    Where I would take a look is at your RDBMS. If you're getting 80% disk utilization at the SAN you may be doing far more sequential/full-table scans than you need to be. Turn explain plan on and start looking for opportunities to add indexes.

    Finally, check virtual memory on the c

    • by pnutjam ( 523990 )
      A couple people have mentioned moving my swap volume to a local disk. I will do that because it will hopefully help, but there is also no reason for it to be on the SAN, it doesn't facilitate Disaster Recovery. I should have thought of that sooner.

      I'll try to post here if that helps or nor.
  • A few answers (Score:4, Informative)

    by sirwired ( 27582 ) on Thursday March 22, 2007 @10:42AM (#18443113)
    1) No, it isn't your Fibre cards. The PCI-whatever bus (or the line speed of the card, for that matter), usually only affect high-bandwidth operations like tape backup. One thing you must remember is that loads that can beat the crap out of disk (random operations spread all over the platters), do not affect the I/O bus of the Fibre adapters at all, which cares only about total throughput.
    2) It is far more likely your OS needs defragging than your disk array. Your disk array CAN become fragmented if you add and delete LUNs often, though.
    3) Yes, you need multiple fibre cards, but for redundancy, not for bandwidth.
    4) Try and put your major workloads on their own RAID arrays on your disk controller.
    5) Check to see if you have enough memory in those boxes. If you have one server that keeps swapping out to disk and you are booting from SAN, you are going to get very hosed, very quickly. If these boxes have any internal disk at all, put the swap there.
    6) If it is possible with your arrays, max out the segment size. (Engenio/LSI - based arrays can do this.)

    This should be enough to get you started.

  • Chances are you problem is memory. Of course your database could be *ugly* too, but if your problem pretty much happens only in the morning during logons and such, you're probably choking your servers with a lack of memory.
  • SAN doesn't write directly to the disk, and as such, a "high disk utlilization" situation in the OS, is not really a high disk utilization situation in the san...With the san I have worked with, it either means that the disk array doesn't have enough memory (some vendors can expand, some cannot) or you are having contention issues from improper zoning. Other possibilities that occur to me are not enough memory on the server (although my experience is with Oracle, not MSSQL in the case of db servers) and a p
  • Ask Slashdot or call the manufacturer, let's see... which one will make me look more like a huge retard not qualified to do my job?


Genius is one percent inspiration and ninety-nine percent perspiration. -- Thomas Alva Edison