Extended fcparsers.jar and added a test to confirm that fcparser.jar fixes the parser abort on multiple “cfg:” sections
Tag Archives: VIClientTool
Revision 640 – Filter or Replace Nicknames
In this revision, the FAE tools gain the ability to filter or replace automatically-provided nicknames in the imported nicknames. This includes:
- Nicknames that look like FCIDs (which are automatically provided for devices logged into F-ports)
- Nicknames that look like WWPNs (which are typically ISLs: something attached, but no FLOGI)
- Nicknames ending in “(ISL)” which tend to be completed ISLs (discover both sides)
Filter (-f) removes these nicknames, allowing a cleaned-up nickname file to be imported without accidentally setting generated nicknames to be user-provided (hence “sticky”).
Replace (-S, for Suggested) swaps with Suggested Nicknames (SNICKs) — nicknames based on well known patterns of WWPNs by deliberate manufacturer habit or design.
Nicknames that do not look like predictable/default nicknames are not affected: this is intended for cleaning up a Portal Service export that includes all sorts of additional information.
Revision 638 – Suggested Nicknames for Pure Storage WWN Patterns
Expanded the option “-w” from Suggested Nicknames for Known WWN Patterns to vict.jar such that vict.jar -w 52:4a:93:7d:74:f1:14:00 offers “Pure-d74f114-CT0.FC0” or “Pure-d74f114:0:0” in brief, giving (weak) nicknames to Pure Storage Flash-based storage targets.
Note that since WWN patterns are moved to the external WWNDesc project, this is merely test code to ensure that the parallel work in the external project is functioning as required today and henceforth.
This nickname pattern is based on what I’ve seen deployed, and has no clear direction or description from Pure Storage. Pure is actually shipping QLogic HBAs as storage target FA ports, like many other vendors, however they have the decency and class to re-brand the OUI as their own OUI, making them easier to identify. THANKS, Pure! You make our lives a bit easier by taking that extra step.
Revision 617 – Dump Existing Nicknames moved from VIFT; initial DCFM extraction
After some discussion, the query used for “–dump-config=nickname.csv” in VIFT was improved and added back into VICT. This allows a simple export of the existing Nicknames for use in the “-R” option to revision 615 so that a customer who wants to generate a Nickname Diff can do so using:
java -jar vict.jar -D nickname.csvjava -jar vict.jar -N bna://server/ -D nickname.csv -n diff-nicknames.csv
This ensures that diff-nicknames.csv includes only the NEW nicknames for import.
Additionally, notice how –nickname=bna://server/ is used; this is an abbreviation for bnapsql:// for which cmcne:// also applies:
java -jar vict.jar -N bna://server/ -N cmcne://otherserver/ -D nickname.csv -n diff-nicknames.csv
If you’re leveraging the PHC-based Suggested nicknames, you can still use the VICT as a copying entity:
java -jar vict.jar -D nickname.csvjava -jar phc.jar -A\some\path\bobjava -jar vict.jar -N bna://server/ -N \some\path\bob-Nicknames.csv -D nickname.csv -n diff-nicknames.csv
There’s some initial work for vict.jar -N dcfm:// but the schema is still up-in-the-air.
Now go keep those nicknames updated!
Revision 615 – RemoveNicknames Allows Nickname-Diff Creation
There has been a strange issue with diminishing efficiency of nickname import as the number of nicknames increases and the number of other threads competing for a database lock increases. Apparently it’s too difficult check nicknames before setting, and I’ve seen roughly 3 nicknames every 2 seconds on some portals.
Considering this, and that we have ways of getting nicknames from files (including basic 2-column format), I’ve added a method of taking a parsed list of nicknames and removing it from the nickname base.
The “–removenicknames=” option (“-R”) parses a nickname input (BNA, file://, OCI, HTTP, FTP, same logic as adding) and removes them from the internal nickname base rather than adding.
This would let us:
- collect new nicknames from all the current sources
- remove a list of assumed-current nicknames
- write out the remainder for import
Additionally, collecting the current assumed-current plus the new nicknames gives us the new assumed-current.
Revision 613 – fctransfers Gives us SFTP Uploads
In rev 605, the code for uploads was completely dependent on the code brought in with fctransfer.jar’s convenience library.
This revision evolves that change: all uploads are delegated to the fctransfer project, which means we get SFTP uploads for free:
Upload methods are now:
- FTP: java -jar vict.jar -U ftp://scott:tiger@ftp.example.com/path/ -u file1 -u file2
- SFTP: java -jar vict.jar -U sftp://scott:tiger@ftp.example.com/path/ -u file1 -u file2
Notice the similarity? That’s intentional.
Of course, both upload methods send a checksum including a notify element.
There remains some oddity in the commons-net-ssh used; I may need to swap out the underlying ssh to sshj or such.
Revision 609 – Helpful Documentation around DNS and Certificate-protocol Convenience
In this revision, a few whitespace and documentation changes were made:
- If DNS was configured but filtered/firewalled, the messages would be difficult to understand. Immediate reaction/retry suggestions are added to the error text
- If the user tried the -C/–vcentercert option but didn’t give a protocol, the tool would prepend it. The error message said “You have an error, trying with a protocol” but that was misunderstood as “you have an error. the sky has fallen, nothing further will be done”. The error message is augmented to be a bit more understandable.
Revision 600 – (weak) Suggested Nicknames for Apparent NetApp WWN Patterns
Expanded the option “-w” from Suggested Nicknames for Known WWN Patterns to vict.jar such that vict.jar -w 500a098300004060 shows “NetApp-4060-iGrp0-0N” giving suggested nicknames to NetApp Devices.
Just like Apparent VPLEX Patterns, this WWN Descriptor is empirically-based. Additional WWPN samples would help guide a better, more precise solution.
Revision 599 – (weak) Suggested Nicknames for Apparent VPLEX WWN Patterns
Expanded the option “-w” from Suggested Nicknames for Known WWN Patterns to vict.jar such that vict.jar -w 50001442607a3b00 shows “VPlex-07a3b-A0-FC00” giving suggested nicknames to EMC VPLEX devices similar to the output of the CLI command ls -l /engine/**/ports.
This WWN Descriptor is not very precise, but is empirically-based. Additional WWPN samples would help guide a better, more precise solution.
Revision 590 – Added –UploadNotify as a Checksum Comment
In order to allow upstream notification, I’ve added the “–uploadnotify” argument to the FTP uploader:
VICT.BAT -U ftp://scott:tiger@ftp.oracle.com/ --uploadnotify allanc@oracle.com -u logfile1 -u logfile2
Foe each upload, a .sum file would still be generated — in this case, upload1.sum and upload2.sum. The comment “# NOTIFY allanc@oracle.com” is added to the checksum file so that any post-processor knows whom to alert of an upload. If this comment is present and understood, it can be considered advisement, not a directive; default processing may very well occur.
This is not governed by any spec, and I did not find a RFC or other open spec suggesting a format. I’ve suggested using an RFC1738-compatible URL. The format of the checksum file remains compatible with the “sum” and “md5” commands.