The term virtualization can have several definitions depending on the context of what is being virtualized, whether its an operating system, a network interface or storage device.
Relative to this article, I would like to confine the definition of virtualization to disk storage in the open systems world. Virtualization is essentially taking something physical and converting it into something that is logical.
Brief History of Storage Virtualization
The evolution of storage has taken us from having a single direct attached harddrive, to a disk array (JBOD), to RAID, to virtual volumes created from a set of disks in a RAID group to virtual volumes from a pool spread across many RAID groups and even beyond that. In the days where disk arrays did not have RAID capability, the operating system would take the individual disks and create local volumes from them within a logical volume manager (LVM). Many LVM solutions offered the ability to create several RAID types, such as mirroring, striping, concatenation or some type of parity set. Having the flexibility to manage the stripe width, block size and RAID type gave system administrators the flexibility to manage storage at the server level and tune the environment as required. Combining the LVM product with a filesystem gave administrators the ability to manually reclaim or grow volumes on demand. However, there were downsides to solely managing storage at a server level. One reason is that each host had to be managed on an individual basis. Another reason is that some LVM solutions required licenses and depending upon how large the environment is, the cost model did not scale well. Finally, and perhaps most importantly, for any volumes that needed to calculate exclusive or (XOR) parity, it required CPU and memory resources of that host, taking away those resources that could be preserved for the primary application which could have a negative performance impact.
RAID arrays became increasing popular in the early 90’s to offset several of the issues I explained earlier. Environments were adopting this new technology and shifting from a distributed storage model to a more centralized approach. As storage arrays evolved in capacity and protocol supportability, so did the functionality and capabilities. As the cost of storage area networks decreased in the early 2000’s it became more cost efficient for companies to incorporate a storage network (SAN) into their environment. Storage vendors at the time where already offering the ability to create volumes from a set of disks in the storage array from a disk group which was part of a RAID set. For instance, a set of 4 hard drives will be formatted together to create a RAID-5 disk group in the storage array.
If these were 36 GB drives, the raw capacity of this RAID-5 group would be around 108 GB. The storage administrator would then create smaller 20, 30 GB volumes, or logical units (LUNS) from this RAID set and present them to the host. Storage arrays at the time had the ability to set security on these LUNS so that hosts only see the storage that it was permitted to access.
As the demand for more granular control and performance requirements of storage increased, so did the technology. Having more spindles (disks) in a RAID group became very popular because it gave the storage administrators the ability to distribute the workload across many RAID groups, basically wide striping. Disk pools where introduced as a means to resolve IOPS (input / output) limitations of a single disk group. This provided the capability to assign the logical LUNS from individual disk groups and assign them to a single pool. From there, storage administrators would create many virtual volumes from that pool. Essentially, virtual volumes are created from blocks that are stripped across many, sometimes hundreds of disk spindles.
Over time, we have gone from having a one to one relationship between server and storage many years ago, to several layers of virtualization within the back-end storage frame before it is presented to the host.
Storage Virtualization Solutions Evolved
Virtualization is more than just pooling disks and creating volumes from wide stripe sets. That’s just the tip of the iceberg. Virtualization is basically the building block to introduce more advanced functions, such things as tiering, page reclamation, centralized management and cross platform interoperability.
Let’s take a common scenario. Let’s assume that we’re designing and implementing a net new storage array. We have some solid state storage that yields around 200,000 write IOPS, then some 15K 900 GB SAS drives that produce about 75,000 IOPS and finally a large amount of 3TB 7.2K SAS drives that provide about 35,000 IOPS. Given RAID levels and installed storage, we have about 16 TB of SSD, 457 TB of 15K SAS and 1.3 PB of 7.2K SAS.
The heavy work load, perhaps a transactional database we would like to preserve for the fastest performing SSD storage, the Exchange environment can reside on the 15K SAS disks and the 7.2K SAS drives will contain all of the archive data, or least accessed blocks. Since SSD is expensive, and because the environment has databases and applications that exceed the installed capacity of our SSD drives, we will need to either purchase a lot more SSD storage to house all of the requirements, or pick and choose which environments will be placed where and perhaps manually move things around during heavy workload periods. This can be a very time intensive process and prone to mis-calculations which could introduce application latency and decreased performance. Plus, let’s not forget that not all applications need high performance resources all the time. Just during high workload periods.
Disk tiering can address this problem. It’s taking what we’ve learned about virtualization a step further by combining these different disk types into a single pool and defining separate distinct tiers based upon the drive performance characteristics. The teiring product has the ability to monitor workload and then place subsets of data (whether its blocks or pages of data) to the appropriate tier to maximize performance and disk utilization. This is very useful in situations where there is a month end batch job that needs the benefit of the highest tier storage to crunch data and produce reports then scale down to a lower tier the rest of the month, freeing up the expensive disk for other environments that may need it. The upside to disk tiering is that companies can be much more strategic by lowering their overall capital investment in purchasing expensive storage resources.
Virtualization can expand beyond the single storage array. It’s not uncommon to have a heterogeneous deployment of storage vendors on the data center floor. The challenge most companies are faced with is leveraging their SAN assets to increase their ROI model across all of these different manufactures. Let me explain. Let’s assume that you have an asset that is nearing it’s maintenance or lease. There was a business decision to switch storage providers. If there is only a few months to move hundreds of terabytes from the old storage to the new storage, what are your real options? How can you maximize the life of your old asset at the same time increase the ROI of your new asset, and at the same time lessen the impact to the environment and still be compliant to your SLA’s? Sure, there are host based (LVM) options, mobility tools within the database (log shipping), etc. The problem is that these methods requires host resources.
Consider another scenario. Your primary datacenter may have a storage array from one vendor and your DR site may be from another storage provider. How would you replicate between the two subsystems if the vendors don’t have the capability to communicate with each other? This could be defined as a vendor lock in problem. Perhaps there is a tactical purpose as to why a company chooses to have multiple vendor relationships.
Array and/or Appliance virtualization solves this problem. By deploying a device that will sit between the two arrays and get them to talk to each other may be that solution. Basically, LUNS will be presented to this device and it will define the storage so that the target will identify the storage as the device virtualizing it. For instance, if I wanted to get a EMC array to replicate to a HDS array, I could integrate a solution such as a FalconStor network storage server gateway and the two frames now see a common storage disk. Some storage vendors, such as the Hitachi VSP, has 3rd party virtualization capabilities built into it where non-HDS storage can be presented to the HDS array and then presented out the front end. Online migrations can benefit from this capability because the data can move between the two (or more) frames without impacting the hosts. InMage is another product on the market that offer heterogeneous connectivity between separate vendor products.
There are many solutions on the market that provide virtualization capabilities whether it’s software, appliance & array based.
As technology continues to evolve in the storage industry, virtualization will continue to mature along side it.
If you ever lost your Windows Login password, that could be a very heart wrenching feeling. Don’t Panic! This process works for both physical machines as well as Virtual VMWare Images. I’ll take you through the steps.
1) First, if you are trying to recover / reset a password on a virtual VMWare image, you first mucy edit the *.vmx file that is found in your VMWare directory. Go to your VMWare image (on a Mac, right click on it and show package contents)
2) Next Open a Terminal Windows (Control Panels – Terminal)
3) Type sudo vi in the terminal window (Do Not press Return yet)
4) Next, drag and drop the *.vmx file into the terminal window and hit return
5) Edit this file and enter this information on the first line:
bios.forceSetupOnce = “TRUE”
6) Save and quit out of that VI session
7) Next download the Offline NT & Password Registry Editor from here
8 ) With you VMMachine shut down, start it and attach the ISO image that was unzipped from your download.
9) When your VM Instance Boots, you will be in the BIOS. Change the BIOS settings so that your VM Image first boots from the CDROM. Then Save and Exit changes
10) Reboot your VM image
11) A CLI (Command Line Interface) will appear.
12) Follow the steps outlined HERE. Pretty much take the defaults by simply pressing return.
13) Eventually you will see a list of system user accounts. Select the user you want to clear the password and clear (delete) that password.
14) Save quit and shutdown you VM image.
15) Edit the *.vmx file again and change: bios.forceSetupOnce = “TRUE” to bios.forceSetupOnce = “FALSE”
16) Save your changes and exit the VI session.
For the past couple of weeks I have been only using the iPad as my primary computer on the road. I want to see if it could replace my laptop and offer all of the functionality I needed on a day to day basis. I mean let’s face it, there are a lot of apps out there and we have to ask ourselves, what do you really get out of a fully blown out operating system such as Snow Leopard and Windows 7. Primarily, most of us use our laptops to connect to the internet, check email, generate documents in Word or Excel, upload photo’s to Facebook, manage finances, etc. All of which can be done on an iPad. I think we are so used to the idea that we need a traditional operating system to satisfy our traditional thinking. I would almost suggest that I think that the Operating System on the iPad is revolutionary in a since that it is completely different from the mainstream approach to computing or rather – our thinking of mobile devices. The Operating System it’s self is nothing revolutionary. We are used to having our data stored locally on our laptop and periodically we will back that data up, right ? I hope so. We are used to going to the nearest Best Buy and buying a software package and installing it on the computer from a CD that takes up a lot of space on our hard drive. I mean let’s admit it, it feels good (or sometime bad) to have a big box with lots of manuals and media for that new version of Office that came out. Not to mention the fact that the new software box smells good when you open it. I think we have grown accustomed to the fact that we need all of that stuff Windows or Mac operating systems has to offer. That is an old way of thinking. Why have we accepted long boot times, short battery lives, viruses, etc ?
The future of remote on the go computing is smaller, faster, more portable, access anywhere cloud computing. This is what the iPad is offering.
I think we will still have traditional laptops. But I project we will see more mobile devices like the iPad that will offer a more defined, simpler computing experience.
1) No Boot times. Always ready.
2) While using Numbers (Excel), Pages (Word) or Keynote (Powerpoint), instant save. No more saving your document every few minutes.
3) Very long 12+ hour battery life
4) No mouse. Just use your finger
5) Lots of FREE apps
6) Very simple operationally. Grandma can use it
7) Easy to backup AND restore.
8 ) Standard interface. Every iPad is the same.
1) Limited port connectivity such as USB
2) No Web Cam
3) There is no central Documents folder
4) Some compatibility limitations with traditional standard office applications
One would think that because of these limitations, you will not be able to replace your laptop. I dispute that. I believe you can. Admittedly, there has been occasions where I needed access to a MS Project file or something only my PC could do in which the iPad simply is not there yet technically. However, this has not stopped me from thinking that the iPad can and someday will replace portable computing as we know it today.
I have tested many apps. There are a lot of great apps out there. Right now, I want to focus in on three apps that are an absolute must have on the iPad if you want to attempt to go completely remote. They are:
LogMeIn, DropBox and DocsToGo
LogMeIn is a software agent that gets installed on your computer at home that allows to to remotely connect to to from anywhere in the world using an internet connection. They have a free version thats works perfect in this scenario. Using the LogMeIn app ($29.99) available from iTunes, you can always connect to your PC at home, anytime, anywhere. I take it a step further and, using a product called VMWare I created a virtual machine running Windows at home on my desktop that I use for LogMeIn. So anytime I need to do something desktop specific in Windows, I can connect to my PC remotely and do it.
However, LogMeIn alone is not going to be complete with out DropBox. DropBox is a utility, (Free subscription for 2GB or less) that allows you to copy your files so that they are accessible anywhere. Any of your computers that has DropBox installed on it and configured will sync to your DropBox account. This includes your iPad. Your iPad can access your data on your DropBox.
But – having access to your data is not enough if you want to open your documents for editing. This is where DocsToGo comes into the picture. Picture it as a mini Office Suite on your iPad. It doesn’t offer all of the functionality that is available in a complete installation of Office, however, let;s face it if you are in the go and needed to edit a document, create a spreadsheet, etc., this is perfect.
One of the exiting things that the iPad or any future simular device has to offer that hardware that run solely on a Windows or Mac platform lacks is the growing developer base. Rather than relying solely on the Microsoft’s, Intuits, Adobe’s, etc to design and release a new software package, you have hundred of thousands of individual users developing software in a market that is exploding. It is much more economical for a individual to spend three or four weeks developing an App that meets a specific demand and sell for $1.99 rather than a huge corporation like Microsoft to devote the recourses in terms of development, marketing, packaging and distribution and compete in that same space. I think that some of the big players will continue (they already do) offer larger applications, at a higher price point.
I compare it alot like what Wikipedia would be like if only a few were to contribute to its content. However, open it to everyone and see how much more information and resources are available and all can benefit from it.
That’s enough for now. As you can see, we are well on our way to a new methodology in terms of portable computing. Like I mentioned earlier, I think we are going to see a lot of other vendors such as HP with their Slate, Dell and others offering similar solutions in the marketplace.
I found this great article on things you can do to cut expenses. I went through all my monthly bills and was able to save several hundred dollars by canceling things like Netflix, changing my DirectTV plan to have them honor the intro rate, etc.
The following are some ideas on how to cut your expenses in order to “generate” some additional cash that should be used first to pay off debt and then to invest.
Why pay off debt first and then invest? It’s all about interest. Basically you pay creditors more than you can make investing. For example, you may owe $3000 to a credit card company at 12% interest, but want to have some cash in a savings account for “just in case”. If you pay off the credit card you can always charge the amount if you have an emergency – DON’T charge if it’s not an emergency (see wise use of credit cards). But, if you keep a balance on the credit card, you’ll be paying 12% interest, as opposed to getting 0.3% in the bank (as of March, 2005). The difference is 11.7%, which is what you’re paying to “feel good” about having money in the bank. You ain’t makin’ no money, you’se spendin’ it, in fact, you’se wastin’ it.
In other words, Interest: them that get’s it, gets it, them that don’t, don’t.
Here are some ideas for cutting expenses, some of them are simple and you may already be doing them:
Eat out less. Don’t stop completely, but you’ll save money by eating out less. For example, a family of 4 eating out at MacDonalds (“cheap” food), will spend upwards of $20 for one meal. That same family can have hamburgers, fries, and cokes for less than $10.
Hamburger: Lean ground beef patties (already made up), $2.30/lb – 2 pounds=$4.60
Lettuce: $1.49 each
Tomato: 6oz, $1.12
French fries: $2.49
Total (assuming you have ketchup, mustard, salt, etc.) $9.70
This is shopping at an expensive grocery store, and you’ll have some things (fries, tomato, lettuce) left over for another meal. If you buy some foods at a discount warehouse you’ll save even more.
Now, if you save $10 for just one meal a week, you’ll have an additional $40 per month to put towards paying off your debt
Shop at warehouse stores, but only for those things that will “keep”. If you don’t have a large freezer, don’t buy lots of stuff that has to be kept in a freezer. Only buy those items you can use before they expire. Buying a case of tuna, for example, can save you 10 to 15 cents per can, and if you eat two cans a week, that’s $10 per year – not much but it all adds up.
Change your diet. I don’t mean change everything, just a few things. Eat more vegetables, they’re less expensive. Choose the store brand instead of the name brand – if it’s actually less money. Reduce your intake of food if you can.
Rent a movie instead of going to the movies. A family of four will spend $32 to go the movies, before buying drinks and snacks. You can rent a movie for $3, buy popcorn for $3 and a couple of 2-litre bottles of coke for $2, saving at least $20. And you can watch the movie in the comfort of your own home, and put the kids to bed if they fall asleep during the show. This doesn’t mean that you never go out, just that you can save $20 a week if you go out one less time per week.
Take the kids to the park instead of buying them a video game.
Combine trips and errands, saving gas and time.
Track how much money you spend on “stuff” each day. If you go by the corner store on the way to work to get a donut and coffee, maybe you can buy some donuts at the grocery store, and make your own coffee. Buy soda at the grocery store, instead of individual cans or bottles at the corner store. A 2-liter bottle of Coke is $1 right now at my local grocery store, but a 1-litre bottle at the corner store is $1.59. It’s not a lot, but it adds up.
Every time you spend money, whether it’s cash from your wallet, using a debit card, credit card, or writing a check, ask yourself a couple questions.
Do I really need to buy this now? or can it wait?
Is there something I can buy for less money that will fit the bill?
How am I going to pay for it? Don’t take it from the amount you’re using to pay off debt
If you ask yourself these questions, you’ll be less likely to fritter money away.
Close off the rooms in your hose and shut the heating / cooling vents to those parts of the house you’re not using.
Put up window insulation wrapping. This is a clear plastic that you put over the windows, it creates an insulation area between the room and the outside, reducing energy costs.
Insulate the house – this can be a large expense, so analyze it well before doing this.
Use less expensive methods of heating your house – a fireplace if you have free or cheap wood available for example.
Don’t get a new (or used) car until the old one is paid off and will cost too much to repair – and then pay cash for it.
Reduce, re-use, recycle. Wherever possible use less of whatever it is you’re using. And then use it again for something else. If you’ve exhausted it’s uses, recycle it. The local grocery store gives a 5 cent discount for every bag you bring in to re-use, for example. Use grocery bags as trash bags. Don’t use paper plates or cups. Use the backs of paper to write on.
Keep more organized. If you can find something, you won’t go buying another one.
Turn off the lights in the rooms you’re not using.
During the summer, open the windows at night, close them and the shades during the day. This will keep the house cooler, and save energy.
Get a programmable thermostat, or turn the heat / air conditioner off (or down) when you’re not in the house.
I’m sure you’ll think of more ideas that fit your circumstances as you start to implement these ideas. The point is to start thinking about money as you do the things you do. You don’t have to become a tightwad, just think about ways to save money throughout the day.
If you are like me, I spend a lot of time dialing into conference calls from my iPhone. Sometimes it would be nice to pre-program the conference bridge number along with the pin number and save that information as a contact. When you dial a conference number, you need to have a pause before you enter your pin number. By the way, the same rule applies if you are using a calling card or any other process where you need to add additional digits after you dial a number. To enter a pause, you would use a comma. The problem is that the keypad on the iPhone does not have a comma. So I decided to figure out a way in which to configure a number and paste it to my keypad and then save it to my contacts using the notepad on the iPhone.
I use Skype quite a bit and noticed one day that it has the ability to auto-answer incoming phone calls and enable your web camera. One may ask, why would you ever to do this? You can use this feature when you are away from home on vacation so you can dial in to your Skype account and then watch live video of your house. Since Skype is free and most people have a web cam, then this is a perfect solution if you wanted to set up a quick and dirty remote web cam security system.
So if you had multiple computers, you can set up multiple Skype Accounts such as gregnbrown_livingroom or gregnbrown_frontdoor, etc, you would dial in to whatever account you want to view. Of course, you will want to set up your profiles so that only you will be allowed to call into your account and disable anyone else who is not in your contact list.