Archive for December, 2009
28
Dec

Industry Needs

In today’s world of economic upturns and downturns, IT world is seeking tight financial control over organization needs for infrastructure management and would want to move out of investment in assets that would deprecate in terms of value in the near future.

Currently any IT organization invests into hardware and software that would turn obsolete in few years down the line. More over it involves costs to maintain these hardware with upgrades, cost of supporting infrastructure like electricity, coolers, high availability needs, scalabity, faster processing speeds, data center costs, bandwidth costs, RAID and backup needs adds to the expenditure wallet. Other maintenance costs involves upgrades and updates of softwares – licensing and patching, protection of data loss and anti-viral solutions.

Inspite of investing, the utilization of the infrastructure varies and usually does not reach the optimal levels of cost-effectiveness.

The Solution

As there is an old saying - Necessity is the mother of all inventions. Big players in the corporate world came up with an answer – Virtualization; to cap down the costs of small and middle level organizations and still run the competitive marathon.

With solutions like VMware, Sun VirtualBox, MS virtual server, it became easier to address these issues.

What is virtualization?

Virtualization is a cost-effective solution to high maintenance and infrastructure costs, demands to scale and upgrade hardware and software horizontally and vertically to meet the ongoing dynamic needs of infrastructure.

How is the game played?

The big players like Amazon, Microsoft, IBM provide virtual infrastructure in the cloud. They have the capability to bulk invest in hardware with high end servers, huge data centres, bulk licenses and cost-effective utilizations of infrastructure. The investment costs thus are reduced and distributed in quantity. They take over the headache of patching, upgrading, fixing, scaling, software and hardware managing data security and backup and adhere to SLAs.

This gives organizations to focus right on the business needs and not to worry about the needs of infrastructure. The infrastructure costs are reduced to minimum with almost any infrastructure available on demand in a span of minutes.

Virtualization Technologies

Server Virtualization

With high end servers supporting capabilities of running multicores and memory in TB, they are capable of running multiple apps in the same box. Server virtualization helps manage different environments parallely with reduction in administration and maintenance costs to a single box. It helps quick system recoveries, lesser physical space occupancies, power and cooling requirements.

Server Virtualization makes it easy for the server to be migrated from one virtual machine to another irrespective of the hardware capabilities of the machine provided they use the processor from the same manufacturer.

The physical server is called the host server and the servers running virtually are called guest servers.

There are 3 ways to create virtual servers:

  • Full virtualization: Thisis a virtualization technique in which each guest server is unaware of the other on the same host providing complete independent running server capability with it’s own OS.
  • Para virtualization:  In this technique the guest servers are aware of each other and the entire set of servers work as cohesive unit.
  • OS-level virtualization: In this technique the guest servers do not require any software to run and the virtualization is managed by host OS. However, here all the servers need to be running the same OS.

Virtualization is achieved with software called Hypervisor

Storage Virtualization -Storage Virtualization separates the logical storage of data from physical storage.

With increase in data capacities reaching up to Peta Bytes, organizations face the dilemma to whether accrue more storage space or to store data in the cloud. Storage services are available from Amazon and Yahoo and online backup services available from Egnyte, XDrive, Adrive, Box.Net, Sky drive at a very cheap costs, it is becoming increasingly easy to move data over the cloud. Moreover, the data is easily accessible from anywhere over the internet and backing up of data, data protection and security and scaling of data storage is passed over to the service provider.

Networking Virtualization - Combination of hardware and software network resources into single software-based administrative entity is network virtualization. Network virtualization involves External and Internal virtualization.

External Virtualization involves connecting physical networks in different locations over VLAN and on a same network switch such that resources in each network can interact with resources of the other.

Internal Virtualization involves in creating a network in the box. Network Virtualization software provides pseudo interfaces such as VNIC and Virtual switches.

This allows isolating each application in it’s own sandbox improving efficiency of the overall system.

Desktop Virtualization - Desktop Virtualization is a concept of separating a personal computer desktop environment from the physical machine. These virtual desktops are stored on a remote server and accessible via remote client technologies. This allows all programs, applications and data stored separately thus allowing access to desktops from any capable client.

Deciding to Virtualize or not

Operational Issue

OS upgradations like fixes, patches, anti virus updates, spyware scanning etc are operational day to day tasks that need to be taken care of on each VM.

CPU Usage

Servers requiring high processing power should be left in their own world. Virtualizing them would mean disaster while a high end server with very less CPU usage may be considered for virtualization.

Disk space usage

Multiple servers on host system means sharing of resources including disk space.

Migration

Ease of migration of virtual server should be considered to reduce downtime and allow server maintenance.

Data Security

The level of data security that is needed would be a major factor in deciding to go for virtualization. Isolation of business critical and private data should be considered.

SLA

There are SLAs for virtualization services provided by hosting organizations. However, there are lot of factors that drive the SLAs and the onus of responsibilities like bandwidth, network connectivity etc.

Legal Bindings

Laws binding data privacy are still not in black and white and legal rights are bounded by the laws of the respective countries where the data is physically stored.

Summarizing, there are various pros and cons in virtualization technologies. To virtualize storage and desktop on the clouds is a wait and watch game at a moment until few of the major issues are addressed. Virtualization is definitely here to stay though and it would be great to use it in your own private organizational cloud.

Players in Virtualization Software

VMWare, Sun VirtualBox, FreeVPS, Microsoft Virtual Server, Parallels, Qemu, SWSoft, Virtual Iron, Virtuozzo, Xen

- Anand Ved (Team Member – Cloud Computing Project)

, ,

11
Dec

The speed with which mobile technology is evolving is beyond remarkable. So much, that you may in fact, be viewing this post on your mobile. Gone are the days when you would have a mobile phone solely for the purpose of connecting with your friends & family. Now, you can connect with 300 million+ users on Facebook, listen to the latest music from Last.fm, view videos on YouTube etc. all using your ‘handheld’ device. The list of can-do’s is endless. What goes on behind the scenes is the collaboration of developer minds, striving to stretch technology, constantly redefining benchmarks to create services & applications that make life a whole lot easier.

While the success of social networking is undeniable, lifestyle & Location Based Services (LBS) have helped users to simplify their needs & achieve them; locally & globally. However, the process of satisfying user needs in a constantly changing environment requires a thoughtful understanding & analysis of the changing trends which has been successfully catered to. There is no doubt that there exists a challenge of providing quality applications to a variable audience with innumerable preferences. We have accepted this challenge, acknowledged the pros & cons & delved into bringing out the best solutions.

The iPhone is known to deliver ‘eye candy’ experience with its UI, having the user to touch & pinch to use applications. Having said that, many applications fail to utilize the potential of the iPhone, unable to handle development challenges. Given below is a little insight into some of these challenges.

Developer’s Eye View:

  • The iPhone runs only one foreground application at a time, so launching any other application requires terminating the currently running app.
  • Responding to interruptions like incoming calls, messages etc. is important because if the user decides to take a call or reply to an SMS message, the system proceeds to terminate the application.
  • Low-memory warnings are critical. If not enough memory is released – perhaps because the application is leaking or still consuming too much memory – the system may terminate the application.
  • Being a touch driven device, the controls of the application need to be placed with some thought.
  • The iPhone screen is precious as it is the component with which users interact. An application with a crowded screen may deviate the user’s attention much like in a real life market place.
  • An applications UI view differs when the iPhone is held in portrait or landscape mode. Tap’s drags, and swipes are simple gestures, typically involving only a single touch. Handling a touch event consisting of two or more touches is a more complicated affair. In addition, the iPhone generates motion events when users move the device in a certain way, such as shaking it. It is necessary to prevent the application from responding in an unexpected (and unwanted) manner in response to such events

Now let’s take a look at how one can avoid getting into the possible sticky situations given above:

  • It is imperative that an application should terminate as usual, saving any needed contextual information to return the user to the same place (if required) in the application upon next launch (or re-launch).
  • Adhering to Apple’s Human Interface Guidelines saves a lot of confusion & gives well designed interfaces.
  • Handling events, implementing event cancellation etc. correctly, prevents the app from being left in an inconsistent state.

These & many more underlying intricacies can very well determine the chances of an app being realized. Adapting to this one button device, we have delivered attractive, feature rich applications that meet App Store standards & have satisfied users looking to be part of changing lifestyle trends.

-Anup D’souza

, , , ,