May 2011

You are currently browsing the monthly archive for May 2011.

A Quicksilver Primer

Last week, I came the closest I’ve ever come to leaving Quicksilver and switching to an alternative application. It’s quite an honor to the almost-replacement, Alfred, that I even got as close as I did. In the end, though, Quicksilver won out again. During the process, a number of people asked me about Quicksilver, why I use it, and how I use it. After revisiting the reasons for using Quicksilver as part of the evaluation against Alfred, I thought now might be a good time to some answers to these questions.

I’ve formatted this post in a sort of “question and answer”-style layout. This helps me provide some structure around the discussion and hopefully makes it a bit easier for readers to follow.

First and foremost: what is Quicksilver, exactly?

This might actually be the most difficult question to answer. Quicksilver is many things. Yes, it is an application launcher. But it’s so much more than just an application launcher. Referring to it just as an application launcher limits it. Quicksilver provides the ability to find a wide variety of objects and perform an action on those objects. So you can use Quicksilver to find an application and perform the action of opening (launching) that application, among other things.

So what examples can you give about what sorts of objects and actions I can work with via Quicksilver?

Quicksilver leverages a modular architecture that supports plug-ins which add functionality to the core application. This is not uncommon; there are a number of Mac OS X applications that provide this sort of functionality. Depending upon the plug-ins that are installed, the sorts of objects that Quicksilver can manipulate include:

  • Contact objects from the Mac OS X Address Book
  • Files or folders out of the Finder
  • Snippets of text from an application, either via the Clipboard or by just being selected in the application
  • Songs and playlists in iTunes
  • Bookmarks from a web browser like Safari or Camino

Once you have an object selected, you can then select your action. For example, if you have a contact selected, you can choose to compose a new e-mail to that contact. If you have a file selected, you can choose to send that file via e-mail as an attachment. If you have some text selected and it’s a URL, you can choose to open it in your web browser. If it’s a bookmark from a web browser (or other applications that use bookmarks and have a Quicksilver plug-in, like Cyberduck), you can open the bookmark in the appropriate application. If it’s a snippet of text, you can choose to display it in large text on your screen. If the selected object is a song in iTunes, you can choose to play it.

That sounds really complicated. How hard is it to use Quicksilver?

Once you understand the basic premise of object/action, Quicksilver is pretty easy to use. You invoke Quicksilver—which by default appears as a partially transparent bezel on your screen—via a customizable hotkey, then simply start typing the name of the object you’re seeking. Quicksilver will find it, matching not only on consecutive letters but on letters anywhere in the name. Once you find your object, press Tab and then start typing to select your action. Quicksilver “learns” via your selections which objects you mean, associating certain keystroke combinations with certain objects. This makes Quicksilver’s matching more accurate over time. This matching behavior was one of the reasons why I stayed with Quicksilver vs. switching to Alfred. Even though Alfred supported non-consecutive matching, it still wasn’t as flexible (for me) as Quicksilver.

This functionality sounds very similar to what other applications offer. What other features made you stick with Quicksilver?

Two features really stand out to me. First, there’s the “comma trick.” Let’s say you have two applications you need to launch. Start typing characters until Quicksilver matches the first app, then press comma, and start typing until Quicksilver matches the next app. By using the comma to separate objects, you can invoke several objects at the same time. This is extremely useful. Need to open several applications at once, or open several documents at once? The comma trick can help. The second very useful feature is referred to proxy objects. Let’s say you have some text selected in an application, and you want to take that text into Quicksilver and do something with it. Just press Cmd-Esc, and Quicksilver is invoked with the selected text/file/object already selected. Find a file in the Finder, press Cmd-Esc, press Tab, start typing “email”, press Tab, start typing the name of the contact you’d like to send this file to via e-mail. Congratulations, you’ve just starting composing a new e-mail message to a contact in Address Book with a file attached without ever taking your hands off the keyboard.

So, Scott, how do you use Quicksilver on a day-to-day basis?

Let’s see…Quicksilver has become such a part of my routine it’s hard to imagine using a computer without it. Here are some of the ways I use Quicksilver every day:

  • I use Quicksilver to access my Camino bookmarks. This makes it easy for me to jump to any website in my bookmarks by simply invoking Quicksilver (I use Option-Space) and then typing a few characters to match the bookmark.
  • I use proxy objects to open URLs in text. I simply select the text with the URL, press Cmd-Esc, then press Enter (because the default action for text recognized as a URL is Open). My default browser opens and navigates to that URL.
  • I search Google from Quicksilver. I created a custom web search object (called Search Google) that I invoke, then Tab over twice and enter the search terms followed by Enter. A new browser window opens to the search results from Google.
  • I launch applications, lots of times using the comma trick.
  • I look up details about contacts in my Address Book. Once you have a contact object selected, pressing the right arrow key “opens” the details for the contact object so that individual fields become objects that can be manipulated. I can then select a contact’s e-mail address and compose a new e-mail to that address, for example.

There’s a few examples; hopefully that helps.

If you’re interested in Quicksilver, have a look at the Quicksilver wiki. There’s some useful information there. In the meantime, if you think Quicksilver might be something that will help you become more efficient, download it and give it a try.

If you have additional information to share (perhaps you’re an existing Quicksilver user), please feel free to speak up in the comments. Feedback, dialog, and contributions are always welcome.

Tags: ,

Apparently, some people within the virtualization and storage community took umbrage with one of my statements from my article on stretched clusters and distance vMotion. Specifically, this statement:

Long-distance vMotion and stretched clusters are not the same thing.

I’ll be the first to admit that I don’t know everything, and I try (not always successfully) to be open to admitting where I’m wrong. So feel free to (constructively) tell me where I’m mistaken here. How can long-distance vMotion and stretched clusters be considered the same?

Yes, both of them require Layer 2 adjacency for VMs. Yes, both of them need an appropriately configured storage layer underneath them (the architecture of which is an entirely separate discussion, in my opinion—or is it?) so that storage is accessible from both sites. But the fact that they share common requirements doesn’t make them the same. Related? Yes. The same? No.

We know that a cluster is not a vMotion boundary. In other words, you can use vMotion to move VMs between clusters. That means I can have two clusters—one in each site—and I can use distance vMotion to move VMs between them. Ergo, distance vMotion but not a stretched cluster.

Similarly, I could have a stretched cluster (a cluster of ESX/ESXi hosts with some hosts in one site and some hosts in another site) and not use distance vMotion, since a cluster does not automatically mean vMotion. (Thnik about a cluster with DRS disabled.) Ergo, a stretched cluster but not distance vMotion.

So what am I missing? Or am I just being too technical with the definitions? Constructive comments and feedback are welcome.

Tags: , , , ,

Now that I’ve published the Storage Edition of Technology Short Take #12, it’s time for the Networking Edition. Enjoy, and I hope you find something useful!

  • Ron Fuller’s ongoing deep dive series on OTV (Overlay Transport Virtualization) has been great for me. I knew about the basics of OTV, but Ron’s articles really gave me a better understanding of the technology. Check out the first three articles here: part 1, part 2, and part 3.
  • Similarly, Joe Onisick’s two-part (so far) series on inter-fabric traffic on Cisco UCS is very helpful and informative as well. There are definitely some design considerations that come about from deploying VMware vSphere on Cisco UCS. Have a look at Joe’s articles on his site (Part 1 and Part 2).
  • Kurt Bales’ article on innovation vs. standardization is a great read. The key, in my mind, is innovating (releasing “non-standard” stuff) while also working with the broader community to help encourage standardization around that innovation.
  • Here’s another great multi-part series, this time from Brian Feeny on NX-OS (part 1 here, and part 2 here). Brian exposes some pretty interesting stuff in the NX-OS kickstart and system image.
  • I’ve discussed LISP a little bit here and there, but Greg Ferro reminds us that LISP isn’t a “done deal.”
  • J Metz wrote a good article on the interaction (or lack thereof, depending on how you look at it) between FCoE and TRILL.
  • For a non-networking geek like me, some great resources to become more familiar with TRILL might include this comparison of 802.1aq and TRILL, this explanation from RFC 5556, this discussion of TRILL-STP integration, or this explanation using north-south/east-west terminology. Brad Hedlund’s TRILL write-up from a year ago is also helpful, in my opinion. All of these are great resources, in my mind.
  • And as if understanding TRILL, or the differences between TRILL and FabricPath weren’t enough (see this discussion by Ron Fuller on the topic), then we have 802.1aq Shortest Path Bridging (SPB) thrown in for good measure, too. If it’s hard for networking experts to keep up with all these developments, think about the non-networking folks like me!
  • Ivan Pepelnjak’s examination of vCDNI-based private networks via Wireshark traces exposes some notable scalability limitations. It makes me wonder, as Ivan does, why VMware chose to use this method versus something more widely used and well-proven, like MPLS? And isn’t there an existing standard for MAC-in-MAC encapsulation? Why didn’t VMware use that existing standard? Perhaps it goes back to innovation vs. standardization again?
  • If you’re interested in more details on vCDNI networks, check out this post by Kamau Wanguhu.
  • Omar Sultan of Cisco has a quick post on OpenFlow and Cisco’s participation here.
  • Jake Howering of Cisco (nice guy, met him a few times) has a write-up on an interesting combination of technologies: ACE (load balancing) plus OTV (data center interconnect), with a small dash of VMware vCenter API integration.

I think that’s going to do it for this Networking Edition of Technology Short Take #12. I’d love to hear your thoughts, suggestions, or corrections about anything I’ve mentioned here, so feel free to join the discussion in the comments. Thanks for reading!

Tags: , , , ,

Beth Pariseau recently published an article discussing the practical value of long-distance vMotion, partially in response to EMC’s announcement of VPLEX Geo at EMC World 2011. In that article, Beth quotes some text from a tweet I posted as well as some text from Chad Sakac’s recent post on VPLEX Geo. However, there are a couple inaccuracies from Beth’s article that I really feel need to be cleared up:

  1. Long-distance vMotion and stretched clusters are not the same thing.
  2. L2 adjacency for virtual machines is not the same as L2 adjacency for the vMotion interfaces.

Regarding point #1, in her article, Beth implies that Chad’s statement “Stretched vSphere clusters over [long] distances are, as of right now, still not supported” is a statement that long-distance vMotion is not supported. Long-distance vMotion, over distances with latencies of less than 5 ms round trip time (RTT), is fully supported. What’s not supported is a stretched cluster, which is not a prerequisite for long-distance vMotion (as I pointed out in the stretched clusters presentation Beth also referenced). If you want to do long-distance vMotion, you don’t need to set up a stretched cluster, so statements of support for stretched clusters cannot be applied as statements of support for long-distance vMotion. Let’s not confuse the two, as they are separate and distinct.

Regarding point #2, the L2 adjacency for virtual machines (VMs) is absolutely necessary for distance vMotion. As I explained here, it is possible to use a Layer 3 protocol to handle the actual VMkernel (vMotion) traffic, but the VMs themselves still require Layer 2 adjacency. If you don’t maintain a single Layer 2 domain for the VMs, then VMs would have to change their IP addresses on a live migration. That’s REALLY BAD and it completely breaks live migration. Once again, there is a very separate and distinct behavior that you’re trying to modify with large L2 domains.

Am I off? Speak your mind in the comments below.

Tags: , , , , ,

On May 5, I had the privilege of speaking in Charlotte, NC, at the Carolina VMware User’s Summit. I had been asked to deliver a presentation on the pros and cons of stretched clusters in VMware vSphere. Since I know that not everyone could make it to Charlotte, here’s a copy of the presentation I gave. It’s hosted via Sliderocket. Enjoy, and feel free to post any questions or suggestions in the comments to this post. Thanks!

Tags: , , , ,

I’m so far behind in my technology reading that I have this massive list of blog posts and links that I would normally put into an issue of Technology Short Takes. However, people are already “complaining” that my Short Takes aren’t all that short. To keep from overwhelming people, I’m breaking Technology Short Take #12 into three editions: Virtualization, Storage, and Networking.

Here’s the “Storage Edition” of Technology Short Take #12!

  • When planning storage details for your vSphere implementation, be sure to keep block size in mind. Duncan Epping’s post on the performance impact of the different datamovers in a Storage vMotion operation should bring to light why this is an important storage detail to remember. (And read this post if you need more info on the different datamovers.)
  • Richard Anderson of EMC (aka @storagesavvy) posted a “what if” about using cloud storage as a buffer with thin provisioning and FAST VP. It’s an interesting idea, and one that will probably see greater attention moving forward.
  • Richard also shared some real-world results on the benefits of using FAST Cache and FAST VP on a NS-480 array.
  • Interested in using OpenFiler as an FC target? Have a look here.
  • Nigel Poulton posted an analysis of EMC’s recent entry in the SPC benchmarketing wars in which he compares storage benchmarking to Formula 1 racing. I can see and understand his analogy, and to a certain extent he has a valid point. On the other hand, it doesn’t make sense to submit a more “mainstream” configuration if it’s a performance benchmark; to use Nigel’s analogy, that would be like driving your mini-van in a Formula 1 race. Yes, the mini-van is probably more applicable and useful to a wider audience, but a Formula 1 race is a “performance benchmark,” is it not? Anyway, I don’t know why certain configurations were or were not submitted; that’s for far more important people than me to determine.
  • Vijay (aka @veverything on Twitter) has a good deep dive on EMC storage pools as implemented on the CLARiiON and VNX arrays.
  • Erik Smith has a couple of great FCoE-focused blog posts, first on directly connecting to an FCoE target and then on VE_Ports and multihop FCoE. Both of these posts are in-depth technical articles that are, in my opinion, well worth reading.
  • Brian Norris posted about some limitations with certain FLARE 30 features when used in conjunction with Celerra (DART 6.0). I know that at least one of these limitations—the support for FAST VP on LUNs used by Celerra—are addressed in the VNX arrays.
  • Brian also recently posted some good information on a potential login issue with Unisphere; this is caused by SSL certificates that are generated with future dates.
  • J Metz of Cisco also has a couple of great FCoE-focused posts. In To Tell the Truth: Multihop FCoE, J covers in great detail the various topology options and the differences in each topology. Then, in his post on director-class multihop FCoE, J discusses the products that implement multihop FCoE for Cisco.
  • If you’ve never used EMC’s VSI (Virtual Storage Integrator) plug-in for vCenter Server, have a look at Mike Laverick’s write-up.

OK, that does it for the Storage Edition of Technology Short Take #12. Check back in a couple of days for the Networking Edition of Technology Short Take 12.

Tags: , , , ,

It seems as if there’s been a bit of an increase in interest in attaining CCNA, especially among colleagues within the virtualization and storage areas. (One could allege that this is further evidence of a growing trend away from highly specialized IT folk, but that’s another topic for another day.) With that in mind, I thought I might post a few networking-related references to help others in their quest. So, with that in mind, here you go.

Install GNS3 on Mac OS X Leopard (My Etherealmind)
Dynamips (My Etherealmind)
Pretty much everything on My Etherealmind
The PacketLife Community Lab
OK, pretty much everything on PacketLife.net
GNS3 on Ubuntu 8.04 – Install Guide (The Little Things)
GNS3 Documentation
Dynamips/Dynagen Tutorial
Free CCNA Workbook
Connecting your GNS3 labs to the real network (Phocean.net)

This is, of course, far from extensive, and it focuses on GNS3 since I personally feel that the only truly effective way to learn something is to be hands-on with it. Since we can’t all afford to have a rack full of switches and routers in our basement, GNS3 is (in my opinion) the next best thing.

Anyone else have any good suggestions to share with the readers? Let’s stay away from illegitimate resources like brain dumps and test keys, and focus on informative, useful, educational resources that help readers increase their networking proficiency and prepare themselves for the CCNA certification tests. Feel free to share your suggestions and ideas in the comments.

Tags: , , , ,

I’m not sure this post will be useful to many readers, but I do know that there are a fair number of readers who are also Mac users, and some have expressed interest in AppleScript and how I use it to “glue” some of my daily applications together for a more seamless workflow. If you’re one of those readers, then read on. (If you’re not, you can still keep reading. I might sway your mind.)

I use Yojimbo as my “catch all” for any and all sorts or types of information that I find during the day: URLs, text snippets, PDF files, etc. Mostly it’s URLs (what Yojimbo calls bookmarks), as I keep the majority of my PDF files in my Dropbox. Over the last month or so, I’d found two little things about Yojimbo that bothered me and interrupted my workflow:

  1. There is no easy way to open a group of bookmarks, especially from the keyboard.
  2. There is no easy way to open a PDF in Skim, my preferred PDF viewer, instead of Preview.

Fortunately, I was able to use AppleScript to fix both of these problems. First I wrote an AppleScript that takes the selected bookmarks in Yojimbo (it ignores selected items that aren’t bookmarks) and opens them in Camino, my browser of choice. You could, of course, easily modify the script to open the URLs in Safari. I built a foreground/background option into the script so that you can open the URLs but leave Yojimbo as the active application, if you so preferred.

Next I wrote an AppleScript that grabs the selected PDF archives in Yojimbo (it ignores anything that’s not a PDF archive item), exports them to a temporary folder on my laptop, and opens them in Skim. As with the other script, I built a foreground/background option into this script as well, so you can control whether Skim will become the active, foreground application or not.

To make both of these scripts easy to use and easy to access, I stored them in ~/Library/Scripts/Applications/Yojimbo. This makes them easily accessible from the menu bar or via a keyboard shortcut using FastScripts. These two new scripts join an earlier script I wrote that allows me to easily post a bookmark stored in Yojimbo to Delicious.com via the Mac application Pukka.

If you’d like a copy of the scripts to use for yourself or to modify for your own purposes, click here. Just remember that I am in no way liable for anything that may happen as a result of using any scripts or code that I post on my site, including increased productivity and greater enjoyment of your computing experience.

Tags: , ,

For the last month or so, I’ve been using an iPhone app called Localscope when I travel. It’s a pretty handy little app, designed to integrate with various online services such as Google, Twitter, Bing, and Foursquare, that leverages the iPhone’s GPS functionality and built-in compass to help you find local places of interest: restaurants, coffee shops, ice cream, etc.

Basically, the app works like this: you select what you’re looking to find—restaurant, cafe, bank, gas station, or even a custom search like “Starbucks”—and then Localscope goes out and gets that information from the selected online source (there’s a slider at the bottom where you choose the online source). Localscope then integrates the data from the online source with your location and compass information from the iPhone to tell you in what direction and how far away the various matches are. You can easily switch between online sources without having to redo the search (that’s handy). There’s also an “augmented reality” view using the iPhone’s camera that overlays destinations on top of what you’re seeing through the camera. Cool, yes, but not necessary tremendously effective unless you’re in the midst of a major metropolitan location.

For me, Localscope has been handy finding local places to eat when I travel. It’s always nice to get a feel for the local flavor when you’re in a particular city or region, so I try to avoid the chains and find something local or original.

In my opinion, if you travel a fair amount, Localscope is worth the $1.99 that the developer charges for the app.

Disclaimer: The developer of Localscope, Cynapse, provided me with a free copy of the application to use.

Tags: , ,