[OpenAFS] Modifying the output of vos commands to include server UUIDs

Jeff Blaine jblaine@kickflop.net
Tue, 13 Apr 2010 11:22:39 -0400


IMO, unless a "for parsing" output format is available (never
likely), the existing line-per-site format should be kept and
not altered just for a new command-line option's output.

This isn't a book we're reading for a half hour.  It's vos
output.  Let the lines pass 80 cols.

You can have the best of both worlds by noting the position
of 's' in server, then padding the end of "server foo" with
spaces to wrap the uuid around properly instead of a
newline... if one is concerned with the 80col thing that much :)

On 4/13/2010 9:26 AM, Jeffrey Altman wrote:
> In 2002, the OpenAFS version of the "vos listaddrs" command was updated
> to include the Arla -printuuid and -noresolve options which permits the
> UUID and IP address of registered file servers to be displayed.  For
> example:
>
>    UUID: 006cab10-0e3e-1b20-a3-aa-2601a8c0aa77
>    24.193.47.88
>    192.168.122.1
>    192.168.1.38
>
> In 2008, the -noresolve option was made generic so that it could apply
> to all vos commands so that instead of seeing DNS names the actual IP
> addresses of server could be viewed.  This change was made because DNS
> name resolution often makes it appear that a file server is properly
> registered when instead it is in fact not.
>
> However, IP addresses are not the canonical method of identifying a file
> server.  For that the UUID is required and at the present time there is
> no mechanism when using vos listvldb or vos examine to identify the UUID
> of the server on which a volume is located.  This lack has come up
> several times in the #openafs IRC channel when attempting to help users
> setup new cells or add new file servers.  The most recent time on March
> 30th.
>
> Gerrit http://gerrit.openafs.org/#change,1742 is an attempt to add
> -printuuid as a standard option to all vos commands.  The only issue at
> the moment is what the format of the output should look like.  UUIDs and
> DNS names are long.  Extending the existing format to include the UUID
> inline with each server produces output that will not fit in an 80
> column terminal.
>
> An example of "vos examine -printuuid" output:
>
> root.cell                         537870331 RW         42 K  On-line
>      ASCLEPIUS.MIT.EDU [0037555a-be36-19a6-a2-4d-5e3c0912aa77] /vicepr
>      RWrite  537870331 ROnly  537870333 Backup  537870332
>      MaxQuota        500 K
>      Creation    Fri Jun 06 12:24:21 2008
>      Copy        Thu Feb 26 11:43:23 2009
>      Backup      Tue Apr 13 02:00:17 2010
>      Last Update Thu Oct 18 12:44:23 2007
>      7647 accesses in the past day (i.e., vnode references)
>
>      RWrite: 537870331     ROnly: 537870333     Backup: 537870332
>      number of sites ->  4
>         server ASCLEPIUS.MIT.EDU [0037555a-be36-19a6-a2-4d-5e3c0912aa77]
> partition /vicepr RW Site
>         server ASCLEPIUS.MIT.EDU [0037555a-be36-19a6-a2-4d-5e3c0912aa77]
> partition /vicepr RO Site
>         server MNEMOSYNE.MIT.EDU [005d91e8-f824-19a6-aa-5c-613c0912aa77]
> partition /vicepr RO Site
>         server IXION.MIT.EDU [00086236-fa87-19a6-b4-de-ab015b12aa77]
> partition /vicepr RO Site
>
> An example of "vos listvldb -printuuid" output:
>
> root.cell
>      RWrite: 536870915     ROnly: 536870916
>      number of sites ->  4
>         server bethlehem.your-file-system.com
> [0008fa02-d48c-19b9-81-fc-419a1dccaa77] partition /vicepa RW Site
>         server bethlehem.your-file-system.com
> [0008fa02-d48c-19b9-81-fc-419a1dccaa77] partition /vicepa RO Site
>         server faultline.your-file-system.com
> [0007580a-7001-1aae-85-8e-2f9a1dccaa77] partition /vicepa RO Site
>         server cpe-24-193-47-88.nyc.res.rr.com
> [006cab10-0e3e-1b20-a3-aa-2601a8c0aa77] partition /vicepa RO Site
>
> One alternative output format that could be used when the -printuuid
> option is specified is found below.
>
> vos examine -printuuid:
>
> root.cell                         537870331 RW         42 K  On-line
>      UUID: 0037555a-be36-19a6-a2-4d-5e3c0912aa77
>      Server ASCLEPIUS.MIT.EDU
>      Partition /vicepr
>      RWrite  537870331 ROnly  537870333 Backup  537870332
>      MaxQuota        500 K
>      Creation    Fri Jun 06 12:24:21 2008
>      Copy        Thu Feb 26 11:43:23 2009
>      Backup      Tue Apr 13 02:00:17 2010
>      Last Update Thu Oct 18 12:44:23 2007
>      7647 accesses in the past day (i.e., vnode references)
>
>      RWrite: 537870331     ROnly: 537870333     Backup: 537870332
>      number of sites ->  4
>         RW Site
>                server ASCLEPIUS.MIT.EDU
>                uuid 0037555a-be36-19a6-a2-4d-5e3c0912aa77
>                partition /vicepr
>         RO Site
>                server ASCLEPIUS.MIT.EDU
>                uuid 0037555a-be36-19a6-a2-4d-5e3c0912aa77
>                partition /vicepr
>         RO Site
>                server MNEMOSYNE.MIT.EDU
>                uuid 005d91e8-f824-19a6-aa-5c-613c0912aa77
>                partition /vicepr
>         RO Site
>                server IXION.MIT.EDU
>                uuid 00086236-fa87-19a6-b4-de-ab015b12aa77
>                partition /vicepr
>
> vos listvldb -printuuid:
>
> root.cell
>      RWrite: 536870915     ROnly: 536870916
>      number of sites ->  4
>         RW Site
>                server bethlehem.your-file-system.com
>                uuid 0008fa02-d48c-19b9-81-fc-419a1dccaa77
>                partition /vicepa
>         RO Site
>                server bethlehem.your-file-system.com
>                uuid 0008fa02-d48c-19b9-81-fc-419a1dccaa77
>                partition /vicepa
>         RO Site
>                server faultline.your-file-system.com
>                uuid 0007580a-7001-1aae-85-8e-2f9a1dccaa77
>                partition /vicepa
>         RO Site
>                server cpe-24-193-47-88.nyc.res.rr.com
>                uuid 006cab10-0e3e-1b20-a3-aa-2601a8c0aa77
>                partition /vicepa
>
> Please offer your opinions.  As people have a variety of scripts that
> parse the output of vos commands to automate behaviors, we would not be
> changing the default output.  Any format change would only be used when
> the -printuuid option is specified.
>
> Jeffrey Altman
>
>
>
>