Re: Mount_nfs question

2011-05-31 Thread Robert Watson


On Mon, 30 May 2011, Mark Saad wrote:


 So I am stumped on this one.  I want to know what the IP of each
nfs server that is providing each nfs export. I am running 7.4-RELEASE
When I run mount -t nfs I see something like this

VIP-01:/export/source on /mnt/src
VIP-02:/export/target   on /mnt/target
VIP-01:/export/logs on /mnt/logs
VIP-02:/export/package   on /mnt/pkg

The issue is I use a load balanced nfs server , from isilon. So VIP-01 could 
be any one of a group of IPs . I am trying to track down a network 
congestion issue and I cant find a way to match the output of lsof , and 
netstat to the output of mount -t nfs . Does anyone have any ideas how I 
could track this down , is there a way to run mount and have it show the IP 
and not the name of the source server ?


Unfortunately, there's not a good answer to this question.  nfsstat(1) should 
have a mode that can iterate down active mount points displaying statistics 
and connection information for each, but doesn't.  NFS sockets generally don't 
appear in sockstat(1) either.  However, they should appear in netstat(1), so 
you can at least identify the sockets open to various NFS server IP addresses 
(especially if they are TCP mounts).


Enhancing nfsstat(1) to display more detailed information would, I think, be a 
very useful task for someone to get up to (and perhaps should appear on our 
ideas list).  Something that would be nice to have, in support of this, is a 
way for file systems to provide extended status via a system call that queries 
mountpoints, both portable information that spans file systems, and file 
system-specific data.  Morally, similar to nmount(2) but for statistics rather 
than setting things.  The easier route is to add new sysctls that dump 
per-mountpoint state directly from NFS, but given how much other information 
we'd like to export, it would be great to have a more general mechanism.


(The more adventurous can, with a fairly high degree of safety, use kgdb on 
/dev/mem (read-only) to walk the NFS stack's mount tables, but that's not much 
fun.)


Robert
___
freebsd-hackers@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to freebsd-hackers-unsubscr...@freebsd.org


Re: Mount_nfs question

2011-05-31 Thread Rick Macklem
 Maybe you can use showmount -a SERVER-IP, foreach server you have...
 
That might work. NFS doesn't actually have a notion of a mount, but
the mount protocol daemon (typically called mountd) does try and keep
track of NFSv3 mounts from the requests it sees. How well this works for
NFSv3 will depend on how well the server keeps track of these things and
how easily they are lost during a server reboot or similar.

Since NFSv4 doesn't use the mount protocol, it will be useless for NFSv4.

 Thiago
 2011/5/30 Mark Saad nones...@longcount.org:
  On Mon, May 30, 2011 at 8:13 PM, Rick Macklem rmack...@uoguelph.ca
  wrote:
  Hello All
  So I am stumped on this one. I want to know what the IP of each
  nfs server that is providing each nfs export. I am running
  7.4-RELEASE
  When I run mount -t nfs I see something like this
 
  VIP-01:/export/source on /mnt/src
  VIP-02:/export/target on /mnt/target
  VIP-01:/export/logs on /mnt/logs
  VIP-02:/export/package on /mnt/pkg
 
  The issue is I use a load balanced nfs server , from isilon. So
  VIP-01
  could be any one of a group of IPs . I am trying to track down a
  network congestion issue and I cant find a way to match the output
  of
  lsof , and netstat to the output of mount -t nfs . Does anyone
  have
  any ideas how I could track this down , is there a way to run
  mount
  and have it show the IP and not the name of the source server ?
 
  Just fire up wireshark (or tcpdump) and watch the traffic. tcpdump
  doesn't know much about NFS, but if al you want are the IP#s, it'll
  do.
 
  But, no, mount won't tell you more than what the argument looked
  like.
 
  rick
 
  Wireshark seams like using a tank to swap a fly.
 
Maybe, but watching traffic isn't that scary and over the years I've
discovered things I would have never expected from doing it. Like a
case where one specific TCP segment was being dropped by a network
switch (it was a hardware problem in the switch that didn't manifest
itself any other way). Or, that one client was generating a massive
number of Getattr and Lookup RPCs. (That one turned out to be a grad
student who had made themselves an app. that had a bunch of threads
continually scanning to fs changes. Not a bad idea, but the threads
never took a break and continually did it.)

I've always found watching traffic kinda fun, but then I'm weird, rick
___
freebsd-hackers@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to freebsd-hackers-unsubscr...@freebsd.org


Mount_nfs question

2011-05-30 Thread Mark Saad
Hello All
  So I am stumped on this one.  I want to know what the IP of each
nfs server that is providing each nfs export. I am running 7.4-RELEASE
When I run mount -t nfs I see something like this

VIP-01:/export/source on /mnt/src
VIP-02:/export/target   on /mnt/target
VIP-01:/export/logs on /mnt/logs
VIP-02:/export/package   on /mnt/pkg

The issue is I use a load balanced nfs server , from isilon. So VIP-01
could be any one of a group of IPs . I am trying to  track down a
network congestion issue and I cant find a way to match the output of
lsof , and netstat to the output of mount -t nfs . Does anyone have
any ideas how I could track this down , is there a way to run mount
and have it show the IP and not the name of the source server ?



-- 
mark saad | nones...@longcount.org
___
freebsd-hackers@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to freebsd-hackers-unsubscr...@freebsd.org


Re: Mount_nfs question

2011-05-30 Thread Rick Macklem
 Hello All
 So I am stumped on this one. I want to know what the IP of each
 nfs server that is providing each nfs export. I am running 7.4-RELEASE
 When I run mount -t nfs I see something like this
 
 VIP-01:/export/source on /mnt/src
 VIP-02:/export/target on /mnt/target
 VIP-01:/export/logs on /mnt/logs
 VIP-02:/export/package on /mnt/pkg
 
 The issue is I use a load balanced nfs server , from isilon. So VIP-01
 could be any one of a group of IPs . I am trying to track down a
 network congestion issue and I cant find a way to match the output of
 lsof , and netstat to the output of mount -t nfs . Does anyone have
 any ideas how I could track this down , is there a way to run mount
 and have it show the IP and not the name of the source server ?
 
Just fire up wireshark (or tcpdump) and watch the traffic. tcpdump
doesn't know much about NFS, but if al you want are the IP#s, it'll do.

But, no, mount won't tell you more than what the argument looked like.

rick
___
freebsd-hackers@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to freebsd-hackers-unsubscr...@freebsd.org


Re: Mount_nfs question

2011-05-30 Thread Mark Saad
On Mon, May 30, 2011 at 8:13 PM, Rick Macklem rmack...@uoguelph.ca wrote:
 Hello All
 So I am stumped on this one. I want to know what the IP of each
 nfs server that is providing each nfs export. I am running 7.4-RELEASE
 When I run mount -t nfs I see something like this

 VIP-01:/export/source on /mnt/src
 VIP-02:/export/target on /mnt/target
 VIP-01:/export/logs on /mnt/logs
 VIP-02:/export/package on /mnt/pkg

 The issue is I use a load balanced nfs server , from isilon. So VIP-01
 could be any one of a group of IPs . I am trying to track down a
 network congestion issue and I cant find a way to match the output of
 lsof , and netstat to the output of mount -t nfs . Does anyone have
 any ideas how I could track this down , is there a way to run mount
 and have it show the IP and not the name of the source server ?

 Just fire up wireshark (or tcpdump) and watch the traffic. tcpdump
 doesn't know much about NFS, but if al you want are the IP#s, it'll do.

 But, no, mount won't tell you more than what the argument looked like.

 rick

Wireshark seams like using a tank to swap a fly.


-- 
mark saad | nones...@longcount.org
___
freebsd-hackers@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to freebsd-hackers-unsubscr...@freebsd.org


Re: Mount_nfs question

2011-05-30 Thread Thiago Damas
  Maybe you can use showmount -a SERVER-IP, foreach server you have...

Thiago
2011/5/30 Mark Saad nones...@longcount.org:
 On Mon, May 30, 2011 at 8:13 PM, Rick Macklem rmack...@uoguelph.ca wrote:
 Hello All
 So I am stumped on this one. I want to know what the IP of each
 nfs server that is providing each nfs export. I am running 7.4-RELEASE
 When I run mount -t nfs I see something like this

 VIP-01:/export/source on /mnt/src
 VIP-02:/export/target on /mnt/target
 VIP-01:/export/logs on /mnt/logs
 VIP-02:/export/package on /mnt/pkg

 The issue is I use a load balanced nfs server , from isilon. So VIP-01
 could be any one of a group of IPs . I am trying to track down a
 network congestion issue and I cant find a way to match the output of
 lsof , and netstat to the output of mount -t nfs . Does anyone have
 any ideas how I could track this down , is there a way to run mount
 and have it show the IP and not the name of the source server ?

 Just fire up wireshark (or tcpdump) and watch the traffic. tcpdump
 doesn't know much about NFS, but if al you want are the IP#s, it'll do.

 But, no, mount won't tell you more than what the argument looked like.

 rick

 Wireshark seams like using a tank to swap a fly.


 --
 mark saad | nones...@longcount.org
 ___
 freebsd-hackers@freebsd.org mailing list
 http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
 To unsubscribe, send any mail to freebsd-hackers-unsubscr...@freebsd.org

___
freebsd-hackers@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to freebsd-hackers-unsubscr...@freebsd.org