Tuesday, April 27, 2010

VMware VDI Considerations

I have been building VDI sandbox solutions for a while and have a few points of interest you need to consider. While most of this is theory it is based on real empirical data. I will be posting much more information and a step by step guide. I mostly use VMware's View for implementing VDI solutions. There are some other really good solutions out there such as Quest vWorkspace, Citrix/Xen Desktop and Panalogic. Here are the main points to keep in mind:

Networking - Most people don't realize that a bad network implementation can really negate a good VDI solution. Something as simple as SNMP monitoring of switched ports using Cacti can show you where the network bottlenecks occur. Fixing the problem can be a bit trickier. Using internal routes and bonding uplinks can give you the bandwidth needed to feed the end users. Studies have shown that VLANs both hinder and help with network traffic. I am not sure which to believe but you should keep this is mind and monitor these if you have problems.

Storage I/O - While most people keep have a consistent type of storage like all fiber channel or iSCSI, VDI needs really fast storage when booting up end users images. Some people call these "BOOT Storms" and they can cripple the best solution. Big storage companies like NetApp have Solid State partitions for such things. You can plan for this by separating out the main boot images [high speed] from the user data [slower] in the VDI broker. Also later on we will talk about separating out applications such as MS Office from the OS.

Processor/RAM - VDI is a lot different from server virtualization. End users watch things like YouTube, listen to music, watch videos, etc. The end users will use as much RAM and CPU as they can so plan like you are rolling out individual desktops when planning your capacity. Even the best planners will find that users will exceed your expectations. Also consider that end users will get viruses which will eat up your resources pretty fast. You should consider and pre-assessment and post assessment using tools like Liquidware Labs. These tools will show you what programs end users are running and what processes use the most resources.

Storage - There are many types of storage and I personally believe that you should have different types of storage that meet the needs of your organization. While most companies use SAN implementations take a look at NAS storage. You can get a lot of storage for less money with NAS and with advances in 10G you can have a single fabric that comes close or exceeds SAN fiber today. The main point here is that you should plan your VDI storage and then multiple it by two. The main reason is that while you might plan for 40GB boot images VDI will store the Delta/User files in separate containers. If users change the desktop or modify the image to be different those changes will creep into the delta which will cause your storage needs to increase quite fast. There are other considerations below that you will want to explore.

Application Visualization - This goes a long way in keeping your VDIs slim and trim. Most people will find that the VMware's ThinApp is easy to use and by keeping your applications on a network share you will keep the base image easy to manage. You should try and configure as many application off of the image as possible.

There is much more to publish so I will keep writing in the future and publishing code samples. Have fun and let me know if you have something to add.

Wednesday, April 21, 2010

Linux Deduplication

I have been looking for an Open Source data deduplication system that is stable enough to use for SMB file servers and for VMware iSCSI targets. Just recently I found a couple that show major promise. I wouldn't say that I am an expert on the subject and to be honest I really am a bit scared of the technology in general because the information stored it not "all there" if you know what I mean.

I think it is wise to really justify the need for it and at most always have some kind of backup to make sure you can get to the un-duped data just incase.

Here are some good open source projects that you might want to take a look at and test with:

FUSE - http://fuse.sourceforge.net

lessfs - http://www.lessfs.com

Keep in mind that you need to research how to implement this technology. I will eventually write an entire post on how to set up some sort of test bed for each. I will include a step by step scenario using it for SMB sharing.

Monday, April 19, 2010

Gem 1.3.2+ on Ubuntu 9.10 from scratch

So I was working on a new install of Redmine.org and it needed Gem 1.3.2 which doesn't come with the Ubuntu 9.10 in the apt-get packages.

I made sure that Ruby 1.8.7 was install on the system by entering this
ruby -v
If nothing showed up refer to my ruby post for installation instructions.

Ok, so I am going to download the installer to the linux machine and then install
wget http://production.cf.rubygems.org/rubygems/rubygems-1.3.6.zip
unzip rubygems-1.3.6.zip
cd rubygems-1.3.6
ruby setup.rb
Everything should have installed properly. Now look in the folder /usr/bin/ for gem1.8. Now most people might have already caught this but I didn't at first. you can't run "gem" from command line because it is actually gem1.8. I created a sym link to the gem1.8 with the below command.
cd /usr/bin
ln -s gem1.8 gem
That should do it. Log into the system as a regular user and then enter the below to check the gems version
gem -v

Raspberry Pi Zero W - Wireless Configuation

create the file under "boot" folder wpa_supplicant.conf country=GB ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev u...