9 ways to reduce cost of doing business online

Posted by Alok Chitre
2
Apr 1, 2009
731 Views

I wrote about the 19 myths of doing business online. This third in the series looks at ways to reduce costs and tighten the purse strings if your business is primarily online.

1. Change your data center plan
Data center costs, hardware, hosting, management (what they call managed hosting) and bandwidth, all of these form a significant part of the costs for any online business. Typically, you sign up for a given data center plan. For example, let us assume that you are on a Savvis managed compute plan. You are charged a fixed amount every month for a given menu of hardware, bandwidth and services. Typically, these contracts continue for ever, with your credit card being debited every month in advance.

The first step is to renegotiate the contract downwards. No. Data center plans are not inscribed in stone. They are open to being re-negotiated.

As part of the re-negotiation, there are a few other things you can do. Typically each server comes with a fixed amount of bandwidth. If you have bought tour hosting piecemeal instead of as a group, then you may be paying overage charges for some servers while you will be under-utilizing bandwidth on others. Combine all your servers and ask for the bandwidth to be pooled if that is the case. If you have limits to the number of free service tickets per server, then ask for pooling that also.

If you have ordered your servers some time back, you will find that the data center would have upgraded the plan in current offerings. For example, Rackspace now offers 1TB of bandwidth per server per month with even their basic offerings. About a year back, if I remember right, this was just 2,000 GB. You can easily ask for an upgrade to the current offering if you are paying overage charges.

2. Change data center
In the good old days, when cash flow was not an issue, you could afford to be at the best of data centers and not cringe at the costs. But today, do you really need that level of service, or more importantly, do you want to pay that much?

The best of data centers, say like Savvis could cost in US$ 1,000 + per server per month. One rung lower, for example Rackspace would be upwards of US$ 600 + per month. The third level, some one like ServerBeach, without the management options would be US$200 + per month range.

The savings are obvious.

3. Deploy across multiple data centers
Now, changing data centers is not an easy task, and in many cases just the complexity of the application you have been running would rule out a complete data center change. The way out then to reduce costs is to deploy your applications across multiple data centers.

Every web business would include multiple applications. For example, there would be your core business application, and there would be add on applications like e-mailers, video hosting, microsites and so on. Now, all of these do not have the same criticality or maintenance level requirements.

In such a case, you could deploy them across servers with different service level agreements or even multiple data centers with different costs and service levels.

For example, your core application could be at Savvis, your secondary applications could be at Rackspace and your e-mailers etc. could be at ServerBeach. You may even opt to do small volume pilots on shared hosters like BlueHost, who start at under US$10 per month!

4. Change your analytics
Web analytics is a software that tells you who has come to your website, from where and what they did there. Web analytics is costly, damn costly. And that is all the more reason to replace it with a free one.

Many large web sites (read websites with large traffic) use Google Analytics, which is free. If you do not like Google, Yahoo has a hosted analytics service that is offered on the SAAS model. There are many other hosted analytics providers like Compete that you could try out.

If you do not want to go for a hosted option, then you could opt for AWStats, which parses your webserver logs to give you the analytics.

5. Consolidate and Virtualize
Servers for web apps have a nasty habit of proliferating. Every time you want to add a new application to the pool, it is too easy to add just another server. So, after some time, you end up with poorly loaded servers or servers that are used only for part of the time.

If you have such equipment in your pool (and don’t assume that you don’t have one. Chances are high that you have), it is time to consider reducing the number of servers you have by consolidating multiple applications on to one server. You could simply run multiple applications on the same server and point them to different URLs and ports or you could go the whole hog and run them on different virtual servers. If the application architecture is complex or if it is rapidly evolving, then virtualization may be more easy to manage. Maybe there are applications that need to be run only on certain intervals? Like one that once a month, reminds members who have not logged in during the month about the goodies available? These lend themselves particularly well to virtualization.

Virtualize your server with Virtual box
Geek warning:You do not need to read or understand this part. Get your Technology team to do it for you. We are including this just to demonstrate how easy it is to set up virtualization.

Virtual box is free software for Windows and Linux that can be used for creating and deploying virtualized environments. Here we will deploy virtualization on Ubuntu Linux (Hardy).

Installing Virtual box

Open a terminal window on the Ubuntu desktop, and issue the following commands.

# wget http://www.virtualbox.org/download/1.5.6/virtualbox_1.5.6-28266_Ubuntu_hardy_i386.deb

# sudo dpkg -i virtualbox_1.5.6-28266_Ubuntu_hardy_i386.deb

# sudo apt-get install bridge-utils

This will download and install the virtual box software as well as the advanced networking features.

Next you add users to the virtual box group. For this you need to click on Systems>Administration>Users and Group. This will open the user setting interface. By default it is locked. Click on the unlock button to unlock it - you will be asked to give the administrative password. Now you will be shown all the users existing on the system. Select the users who will be using virtualization and from the right pane select manage group. Now you will be shown all the groups. Here select “Vboxusers” and click on the properties button. It will open another window showing the list of users on the linux system. Select the users using virtulization and click ok.

Now logout from the machine and login as the user you have configured for virtualization above.

Creating Virtual machines on Virtual box
From the GUI console, click on Applications menu and select System tools>Sun xVM VirtualBox.

This will open a wizard Interface with the license agreement, click on the “I agree “ button. On the next page you will be asked to register the product. Give you email details to register it and click on continue button. Once registration is completed you will be able to create the virtual machine.

Lets see how to build a Windows virtual machine on this. On the Sun xVM virtualbox interface click on New. This will start the new virtual machine wizard. Click next, give the machine a name and select the type of OS that you are going to install from the “OS type”. After this click on “Next” and you will be asked to set the memory requirement for the virtual machine. Set the memory using the slider. Let's say 256 MB, and click on next. Now, you specify the hard drive for the virtual machine. Either choose an existing image or press "New" to start the "Create New Virtual Disk". This will run the disk image wizard. Select create a “dynamically expanding image” and the disk image you’re creating will expand automatically when more space is needed by the virtual machine.

Now select the actual size of the image. Here you need to define how much virtual hard disk space you’ll have to the virtual machine. When you click next, your new virtual hard disk will been created and will be shown in the drop down. Click next. And you will be given final confirmation.
Now, click finish.

Booting your virtual machine from the Windows XP installation CD
Once the raw virtual machine is created, it will be like a new machine and you need to install an OS on it. Put the windows XP installer CD in the CD drive. As this is a virtual machine, you need to mount the CDROM on the virtual box, so that the virtual machine can access the physical CDROM. To do this, you need to do a few settings for the virtual machine. Select the virtual machine that you have created, and click the settings button and select the CD/DVD-ROM tab. Make sure you select the “Host CD/DVD ROM” and also select the location from the drop down. Now click ok to save the setting for the virtual machine.

While you’re in the settings window, lets also setup the basic network. Click on “Network” - “cable connected” check box is selected - which enables your new virtual machine to get an INTERNET connection – and click OK. Now it's time to start the virtual machine, for this click the “Start” button from the virtual box interface. As you have provided the Windows XP bootable CD to the CD/DVDROM, the virtual machine will start the windows XP installation. Once, you are through with the installation, you are ready to use the Windows XP virtual machine.

Advance Networking settings
If you want to use the same virtual machine on the network, so that users on the network can access the machine resources such as web or RDP, you need to do a few more settings. First, on the Ubuntu Linux server, open the terminal window. Edit the following file using the following command.

#sudo gedit /etc/network/interfaces

auto eth0

iface eth0 inet manual

auto br0

iface br0 inet dhcp

bridge_ports eth0 vbox0

# The loopback network interface

auto lo

iface lo inet loopback

eth0" is the name of your interface, it can be different depending on your machine.

"br0" is an arbitrary name for the bridge.

"vbox0" is an arbitrary name for the device VirtualBox will use, if you want more devices, you just add then like: bridge_ports eth0 vbox0 vbox1 vbox2 vbox3 vbox4

Save this file and restart the networking service using this command

# sudo /etc/init.d/networking restart

After this open another file on the host linux machine. To declare the virtual interfaces used by VirtualBox

# sudo nano /etc/vbox/interfaces

vbox0 br0

vbox1 br0

Save this file, and go the virtual box interface and select the virtual machine, now click on the setting >network. Here select the Host networking, and set the virtual interfaces name as “vbox0”.

By this setting you virtual machine will be visible on the network and users on the network can access the machine resources seamlessly.

Contributed by: Sanjay Majumder, Senior Manager, IT Strategy at CyberMedia

6. Off-peak bandwidth
This is of interest to you particularly if you are co-hosting in an Indian data center. Indian data centers tend to have two bandwidth rates – peak rates and off-peak rates. Off peak rates could be 50% or lower than peak rates and typically, they run in 12 hour slabs.

Can you move some of your non-critical applications to use bandwidth during off peak hours? Can you do your emailing activities during off peak hours and save on bandwidth costs.

Typically, you will be able to lease fixed bandwidth ports with unlimited data transfer at fairly low rates.

7. Reduce fraud and wastage
If your customers are paying online, then what is the amount of money you are losing to fraud?

This includes credit card fraud, disputed orders, orders that get lost or damaged in transit and so on. If the losses from these counts are high, then you do not need me to be telling you that reducing this can reduce your costs of doing business!

8. Lease instead of co-host
Indian data centers seem to prefer co hosting while foreign data centers prefer leasing. Co-hosting is where you own the hardware that is hosted and maintained at the data center. Leasing is where the data center owns the hardware and leases it to you. Obviously, there is a down payment required if you want to add new servers to a co-hosting deal. Even more obviously, leasing converts that into an EMI deal that is better suited to the pocket and keeps stating costs down.

9. Re-architect
Like all other software, web applications too tend to grow haphazardly over time. Functionality tends to get duplicated, parts that are no longer working or are required tend to hang around unused, but consuming resources.

If your application has grown long on the tooth, then this may be a good time to re-architect it and make it nimbler and smarter for future benefits


Source:www.dare.co.in

Comments
avatar
Please sign in to add comment.