Having fun in the shell with cowsay and fortune
Last weekend while I was waiting for several ansible playbooks to apply I thought it would be fun to play around with cowsay and fortune. If you aren't familiar with these tools cowsay gives you an ASCII cow which says whatever is passed to it as an argument. Here is a example: To have a cowtastic time each time I open a shell I added the following to my bashrc: I guess the old saying is right. All work and no play makes an admin mooooooooo…
$ read more →Automatically updating your .bashrc when you log into a server
I am a long time bash user and have found numerous aliases and shell functions that allow me to be more productive at the prompt. Depending on how you manage (configuration management, NFS mounted home directories, etc.) ${HOME} making sure your bashrc gets updated when you find a cool new feature can be a pain. I was tinkering around last weekend and thought about adding a block of code to my bashrc to run curl to grab the latest version of my bashrc from github. The following short code block works for my needs: If a new version is available (a VERSION variable tracks the release #) I get the following output when I log in: If github is unavailable due to a service issue or a firewall won't let me out the script will let me know: How are you keeping your shell profiles up to date…
$ read more →One of the best docker resources on the interwebs
For the past two years I've scoured the official docker documentation when I needed to learn something. Their documentation is really good but there are areas that lack examples and a deep explanation of why something is the way it is. One of my goals for this year is to read one technical book / RFC a month so I decided to start off the year with James Turnbull's The Docker Book. James starts with the basics and then extends this with a thorough description of images, testing with docker and orchestration…
$ read more →Using the vSphere flash read cache feature to speed up sequential reads
Duncan Epping gave a great overview of vSphere's flash read cache feature and I wanted to take it for a ride. This feature reminds me of the ZFS level-2 ARC which allows SSD drives to be used as read and write caches. The vSphere vcache only provides read caching but that is still super useful for read-intensive workloads. To see how it performed I broke out my trusty old sequential read script to get a baseline: Not too shabby for my old rusty NFS datastore…
$ read more →The power of locality in VMware vSphere environments
I was doing some network throughput testing last weekend and wanted to see how much locality played into virtual machine deployments. The VMware virtual vmxnet3 network adapter is capable of 10Gb/s+ speeds and was designed to be extremely performant. To see what kind of throughput I could get over a 1Gb/s link I fired up my old trusty friend iperf and streamed 6GB of data between VMs located on different ESXI hosts: This was about what I expected given the theoretical maximums of 1Gb/s copper l inks. To see how things performed when both VMs were co-located I vmotioned one of the servers and re-ran the test: The vmxnet3 adapter is not just capable of pushing 10Gb/s it is capable of pushing data as fast as the motherboard and chip set allow…
$ read more →