Category Archives: Xsan

Xsan

Access Qlogic Switches & Other Java Apps From OS X

Qlogic fibre channel switches are about the most common I see in Xsan environments. A common frustration when managing a Qlogic switch is that the Java runtime used to manage the switch is blocked from most OS X systems by default. But it’s pretty easy to get into them with a couple of minor adjustments.

To get started, first download and install the latest Java from here. Once installed, open System Preferences on your Mac and then open the Java Preferences. Here, click on the Security tab.

Screen Shot 2014-03-17 at 10.43.11 AM

Click Edit Site List… In the pop-up, click Add and enter http:// followed by the name or IP address of your switch.

Screen Shot 2014-03-17 at 10.42.45 AM

Click on OK to commit your changes. Then access the switch address from Firefox (what I use for these) or whatever browser you prefer. Because the switch has a self-signed certificate, you’ll be prompted with a  security warning. Here, click the checkbox for “I accept the risk and want to run this application” and then click on the Run button.

Screen Shot 2014-03-17 at 10.40.21 AM

You’ll then be prompted by another Security Warning dialog. This one is indicating that the Java applet is potentially unsafe. Because we somewhat trust Qlogic, click Don’t Block. You’ll have to click this one every time you access the switch.

Screen Shot 2014-03-17 at 10.43.48 AM

The switch interface then opens and you can manage your switch as needed.

Screen Shot 2014-03-17 at 10.45.20 AM

Enjoy.

Mac OS X Mac OS X Server Xsan

Test Volume Speeds for Xsan Metadata Controllers

I have used a variety of tools for testing the speed of Xsan volumes. But none have been as easy as the BlackMagic Disk Speed Test. It’s cute, it’s fast, it’s very informative and it requires no Terminal, unlike the other tools I’ve used for years. To use Disk Speed Test, first download it from the Mac App Store (it’s free). Then mount the volume you’d like to test and open the Disk Speed Test app.

BlackMagic1

 

Click on the Settings icon in the middle and select the volume you’d like to test.

BlackMagic2

Then click Start. Enjoy.

VMware Xsan

Resolve Error 1006.0005 For Qlogic Switches

Error 1006.0005 can appear on a Qlogic fibre channel switch when using ACL zones. If you don’t need ACL zones, then the easiest thing to do here is to swap the offending zone back to a soft zone. To do so, open the Qlogic Switch and use the Edit menu to select “Edit Zoning …”

Screen Shot 2014-03-05 at 2.12.57 PM

From the zone editor, right-click on the zone to change and click on Set Zone Type.

Screen Shot 2014-03-05 at 2.17.24 PM

From the Set Zone Type pop-up, click on the option for Soft.

Screen Shot 2014-03-05 at 2.18.37 PM

Save the zoning and provided that you can actually use soft zones you are done. Now, what if you can’t use soft zoning? In that case, I find that this error specifically comes up when you have a device in a soft and ACL-based zone. To rectify that, either switch the soft zone to ACL or define the port in the ACL zone and the WWN in the soft zone.

Mac OS X Mac OS X Server Xsan

Recycling The Promise X10

The Promise X30 and beyond have been out for some time. I find that as the older X10 units reach the next phase of their lifecycle, removing LUNs and RAIDs from the units is a necessity. While many are put back into production as near-line or backup storage (with new drives even) these RAIDs still need to be cleaned off. As such, an example of doing so might be creating one large LUN each of an E+J pair.

First, let’s delete our spare drives. To do so, click on Spare Drives in the sidebar.

Screen Shot 2014-01-29 at 11.49.49 AM

Then click on the Delete tab.

Screen Shot 2014-01-29 at 11.48.37 AM

Check all of the boxes and then click on the Submit button.

Screen Shot 2014-01-29 at 11.50.04 AM

When prompted, type the word CONFIRM and press Enter.

Next, let’s delete our arrays. To get started, click on the Disk Arrays button in the explorer sidebar.

Screen Shot 2014-01-29 at 11.47.56 AM

Click on the Delete tab.

Screen Shot 2014-01-29 at 11.48.35 AM

Check the box for each array that you’d like to delete, noting that this step is irrecoverable and if you don’t mean to, you will end up loosing all of the data on these LUNs forever and ever and ever (unless of course you immediately call Promise and get them to help you restore them, by reconstructing the array – which of course can’t be guaranteed nor considered an option – but I’ve seen it happen as long as you don’t do anything else).

 

 

 

Click Submit. When prompted, type the word CONFIRM.

Screen Shot 2014-01-29 at 11.48.43 AM

Click OK and viola, you can now upload a new script to config the unit. Enjoy.

 

Mac OS X Mac OS X Server Mac Security Xsan

Disable Swap Files In OS X

Every now and then I need to reclaim that space in /var/vm or I need to stop a process from paging to swap files while I’m troubleshooting something else. I in no way endorse disabling swap files (which basically kills using swap files as a part of your overall virtual memory) for extended periods of time. However, it has saved me in the case of stability concerns long enough to get a system patched or something like that.

To disable OS X swap files, all you need to do is stop the com.apple.dynamic_pager daemon and restart. Use launchctl to stop:

sudo launchctl unload -wF /System/Library/LaunchDaemons/com.apple.dynamic_pager.plist

Once restarted, you may need to remove the files in /var/vm as that is where the swap files are stored. To do so, rm the contents of /var/vm:

rm /var/vm/swapfile*

You should also be able to get rid of the sleepimage file in that directory if needed. Since this is supposed to be a temporary or troubleshooting measure, to turn swapping back on:

sudo launchctl load -wF /System/Library/LaunchDaemons/com.apple.dynamic_pager.plist

Mac OS X Mac OS X Server Mac Security Mass Deployment Ubuntu Unix Xsan

compgen like a boss

I’ve traditionally used the apropos command to find new commands. But you can also use the compgen command, which looks at the completion matches for given words, to find a list of commands that you can run, simply use compgen with a -c option:

compgen -c

You can parse information for a single command:

compgen -c | grep apropos

You can also use -a for aliases, -b for bash built-ins and -k for bash keys, as well as `-A function` for functions. You can then string ‘em together:

compgen -abckA function

I won’t paste the output but I’ll let you pipe it to grep to compgen like a boss. Enjoy!

Unix Xsan

One Liner Script To Check If Xsan Is Installed

The following will tell you whether Xsan has been installed on a client system. Here we’re checking if the file exists using the [] for a file (I always quote paths that aren’t variables when doing this type of thing) and and then echoing a response that it does.

[ -f "/Library/Preferences/Xsan/uuid" ] && echo "Xsan is installed"

If the file exists, we could also perform some other tasks or use an else and make changes, like copying an authorization and fsnameservers file into the directory when installing StorNext clients on OS X. The way I would likely do this, if I were saying if the uuid file doesn’t exist, do a task would be:

[ | -f "/Library/Preferences/Xsan/uuid" ] && echo "Xsan is not installed"

In the above example, placing the pipe in front acts as a negative operator, so these two lines are basically the opposite of one another.

 

Mac OS X Mac OS X Server Mac Security Mass Deployment Ubuntu Unix VMware Xsan

5 Ways To Manage Background Jobs In A Shell Environment

When running commands that are going to take awhile, I frequently start them with the nohup command, disown the command from the current session or queue them for later execution. The reason is that if I’m running them from a Terminal or SSH session and the session is broken I want to make sure they complete. To schedule a job for later execution, use at. For example, if I want to perform a simple command, I can schedule it in a minute by running it as an echo piped to at:

echo "goldengirlsfix.sh" | at now + 2 minutes

Note, if using 1 minute, you’ll need that to be singular. But you can also disown the job. To do so, end a command with an & symbol. So, running a command or script that will take awhile with an ampersand at the end displays the job number for the command and then you can disown it by running disown followed by -h at the end. for example:

du -d 0 &
disown -h

If you choose not to disown the job, you can check running jobs using the jobs command at any time:

jobs

Nohup runs a command or script in the background even after a shell has been stopped:

nohup cvfsck -nv goldengirls &

The above command runs the command between nohup and the & symbol in the background. By default, you’ll then have the output to the command run in the nohup.out file in your home directory. So if your username were krypted, you could tail the output using the following command:

tail -f /Users/krypted/nohup.out

You can also use screen and then reconnect to that screen. For example, use screen with a -t to create a new screen:

screen -t sanconfigchange

Then run a command:

xsanctl sanConfigChanged

Then later, reconnect to your screen:

screen -x

And you can control-n or control-a to scroll through running background processes this way, provided each is in its own screen.

Finally, in AIX you can actually use the bg command. I used to really like this as I could basically move an existing job into the background if I’d already invoked it from a screen/session. For example, you have pid 88909 running and you want to put it into the background. You can just run bg 88909 and throw it into the background, allowing you to close a tty. But then if you’d like to look at it later, you can always pop it back using, you guessed it, fg. This only worked in AIX really, but is a great process management tool.

Mac OS X Mac OS X Server Mac Security Unix Xsan

Migrate Metadata From Xsan to StorNext

I’ve written about moving Metadata LUNs from one LUN to another with Xsan in the past, available at http://krypted.com/unix/replacing-xsan-metadata-luns. There, we were using sndiskmove, which works when moving Metadata LUNs from Xsan to Quantum appliances as well (e.g. a 440 or 662). However, the drives that Quantum provides in these appliances are much smaller (and much faster) than those in a traditional Xsan environment. Therefore, the sndiskmove approach would fail as you’re moving from a larger to a smaller LUN.

Because the amount of space that you’re using on a Metadata LUN, you should be able to gracefully move metadata to a much smaller LUN. To do so, Quantum provides the snmetadump command. Before using snmetadump stop the volume. To use snmetadump, run it with a -dc option, followed by the name of the volume (or file system if you will), as follows (assuming a volume name of golden girls) from the StorNext metadata controller:

snmetadump -dc goldengirls

Once run, the metadata LUN will be backed up to /usr/adic/database/metadumps. You would then run the -a option to apply your changes:

snmetadump -a goldengirls

You can then edit the config files (which at this point would be cfgx) and then reformat the metadata for the new destination using -amMs again followed by the volume name:

snmetadump -amMs goldengirls

Finally, restore metadata (which according to the config files it will go to the correct LUN:

snmetadump -r goldengirls

Now you should be able to start your volume back up and be back to functional, with your Metadata LUNs on your shiny new appliance. .