<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-7912068605233390124</id><updated>2012-01-08T21:52:20.115-08:00</updated><title type='text'>EnableCloud</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://enablecloud.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://enablecloud.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Manaranjan Pradhan</name><uri>http://www.blogger.com/profile/00587309481023161990</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>36</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-7912068605233390124.post-1721521888377428523</id><published>2011-06-27T20:23:00.000-07:00</published><updated>2011-06-27T20:23:24.623-07:00</updated><title type='text'>CloudWatch Custom Metrics for better decision making...</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;span style="font-family: &amp;quot;Trebuchet MS&amp;quot;, sans-serif;"&gt;AWS Cloudwatch is used mostly to monitor AWS resources. The most widely used monitoring are system metrics like CPU utilization, memory consumtion, DISK and Network IO. Based on these information, we can take decisions to change the environements to cater to demand fluctuations. Though traditionally these information were primary source of predicting load behavior or system performance, in today's world there are better business parameters which can be used to forecast demands.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: Trebuchet MS;"&gt;For example no of active user sessions, user experience or response time, no of transactions etc can also be equally important to analyze the performance and take decisions to scale up or sclae down resources. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: Trebuchet MS;"&gt;Even business factors like there is expected surge in demand like there is a increase in rain fall or sudden decrease in temperature or sudden change in a match result, can also predict user demands. Although these parameters are computed outside the AWS systems, these can be fed to Cloudwatch to forecast demands and scale up and scale down resources and ensure better user performance.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-9_ObtrRgE1E/TglHn-AWw6I/AAAAAAAAAGg/8EHI7zmHhoQ/s1600/Cloudwatch.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="394" i$="true" src="http://3.bp.blogspot.com/-9_ObtrRgE1E/TglHn-AWw6I/AAAAAAAAAGg/8EHI7zmHhoQ/s640/Cloudwatch.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;span style="font-family: Trebuchet MS;"&gt;This can be achieved by using the new features of using custom metrics in CloudWatch.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: Trebuchet MS;"&gt;AWS Resource, Applications, Business related data can be fed to CloudWatch and then these metrics can be used by autoscaling to take decision to scale up or down. Also, these data can be fed to monitor graphs or enable notifications. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: Trebuchet MS;"&gt;The recent release of cloudwatch APIs are supporting this feature and is avalialble in .Net, Java, PHP SDKs. &lt;/span&gt;&lt;br /&gt;Here is a blog from AWS for some more information &lt;a href="http://aws.typepad.com/aws/2011/05/amazon-cloudwatch-user-defined-metrics.html"&gt;http://aws.typepad.com/aws/2011/05/amazon-cloudwatch-user-defined-metrics.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7912068605233390124-1721521888377428523?l=enablecloud.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://enablecloud.blogspot.com/feeds/1721521888377428523/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7912068605233390124&amp;postID=1721521888377428523&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/1721521888377428523'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/1721521888377428523'/><link rel='alternate' type='text/html' href='http://enablecloud.blogspot.com/2011/06/cloudwatch-custom-metrics-for-better.html' title='CloudWatch Custom Metrics for better decision making...'/><author><name>Manaranjan Pradhan</name><uri>http://www.blogger.com/profile/00587309481023161990</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-9_ObtrRgE1E/TglHn-AWw6I/AAAAAAAAAGg/8EHI7zmHhoQ/s72-c/Cloudwatch.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7912068605233390124.post-17350650734124555</id><published>2011-06-27T03:02:00.000-07:00</published><updated>2011-06-27T03:02:13.972-07:00</updated><title type='text'>Amazon AWS ecosystem</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;span style="font-family: &amp;quot;Trebuchet MS&amp;quot;, sans-serif;"&gt;As more and more organizations trying to adopt cloud solutions or hosting solutions on cloud, the ecosystem around cloud providers are are emerging strong. There are software and services providers, who are constanstly innovating to ensure the cloud adpotion becomes smoother.&amp;nbsp;That's what I thought will showcase in this blog to understand what&amp;nbsp;tools and technologies available&amp;nbsp;around major&amp;nbsp;cloud providers. Undoubtedly Amazon AWS is one the&amp;nbsp;major&amp;nbsp;IAAS providers today that organizations&amp;nbsp;are looking at for hosting solutions. As Amazon AWS is there for a long period of time, the ecosystem&amp;nbsp;around it&amp;nbsp;has also&amp;nbsp;been built strongly.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: &amp;quot;Trebuchet MS&amp;quot;, sans-serif;"&gt;I will show from the perspective of a typical application hosting on Amaon AWS.&amp;nbsp;For an application to be hosted on cloud, there are few concerns that need&amp;nbsp;to be address. These concerns can be termed as key requirements for&amp;nbsp;managing&amp;nbsp;the lifecycle of an application. Let's look at some of these key requireements are of course Availability, Scalability, Deployment &amp;amp; configuration Management, System Management and Monitoring. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: Trebuchet MS;"&gt;&lt;strong&gt;Availability&lt;/strong&gt; - Amazon AWS provides multiple availability zones inside each region. Applications components can be deployed across multiple AZs to ensure it survives when disaster strikes. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: Trebuchet MS;"&gt;&lt;strong&gt;Scalability&lt;/strong&gt; - Amazon AWS provides auto scaling to ensure the provisioning and deprovisioning&amp;nbsp;of resources as demand increases and reduces. Also, AWS provides load balancing to ensure the load is distributed across the resources for a better performance.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: Trebuchet MS;"&gt;&lt;strong&gt;Deployment &amp;amp; Configuration Management &lt;/strong&gt;- Deploying software platform and applications, configuring them, managing multiple versions of the deployment&amp;nbsp;are always challenging. It is necessary to create an environment that is repetitively deployable and easily configurable.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Trebuchet MS;"&gt;&lt;/span&gt;&amp;nbsp;&lt;a href="http://2.bp.blogspot.com/-5gz0U5vMuN4/TghMqc-NszI/AAAAAAAAAGc/U4k2jmi2aaU/s1600/AWS+Ecosystem.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="338" i$="true" src="http://2.bp.blogspot.com/-5gz0U5vMuN4/TghMqc-NszI/AAAAAAAAAGc/U4k2jmi2aaU/s640/AWS+Ecosystem.png" width="640" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-family: Trebuchet MS;"&gt;The diagram above depicts a typical Amazon AWS environment along with ecosystem tools.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: Trebuchet MS;"&gt;There are tools which helps create templates describing an environment. An environment can be defined using a template e.g. no of servers, amount of storage, whether it needs a load balancer and in which availability zones etc. So, when templates are deployed, it automatically provisiones the resources and create an environment. Software like chef/puppet can be used to install software platforms and configure them as needed.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: Trebuchet MS;"&gt;Some of these tools are&lt;/span&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-family: Trebuchet MS;"&gt;Rightscale (&lt;a href="http://www.rightscale.com/"&gt;http://www.rightscale.com/&lt;/a&gt;)&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family: Trebuchet MS;"&gt;AWS BeanStalk (&lt;a href="http://aws.amazon.com/about-aws/whats-new/2011/01/19/introducing-aws-elastic-beanstalk-beta/"&gt;http://aws.amazon.com/about-aws/whats-new/2011/01/19/introducing-aws-elastic-beanstalk-beta/&lt;/a&gt;)&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family: Trebuchet MS;"&gt;enStratus (&lt;a href="http://www.enstratus.com/"&gt;http://www.enstratus.com/&lt;/a&gt;)&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;span style="font-family: Trebuchet MS;"&gt;&lt;strong&gt;System Monitoring &amp;amp; Management&lt;/strong&gt;&lt;span style="font-family: Times New Roman;"&gt;&amp;nbsp;&lt;/span&gt;&lt;strong&gt;- &lt;/strong&gt;Cloud resources like servers, virtual machines, storage&amp;nbsp;should be monitored along with application components to ensure high availability. There are tools available which provides plugins to monitor such objects like Zenoss (&lt;span class="f"&gt;&lt;cite&gt;&lt;span style="color: #0e774a;"&gt;&lt;a href="http://www.zenoss.com/"&gt;www.&lt;b&gt;zenoss&lt;/b&gt;.com&lt;/a&gt;&lt;/span&gt;&lt;/cite&gt;&lt;/span&gt;) &amp;nbsp;and Nimsoft (&lt;span class="f"&gt;&lt;cite&gt;&lt;span style="color: #0e774a;"&gt;&lt;a href="http://www.nimsoft.com/"&gt;www.&lt;b&gt;nimsoft&lt;/b&gt;.com&lt;/a&gt;&lt;/span&gt;&lt;/cite&gt;&lt;/span&gt;) . These tools can be used to monitor hybrid kind of environments having cloud and non cloud resources. Cloudwatch monitoring from Amazon AWS is available to monitor specifically AWS resources.&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7912068605233390124-17350650734124555?l=enablecloud.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://enablecloud.blogspot.com/feeds/17350650734124555/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7912068605233390124&amp;postID=17350650734124555&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/17350650734124555'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/17350650734124555'/><link rel='alternate' type='text/html' href='http://enablecloud.blogspot.com/2011/06/amazon-aws-ecosystem.html' title='Amazon AWS ecosystem'/><author><name>Manaranjan Pradhan</name><uri>http://www.blogger.com/profile/00587309481023161990</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-5gz0U5vMuN4/TghMqc-NszI/AAAAAAAAAGc/U4k2jmi2aaU/s72-c/AWS+Ecosystem.png' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7912068605233390124.post-518829973665885263</id><published>2010-09-15T05:54:00.000-07:00</published><updated>2010-09-16T20:42:31.072-07:00</updated><title type='text'>Cloud This Week - Sept 18</title><content type='html'>&lt;span style="font-family: &amp;quot;Trebuchet MS&amp;quot;, sans-serif;"&gt;Here is a brief headlines on what happened this week in the cloud.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color: red; font-family: &amp;quot;Trebuchet MS&amp;quot;, sans-serif;"&gt;&lt;u&gt;Amazon AWS&lt;/u&gt;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: &amp;quot;Trebuchet MS&amp;quot;, sans-serif;"&gt;1. Amazon AWS&amp;nbsp;has released micro instances with 613 MB of memory that can support 32-bit and 64-bit platforms. This will cost $0.002 for linux and $0.003 for windows instance. The micro instances can be used for applications or components of applications that will need less resources.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://aws.amazon.com/about-aws/whats-new/2010/09/09/announcing-micro-instances-for-amazon-ec2/"&gt;&lt;span style="font-family: &amp;quot;Trebuchet MS&amp;quot;, sans-serif;"&gt;http://aws.amazon.com/about-aws/whats-new/2010/09/09/announcing-micro-instances-for-amazon-ec2/&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: &amp;quot;Trebuchet MS&amp;quot;, sans-serif;"&gt;2. AWS Console support for Virtual Private Cloud. VPC is to integrate amazon cloud with in house infrastructure. The in house security features can be extended to VPC. The instances in amazon are isolated and are not accessible directly from internet and they can be accesses through only company firewalls. Even subnets can be created in the amazon cloud and the internal IP addresses can be assigned to these instances.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: &amp;quot;Trebuchet MS&amp;quot;, sans-serif;"&gt;The new console from amazon will help configure the VPC cloud, making it more user friendly and manageable.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://aws.amazon.com/vpc/"&gt;&lt;span style="font-family: &amp;quot;Trebuchet MS&amp;quot;, sans-serif;"&gt;http://aws.amazon.com/vpc/&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: Trebuchet MS;"&gt;3.&amp;nbsp;Amazon released&amp;nbsp;it's own version of Linux on AWS.&amp;nbsp;This instance contains bare minimum services or applications&amp;nbsp;to start with and amazon will keep upgrading or providing patches regularly. Amazon says it is optimized for EC2 environment and comes with some basic set tools for working in AWS.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: Trebuchet MS;"&gt;Here is a link to the &lt;a href="http://ec2-downloads.s3.amazonaws.com/AmazonLinuxAMIUserGuide.pdf"&gt;Amazon Linux Guide&lt;/a&gt;.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: red; font-family: &amp;quot;Trebuchet MS&amp;quot;, sans-serif;"&gt;&lt;strong&gt;&lt;u&gt;Google App Engine &lt;/u&gt;&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: Trebuchet MS;"&gt;1. Google App Engine now support multi tenant applications using namespace APIs. Now the same applications can be used by multiple tenants and their data will be segregated and isolated from each other. This can be done using different namespaces for each client organization. For data operations, the namespace should be used. The data viewer in the appengine management console also have a namespace field to view data for each clients separately.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: Trebuchet MS;"&gt;2. 1000 entities for query limit is removed. Now the query will return end of the result or until the query reaches timeout limit.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: red; font-family: Trebuchet MS;"&gt;&lt;strong&gt;&lt;u&gt;Private Cloud&lt;/u&gt;&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: &amp;quot;Trebuchet MS&amp;quot;, sans-serif;"&gt;1. Vmware and HP have come together for and end to end private cloud offering. The highlights of this alliance are&lt;/span&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-family: Trebuchet MS;"&gt;HP Insight control is integrated with Vmware vCenter to provide single management infrastructure for both physical and virtual infrastrcure.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family: Trebuchet MS;"&gt;The storage attached to HP Proliant G6 servers and inside it can be converted into virtual pool of storage and made available to virtual machines. This removes requirement for external storage like SAN. This will help implement high availability using VMware vCenter without the need for an exernal storage.&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7912068605233390124-518829973665885263?l=enablecloud.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://enablecloud.blogspot.com/feeds/518829973665885263/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7912068605233390124&amp;postID=518829973665885263&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/518829973665885263'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/518829973665885263'/><link rel='alternate' type='text/html' href='http://enablecloud.blogspot.com/2010/09/cloud-this-week-sept-18.html' title='Cloud This Week - Sept 18'/><author><name>Manaranjan Pradhan</name><uri>http://www.blogger.com/profile/00587309481023161990</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7912068605233390124.post-8954212816897221059</id><published>2010-08-22T23:44:00.000-07:00</published><updated>2010-08-22T23:44:44.355-07:00</updated><title type='text'>Why large organizations may not find public cloud so attractive?</title><content type='html'>Large organizations, may not find public cloud so attractive for the reasons below.&lt;br /&gt;&lt;br /&gt;1. &lt;strong&gt;Disruption&lt;/strong&gt;: Some applications can not be migrated as it is. The applications may need to be modified in order to accommodate to a particular public cloud technology or architecture. This will need investment and may cause disruption to the on going business.&lt;br /&gt;&lt;br /&gt;2. &lt;strong&gt;Vendor Lock-in&lt;/strong&gt;: As little standards available in the cloud, most of the public cloud implementations are proprietary. This means there will be a vendor lock-in once you develop for a particular public cloud. Migrating from one cloud to another will be challenging in future, once applications are locked-in to a particular cloud technology and architecture.&lt;br /&gt;&lt;br /&gt;3. &lt;strong&gt;SLA&lt;/strong&gt; – Service levels offered in terms of availability, security or performance may not be acceptable to some of the organizations. Organizations that required higher level of service levels, will find it inappropriate in spite of the cost advantage promised by the public cloud providers. &lt;br /&gt;&lt;br /&gt;4. &lt;strong&gt;Security or Compliance Constraints&lt;/strong&gt; – There may be some security or regulatory compliance issues, which may bar applications and data to be moved onto a public cloud. Some regulatory compliances may need data and applications to be restricted to specific premises or&amp;nbsp;regions or geographies.&lt;br /&gt;&lt;br /&gt;5. &lt;strong&gt;Integration Challenges&lt;/strong&gt; – Most of the organizations have many applications running in their premises that are interdependent or tightly coupled. Moving some of these applications to public cloud may&amp;nbsp;impose serious integration challenges from security or technology perspective. As most of the organizations have strict firewall and data communication policies, integrating applications, which reside either sides of a firewall, may be impossible.&lt;br /&gt;&lt;br /&gt;The above issues are major challenges in considering moving to public cloud, especially for medium and large organizations. Neverthless, there can be some specific business case, where large organizations may find public cloud very appropriate.&lt;br /&gt;&lt;br /&gt;Large organizations, may opt for private cloud or hybrid cloud, as they will have the money to invest to create this model.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7912068605233390124-8954212816897221059?l=enablecloud.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://enablecloud.blogspot.com/feeds/8954212816897221059/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7912068605233390124&amp;postID=8954212816897221059&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/8954212816897221059'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/8954212816897221059'/><link rel='alternate' type='text/html' href='http://enablecloud.blogspot.com/2010/08/why-large-organizations-may-not-find.html' title='Why large organizations may not find public cloud so attractive?'/><author><name>Manaranjan Pradhan</name><uri>http://www.blogger.com/profile/00587309481023161990</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7912068605233390124.post-8209882791636558443</id><published>2010-07-14T01:52:00.000-07:00</published><updated>2010-07-14T01:52:14.046-07:00</updated><title type='text'>Solutions on Cloud 4: High Performance Computing</title><content type='html'>&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;I am writing about this solution because of the announcement of &lt;a href="http://aws.amazon.com/ec2/hpc-applications/"&gt;Amazon's Platform for High Performance Computation&lt;/a&gt;&amp;nbsp;this week.&amp;nbsp;&lt;/span&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;a href="http://hadoop.apache.org/"&gt;Hadoop &lt;/a&gt;framework has been popular for sometime for running complex and time consuming jobs like indexing large amount of files or data ( millions or billions of files), data mining, running analytics for financial or bioinformatics analysis. Here is a list of &lt;a href="http://wiki.apache.org/hadoop/PoweredBy"&gt;real life use cases&lt;/a&gt; for Hadoop. Hadoop uses &lt;a href="http://en.wikipedia.org/wiki/MapReduce"&gt;Map Reduce algorithm&lt;/a&gt;, to divide the work among hundreds or thousands of systems and then combining the results to produce the final output.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;But the practical problem of running Hadoop is provisioning of large amount of servers. It may not be possible for most of the organizations to actually allocate so many servers for limited amount of time, to run these programs. Amazon solves the problem by providing a platform for running Hadoop, called&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;a href="http://aws.amazon.com/elasticmapreduce/"&gt;Amazon Elastic MapReduce&lt;/a&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;. It abstracts the configuration and administration of servers and the Hadoop framework so that developers can focus on developing map reduce programs to solve their problem. Amazon allows to provision as many server they want for the amount of time they require.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7912068605233390124-8209882791636558443?l=enablecloud.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://enablecloud.blogspot.com/feeds/8209882791636558443/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7912068605233390124&amp;postID=8209882791636558443&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/8209882791636558443'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/8209882791636558443'/><link rel='alternate' type='text/html' href='http://enablecloud.blogspot.com/2010/07/solutions-on-cloud-4-high-performance.html' title='Solutions on Cloud 4: High Performance Computing'/><author><name>Manaranjan Pradhan</name><uri>http://www.blogger.com/profile/00587309481023161990</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7912068605233390124.post-6021597331693927704</id><published>2010-07-11T21:37:00.000-07:00</published><updated>2010-07-11T21:37:45.231-07:00</updated><title type='text'>Solutions on Cloud 3: Disaster Recovery</title><content type='html'>&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;Building a DR site for your critical applications and data, can be an expensive affair. Especially if you are a small or medium sized organization. It calls for investment in space, energy, hardwares, personnel etc.&amp;nbsp;&lt;/span&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;Todays' cloud vendors provide an infrastructure that can be leveraged to build a DR solutions at a very nominal cost. Building such solutions are definitely within the reach of SMEs and the benefits it can provide outweighs the cost.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;There are three options for building DR solution.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;1. Deploy the primary solution on your own data center and have the backup components running in the cloud. This deployment architecture can be used for cloudbursting.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;2. Deploy both the primary and backup components in the same cloud infrastructure. For this the &amp;nbsp;cloud vendors need to have multiple data centers, which are isolated from each other.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;3. Deploy the primary components on one cloud vendor, while deploying the secondary components on the other cloud vendor.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;Let's looks at some of the cloud vendors infrastructure and how it can help build a DR solution.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;b&gt;&lt;a href="http://aws.amazon.com/"&gt;Amazon AWS&lt;/a&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;Amazon AWS has data centers in four regions ( us east, us west, europe, asia-pacific ). Each region has multiple availability zones. Each availability zones are independent data centers. Each availability zones have their own servers, own power supply and completely isolated from failures of any other data centers.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;But the availability zones are interconnected with high bandwidth networks.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_HL0dmkQKBxs/TDqWkRfRgZI/AAAAAAAAAF4/enpMZyZJJqg/s1600/Untitled.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="231" src="http://3.bp.blogspot.com/_HL0dmkQKBxs/TDqWkRfRgZI/AAAAAAAAAF4/enpMZyZJJqg/s400/Untitled.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;So, while primary components of your solutions running on one availability zones, the backup components can run either in active or passive mode in other availability zones. The AWS load balancers can route traffic to multiple availability zones in the same region, thereby actively using all components in all availability zones. But the solutions should have enough intelligence built into it, to initiate takeover when a component fails.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;a href="http://aws.amazon.com/s3/"&gt;Amazon AWS S3&lt;/a&gt;, provides highly durable storage infrastructure, by redundantly storing data in multiple availability zones. S3 data can also be copied over to other regions.&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;a href="http://aws.amazon.com/ebs/"&gt;Amazon AWS EBS&lt;/a&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&amp;nbsp;snapshots can be taken and stored in S3 for later retrieval.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;a href="http://www.gogrid.com/"&gt;&lt;b&gt;GoGrid&lt;/b&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;GoGrid's &lt;a href="http://www.gogrid.com/cloud-hosting/multi-datacenter-cloud.php"&gt;multiple-datacenter feature&lt;/a&gt;&amp;nbsp;also provides multiple data center. One in US East and one in US West that can be used to deploy a DR solution.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_HL0dmkQKBxs/TDqb-2u_NdI/AAAAAAAAAGA/6_W_JBvjkUg/s1600/multipop_graphic.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="192" src="http://3.bp.blogspot.com/_HL0dmkQKBxs/TDqb-2u_NdI/AAAAAAAAAGA/6_W_JBvjkUg/s400/multipop_graphic.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;b&gt;&lt;a href="http://www.rackspace.com/"&gt;Rackspace&lt;/a&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;Rackspace does not have multiple data centers yet, but you can use it for deploying your DR site while running the primary components on your own data center. &lt;a href="http://www.rackspace.com/managed_hosting/services/proservices/disasterrecovery.php"&gt;Rackspace's DR Service&amp;nbsp;&lt;/a&gt;provides infrastructure and value added services like professional services for building DR solution for your organization. And these DR solutions can be customized as per organization needs.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;Similary, the DR solution approach 1 or 3 (as specified above) can be built using any of the cloud vendors.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;One of the most important factors to consider is the SLA contract with cloud vendor. It will provide insights into what services the cloud vendor can provide or can not provide and whether it will fit your DR solution requirements.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;Please post your comments and feedbacks.&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7912068605233390124-6021597331693927704?l=enablecloud.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://enablecloud.blogspot.com/feeds/6021597331693927704/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7912068605233390124&amp;postID=6021597331693927704&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/6021597331693927704'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/6021597331693927704'/><link rel='alternate' type='text/html' href='http://enablecloud.blogspot.com/2010/07/solutions-on-cloud-3-disaster-recovery.html' title='Solutions on Cloud 3: Disaster Recovery'/><author><name>Manaranjan Pradhan</name><uri>http://www.blogger.com/profile/00587309481023161990</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_HL0dmkQKBxs/TDqWkRfRgZI/AAAAAAAAAF4/enpMZyZJJqg/s72-c/Untitled.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7912068605233390124.post-3769882860539660827</id><published>2010-07-10T06:03:00.000-07:00</published><updated>2010-07-11T20:48:46.943-07:00</updated><title type='text'>Solutions on Cloud 2: Storage</title><content type='html'>&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;One of the solutions that organizations can take advantage of in the cloud is storage. Opting for storage solutions in the cloud means cost savings in hardware, personnel and physical storage space. Managing storage devices, monitoring for storage capacity planning, managing tape libraries are expensive tasks for small and medium sized businesses. These services are available as Storage as a Service from multiple cloud vendors.&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;Storages that are available as services are can be any of the following types&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;1. &lt;b&gt;Disk based storage&lt;/b&gt; - Raw data storage. Cloud vendors provide features like high availability, automatic fail over, regular backups, scaling on demand. These features make storage as a service very attractive. Small and medium sized organization can avail these features for nominal charges, for which they would have spent hundreds of thousands of dollars.&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;2. &lt;b&gt;Databases&lt;/b&gt; - Databases on demand. Features like running databases in clustering or master-slave mode, regular backups and automatic recovery from failures are definitely appealing features to opt for these services.&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;3. &lt;b&gt;File Storage&lt;/b&gt; - Files can be uploaded and shared with others. The ACL for files can be set for different levels of access for users.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;4. &lt;b&gt;Building content delivery networks&lt;/b&gt; - Delivery contents faster to users that span across geographies need lots of investment in building a content delivery network. But if CDNs are available at a fraction of this cost, then it becomes irresistible. Now any website can use these CDNs to improve performance and reach their users globally faster.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;5. &lt;b&gt;Modern distributed databases (noSQL databases)&lt;/b&gt; - These schema-less databases are gaining popularity for building solutions that are horizontally scalable.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;Here are some of vendors that are providing these services&lt;/span&gt;&lt;br /&gt;&lt;table border="0" cellspacing="0" cols="8" frame="VOID" rules="NONE"&gt;&lt;colgroup&gt;&lt;col width="34"&gt;&lt;/col&gt;&lt;col width="98"&gt;&lt;/col&gt;&lt;col width="131"&gt;&lt;/col&gt;&lt;col width="146"&gt;&lt;/col&gt;&lt;col width="99"&gt;&lt;/col&gt;&lt;col width="117"&gt;&lt;/col&gt;&lt;col width="78"&gt;&lt;/col&gt;&lt;col width="32"&gt;&lt;/col&gt;&lt;/colgroup&gt;  &lt;tbody&gt;&lt;tr&gt;    &lt;td align="LEFT" height="17" width="34"&gt;&lt;br /&gt;&lt;/td&gt;    &lt;td align="LEFT" bgcolor="#FFFFFF" width="98"&gt;&lt;span style="color: white; font-family: 'Arial Unicode MS';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" bgcolor="#FFFFFF" width="131"&gt;&lt;span style="color: white; font-family: 'Arial Unicode MS';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" bgcolor="#FFFFFF" width="146"&gt;&lt;span style="color: white; font-family: 'Arial Unicode MS';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" bgcolor="#FFFFFF" width="99"&gt;&lt;span style="color: white; font-family: 'Arial Unicode MS';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" bgcolor="#FFFFFF" width="117"&gt;&lt;span style="color: white; font-family: 'Arial Unicode MS';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" bgcolor="#FFFFFF" width="78"&gt;&lt;span style="color: white; font-family: 'Arial Unicode MS';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" width="32"&gt;&lt;br /&gt;&lt;/td&gt;   &lt;/tr&gt;&lt;tr&gt;    &lt;td align="LEFT" height="17"&gt;&lt;br /&gt;&lt;/td&gt;    &lt;td align="LEFT" bgcolor="#FF9966" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: white; font-family: 'Arial Unicode MS';"&gt;Vendors&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" bgcolor="#FF9966" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: white; font-family: 'Arial Unicode MS';"&gt;Disk based Storage&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" bgcolor="#FF9966" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: white; font-family: 'Arial Unicode MS';"&gt;Distributed Databases&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" bgcolor="#FF9966" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: white; font-family: 'Arial Unicode MS';"&gt;RDBMS&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" bgcolor="#FF9966" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: white; font-family: 'Arial Unicode MS';"&gt;File Storage&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" bgcolor="#FF9966" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: white; font-family: 'Arial Unicode MS';"&gt;CDN&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT"&gt;&lt;br /&gt;&lt;/td&gt;   &lt;/tr&gt;&lt;tr&gt;    &lt;td align="LEFT" height="17"&gt;&lt;br /&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;Google&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;Datastore (BigTable)&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;Google Docs&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT"&gt;&lt;br /&gt;&lt;/td&gt;   &lt;/tr&gt;&lt;tr&gt;    &lt;td align="LEFT" height="17"&gt;&lt;br /&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;Amazon AWS&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;EBS&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;SimpleDB&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;RDS (mySQL)&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;S3&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;CloudFront&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT"&gt;&lt;br /&gt;&lt;/td&gt;   &lt;/tr&gt;&lt;tr&gt;    &lt;td align="LEFT" height="17"&gt;&lt;br /&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;Permabit&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;Cloud Storage&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT"&gt;&lt;br /&gt;&lt;/td&gt;   &lt;/tr&gt;&lt;tr&gt;    &lt;td align="LEFT" height="17"&gt;&lt;br /&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;Rackspace&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;Cloud Files&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;Limelight&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT"&gt;&lt;br /&gt;&lt;/td&gt;   &lt;/tr&gt;&lt;tr&gt;    &lt;td align="LEFT" height="17"&gt;&lt;br /&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;GoGrid&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;Cloud Storage&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT"&gt;&lt;br /&gt;&lt;/td&gt;   &lt;/tr&gt;&lt;tr&gt;    &lt;td align="LEFT" height="17"&gt;&lt;br /&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;Box.net&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;Cloud File Server&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT"&gt;&lt;br /&gt;&lt;/td&gt;   &lt;/tr&gt;&lt;tr&gt;    &lt;td align="LEFT" height="17"&gt;&lt;br /&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;Microsoft&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;SQL Azure&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;Azure Storage&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT"&gt;&lt;br /&gt;&lt;/td&gt;   &lt;/tr&gt;&lt;tr&gt;    &lt;td align="LEFT" height="17"&gt;&lt;br /&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;Nirvanix&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;hNode &lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;SDN&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT"&gt;&lt;br /&gt;&lt;/td&gt;   &lt;/tr&gt;&lt;tr&gt;    &lt;td align="LEFT" height="17"&gt;&lt;br /&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;Verizon&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;Cloud Storage&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT" style="border-bottom: 1px solid #000000; border-left: 1px solid #000000; border-right: 1px solid #000000; border-top: 1px solid #000000;"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT"&gt;&lt;br /&gt;&lt;/td&gt;   &lt;/tr&gt;&lt;tr&gt;    &lt;td align="LEFT" height="17"&gt;&lt;br /&gt;&lt;/td&gt;    &lt;td align="LEFT"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT"&gt;&lt;span style="color: navy; font-family: 'Arial Unicode MS';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;    &lt;td align="LEFT"&gt;&lt;br /&gt;&lt;/td&gt;   &lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;Besides the above basic infrastructure level services, there are third party solutions which are built on top of these and provide value added services. One such solution, worth mentioning here, is&amp;nbsp;&lt;a href="http://www.zmanda.com/cloud-backup.html"&gt;Zmanda Cloud Backup&lt;/a&gt; solution. It provides a GUI to configure and manage backups, and automate the process to a large extent.&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;Please let me know more about other solutions in you comments and feedback and I will keep adding to the list.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7912068605233390124-3769882860539660827?l=enablecloud.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://enablecloud.blogspot.com/feeds/3769882860539660827/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7912068605233390124&amp;postID=3769882860539660827&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/3769882860539660827'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/3769882860539660827'/><link rel='alternate' type='text/html' href='http://enablecloud.blogspot.com/2010/07/solutions-on-cloud-2-storage.html' title='Solutions on Cloud 2: Storage'/><author><name>Manaranjan Pradhan</name><uri>http://www.blogger.com/profile/00587309481023161990</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7912068605233390124.post-2355938215028926557</id><published>2010-07-10T00:55:00.000-07:00</published><updated>2010-07-13T02:26:43.989-07:00</updated><title type='text'>Solutions on Cloud 1: Overview</title><content type='html'>&lt;span class="Apple-style-span" style="border-collapse: separate; color: black; font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;I am starting another series on solutions that we can build on cloud. Some are general solutions, some specific to a particular cloud provider offering and some inspired from how organizations have exploited cloud to build innovative solutions.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif; font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="border-collapse: separate; color: black; font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;There are several usages of cloud. Here are few examples.&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="border-collapse: separate; color: black; font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="border-collapse: separate; color: black; font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="border-collapse: separate; color: black; font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="border-collapse: separate; color: black; font-family: 'Times New Roman'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;&lt;div&gt;&lt;ol&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;a href="http://enablecloud.blogspot.com/2010/07/solutions-on-cloud-2-storage.html"&gt;Storage and Backup&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;a href="http://enablecloud.blogspot.com/2010/07/solutions-on-cloud-3-disaster-recovery.html"&gt;Disaster Recovery and Fail Over&lt;/a&gt;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;Mobility Applications&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;Content Delivery&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;Distributed Database&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;High performance Computing:&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;Map - Reduce&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&amp;nbsp;or Grid Computing&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;Business Intelligence&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;Application Hosting&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;Website Hosting&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;Testing&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;I will look into each one the above from the perspective of how to build these solutions on cloud, what are the pros and cons and insight into some case studies. &lt;/span&gt;&lt;/div&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7912068605233390124-2355938215028926557?l=enablecloud.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://enablecloud.blogspot.com/feeds/2355938215028926557/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7912068605233390124&amp;postID=2355938215028926557&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/2355938215028926557'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/2355938215028926557'/><link rel='alternate' type='text/html' href='http://enablecloud.blogspot.com/2010/07/solutions-on-cloud-1-overview.html' title='Solutions on Cloud 1: Overview'/><author><name>Manaranjan Pradhan</name><uri>http://www.blogger.com/profile/00587309481023161990</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7912068605233390124.post-466148422495654228</id><published>2010-07-09T22:50:00.000-07:00</published><updated>2010-07-09T23:04:34.065-07:00</updated><title type='text'>Migrating to Cloud 4: Identifying data</title><content type='html'>&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;Below are few considerations to identify data for migrating to cloud.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;b&gt;Consideration 1: Data Sensitivity and Privacy&lt;/b&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/span&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;As specified in the earlier post, sensitive data should be kept out of cloud as of now. For example, if an application deals with credit card information or personal information like social security number, then&amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;1. Either the application should be kept out of the cloud&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;2. Or the part of the application and data that deals with sensitive information should be kept in house.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;But to implement the second option, the application components should be loosely coupled. Then it makes it easier to move few components to cloud while keeping the other in house. As far as data is concerned, it is easier if the data is segregated properly.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;Applications with monolithic design and tightly coupled are challenging to adopt such an approach.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;b&gt;Consideration 2: Regulatory Compliance&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;It must be understood, whether data need to adhere to any regulatory standards. These standards could be industry specific ( like HIPPA ) or across industries (like SOX). Some standards are also geography or country specific for example, EU does not allow storing personal information of Europeans outside the country.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;Identifying data to migrate to cloud, must be carefully chosen as these must comply to the applicable regulatory standards.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;b&gt;Consideration 3: Data Transfer&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;If data transfer between cloud and in house applications are huge, then also it may become a bottleneck. Some applications may need to transfer data for transactional purpose or some applications may need to transfer data for batch processing. You must estimate the cost of such data transfers both in terms of performance and money.&amp;nbsp;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;If data transfer becomes a bottleneck, then either consider migrating all required application to cloud or migrate none.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;b&gt;Consideration 4: Data Storage and Backup&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;b&gt;&lt;/b&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;There are some considerations that work in favor of cloud. For example, if you solution has extensive data storage and backup needs, then cloud will be a good option. Some cloud providers like amazon provides highly available storage solutions. Data is backed up across multiple availability zones ( i.e. multiple data centers ) and hence data is never lost. There are third party solutions on top of cloud vendors that provider comprehensive storage solutions.&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;Besides above, you need not invest on storage products and monitor usage for storage capacity planning. In cloud, you can always allocate required storage capacity as the usage grows. This saves lots of upfront investment.&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;The best way to get all the information is from information architecture in your EA repository. The information model should provide all relevant information to take appropriate decisions.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7912068605233390124-466148422495654228?l=enablecloud.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://enablecloud.blogspot.com/feeds/466148422495654228/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7912068605233390124&amp;postID=466148422495654228&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/466148422495654228'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/466148422495654228'/><link rel='alternate' type='text/html' href='http://enablecloud.blogspot.com/2010/07/migrating-cloud-4-identifying-data-for.html' title='Migrating to Cloud 4: Identifying data'/><author><name>Manaranjan Pradhan</name><uri>http://www.blogger.com/profile/00587309481023161990</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7912068605233390124.post-4294359348021460184</id><published>2010-07-09T10:25:00.000-07:00</published><updated>2010-07-09T23:01:44.303-07:00</updated><title type='text'>Migrating to Cloud 3: Identifying applications</title><content type='html'>&lt;span style="font-size: small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;As explained in the earlier &lt;a href="http://enablecloud.blogspot.com/2010/07/migrating-to-cloud-part-2-assess-and.html"&gt;blog&lt;/a&gt;, the scenarios can help to identify applications that can be candidates for migrating to cloud. But there are some more criteria that should be taken into account while identifying application or data migration.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;Applications that are quite independent and can run in isolation are always best candidates for migrating to cloud. But applications, that need integration with other applications or resources, need to be carefully studied. Following are some of the considerations to make&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;1. If interface points between applications are not well defined, then it can be a real challenge to migrate such applications.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_HL0dmkQKBxs/TDdaTtall0I/AAAAAAAAAFg/Y75mZR10QgE/s1600/Cloud+Migration.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/_HL0dmkQKBxs/TDdaTtall0I/AAAAAAAAAFg/Y75mZR10QgE/s320/Cloud+Migration.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;2. Applications that need deep integration with several other applications or other resources.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;3. If applications need to communicate with other assets for most of the transactions.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;4. &lt;span style="font-size: small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;If several applications collaborate with each other to accomplish most of the tasks, then either all applications need to migrate to cloud or none should be migrated. Migrating only few to cloud while keeping others on premise can lead several integration challenges.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;b&gt;Davis Linthicum &lt;/b&gt;in his book &lt;a href="http://www.amazon.com/Cloud-Computing-Convergence-Enterprise-Step/dp/0136009220"&gt;"Cloud Computing and SOA Convergence in your Enterprise"&lt;/a&gt; has explained this issue exceptionally well. He also advocates that enterprises, that have adopted SOA, will find it easier to migrate to cloud. That is mostly because the interface points are well defined and can be monitored for SLA compliance.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;As shown in the diagram below, if the application interface points as well defined, it would be easier to migrate few applications to cloud, while the remaining application can still run in house.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_HL0dmkQKBxs/TDdbFncDHwI/AAAAAAAAAFo/5llEDctrZUg/s1600/Cloud+Migration+2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/_HL0dmkQKBxs/TDdbFncDHwI/AAAAAAAAAFo/5llEDctrZUg/s320/Cloud+Migration+2.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt; &lt;span style="font-size: small;"&gt;The  interface points can be subjected to SLA monitoring. SLA monitoring will  enable performance and security compliance of applications.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_HL0dmkQKBxs/TDdbLgIGqBI/AAAAAAAAAFw/Km9DYr65k9E/s1600/Cloud+Migration+3.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/_HL0dmkQKBxs/TDdbLgIGqBI/AAAAAAAAAFw/Km9DYr65k9E/s320/Cloud+Migration+3.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;Similarly, it is necessary to assess the sensitivity of data. If the data the application is dealing with is highly sensitive, then it may not be appropriate to migrate these data to cloud. Or part of application or data that are not sensitive can be migrated to cloud, while keeping the sensitive data in house. But in these scenarios, it is also imperative to understand the integration challenges.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;I will look into some of the scenarios in coming blogs. In the meantime, please send your comments and feedbacks.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;span style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7912068605233390124-4294359348021460184?l=enablecloud.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://enablecloud.blogspot.com/feeds/4294359348021460184/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7912068605233390124&amp;postID=4294359348021460184&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/4294359348021460184'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/4294359348021460184'/><link rel='alternate' type='text/html' href='http://enablecloud.blogspot.com/2010/07/migrating-to-cloud-3-criterias-for.html' title='Migrating to Cloud 3: Identifying applications'/><author><name>Manaranjan Pradhan</name><uri>http://www.blogger.com/profile/00587309481023161990</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_HL0dmkQKBxs/TDdaTtall0I/AAAAAAAAAFg/Y75mZR10QgE/s72-c/Cloud+Migration.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7912068605233390124.post-6652623914045691018</id><published>2010-07-09T08:34:00.000-07:00</published><updated>2010-07-09T22:05:28.503-07:00</updated><title type='text'>Migrating to Cloud 2: Assess and Identify</title><content type='html'>&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;The first and foremost step in migrating to cloud is to assess and identity. It is imperative to understand what values cloud computing will bring to the organization. And it will be specific to an organizational context. Each organization has it's own characteristic, it's own business drivers and pain points. Understanding your own IT dynamics is key to this initiative.&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px;"&gt;Cloud computing benefits are known but not applicable directly to any IT organization without understanding it's pain points. The best place to find the required information is Enterprise Architecture continuum.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px;"&gt;For example, if you have already invested significantly in data center and you already have excess capacity to deploy the solution, then cloud may not look beneficial immediately.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px;"&gt;Looking at the roadmap, if you encounter some of the following scenarios&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px;"&gt;1. Some developments are waiting for resource allocations like hardware, then these can be assessed for cloud deployements&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px;"&gt;2. Proof of concepts for market testing e.g. developing some ideas for testing market feedback&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px;"&gt;3. Stress testing or load testing waiting for resources&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px;"&gt;4. Batch processing applications which need huge amount of resources but for limited period of time&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px;"&gt;5. Build storage backup solutions (building such a solution needs significant investments)&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px;"&gt;6. Build a disaster recovery solutions &lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px;"&gt;(building  such a solution needs significant investments)&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px;"&gt;7. Build content Delivery solutions - If you need faster delivery of contents across the globe but can not build such an infrastructure)&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px;"&gt;8. New solutions that will have variable loads or fluctuating demands&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px;"&gt;9. Existing applications seeking more resources to cater to increase in demands&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px;"&gt;10. Applications running on old servers, which are about to be decommissioned&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px;"&gt;Besides the above, there can be some of the non-functional requirements that can be fulfilled by using cloud. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px;"&gt;If you think some of the solutions need higher availability (99.9%) of infrastructure and you do not enough expertise or resources to support such SLA, then transferring the risk to a IaaS provider is a good option. But you need to understand the providers SLA compliance levels.&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px;"&gt;Identifying  the right components to deploy on cloud is a critical to the success of  &lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px;"&gt;cloud  migration&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px;"&gt;.&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px;"&gt;The following are some of the inputs for doing the right assessment&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px;"&gt;1. Solutions Roadmap from enterprise architecture repository&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px;"&gt;2. Other architectural documents from EA Repository&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px;"&gt;3. Application/System monitoring and performance Reports&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px;"&gt;4. Capacity Planning reports&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px;"&gt;Please provide your feedback and some of your experiences on cloud migration. &lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7912068605233390124-6652623914045691018?l=enablecloud.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://enablecloud.blogspot.com/feeds/6652623914045691018/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7912068605233390124&amp;postID=6652623914045691018&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/6652623914045691018'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/6652623914045691018'/><link rel='alternate' type='text/html' href='http://enablecloud.blogspot.com/2010/07/migrating-to-cloud-part-2-assess-and.html' title='Migrating to Cloud 2: Assess and Identify'/><author><name>Manaranjan Pradhan</name><uri>http://www.blogger.com/profile/00587309481023161990</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7912068605233390124.post-8049555501148481260</id><published>2010-07-01T08:46:00.000-07:00</published><updated>2010-07-10T06:19:09.800-07:00</updated><title type='text'>Migrating to cloud 1: Overview</title><content type='html'>&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;We all understand what benefits cloud can provide? But for an organization that want to move to cloud, how should it proceed? Is there a systematic process or methodology that can help migrate to cloud successfully? &lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;Well, as cloud is still new and evolving, the approch to migrate to cloud is also evolving. There are case studies and experiences from people and orgranization that explain some of the steps, difficulties and challenges in migrating to cloud. But above all, there is a book by David Linthicum which addresses this problem very nicely.&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;David's migration approach to cloud is based on an orgranizations maturity level in SOA implementation. He advocates an organization, which has implemented service oriented architecture (SOA), will find it easier to move to cloud. We will look at the reason, why? &lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;These are the basic steps that can be done to migrate to cloud. These are very high level steps.&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;ol&gt;&lt;li&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;Understand the business driver and values&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;Understand the Risks&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;Create an inventory of assets&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;Identify the assets ( Applications &amp;amp; Data )&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;Build Prototypes&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;Create migration strategy and plan for Migration&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;Implement migration&lt;/span&gt;&lt;/li&gt;&lt;ol&gt;&lt;li&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;Move the assets to cloud&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;Integrate with internal resources&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;Test the migration&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;Parallel Run&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;Roll over to cloud completely&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;li&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;Monitor and manage the new environment&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;The above steps can be grouped together into four basic stages.&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;ol&gt;&lt;li&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;Assess and identify&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;Plan&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;Migrate&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;Monitor &amp;amp; Manage&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;span style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;I will write more details on each basic steps in the following steps. In the meantime, please send me your feedback.&lt;/span&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;br style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;" /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7912068605233390124-8049555501148481260?l=enablecloud.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://enablecloud.blogspot.com/feeds/8049555501148481260/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7912068605233390124&amp;postID=8049555501148481260&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/8049555501148481260'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/8049555501148481260'/><link rel='alternate' type='text/html' href='http://enablecloud.blogspot.com/2010/07/migrating-to-cloud-part-1.html' title='Migrating to cloud 1: Overview'/><author><name>Manaranjan Pradhan</name><uri>http://www.blogger.com/profile/00587309481023161990</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7912068605233390124.post-7131317647146345113</id><published>2010-06-14T03:35:00.000-07:00</published><updated>2010-06-15T00:26:11.592-07:00</updated><title type='text'>Moving to Virtualization : Part 1</title><content type='html'>Virtualization is the foundation for creating a dynamic data center today. It is the primary component behind every cloud whether it is public or private.&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I am planning to start a series on how to move to virtualization platform from traditional datacenter. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The reasons for moving to virtualization platform need not be mentioned any more as everyone working in IT infrastructure understands the pain points of traditional data center model. But if someone asks to quickly summarize the primary reasons then I will say "under utilization of servers, proliferation of physical servers, ever increasing space and energy cost and non responsiveness characteristic of data centers". &lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Virtualization seems to be the answer to all these pain points which creates a more dynamic data center. The responsiveness and flexibility is created by abstracting workloads from physical servers. They are not tightly coupled any more. Servers can be provisioned on demand based on workload requirements thereby increasing the data center efficiency.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I will write about some of the solutions that can be built using virtualization in a later post. Today I will look into what stages normally an organization has to go through to move it's data-center to virtualization platform.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;There are mainly three stages to move to virtualization. For simplification purpose, each stage is defined as per the deliverables it outputs at the end of that stage.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;These three stages are&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;1. What to virtualize?&lt;/div&gt;&lt;div&gt;2. How to virtualize?&lt;/div&gt;&lt;div&gt;3. Implement Virtalization platform&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_HL0dmkQKBxs/TBcq9fVguLI/AAAAAAAAAFY/MDtxgC_IS3I/s1600/Virtualization+stages.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 164px;" src="http://3.bp.blogspot.com/_HL0dmkQKBxs/TBcq9fVguLI/AAAAAAAAAFY/MDtxgC_IS3I/s400/Virtualization+stages.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5482898307218978994" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The first stage will output what to virtualize? This stage involves assessment of current inventory? The inventory includes servers, applications, softwares, network devices, storage solutions etc. There should be an up-to-date inventory assessment, which becomes an input for analyzing inventory to understand the candidates for virtualization.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Second stage involves understanding of virtualization technologies or product lines available for implementation, creating an architecture for the dynamic data center, and then doing proper cost-benefit analysis to arrive at the acceptable and cost effective solution.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Third and final stage involves, implementing the real virtualization platform. Besides, testing the staging environment and migrating to production environment, it involves managing the environment once it becomes operational.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I will go into details of each stage in the forthcoming blog posts. Please do not forget to give your comments and feedbacks on this post.&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7912068605233390124-7131317647146345113?l=enablecloud.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://enablecloud.blogspot.com/feeds/7131317647146345113/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7912068605233390124&amp;postID=7131317647146345113&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/7131317647146345113'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/7131317647146345113'/><link rel='alternate' type='text/html' href='http://enablecloud.blogspot.com/2010/06/moving-to-virtualization-part-1.html' title='Moving to Virtualization : Part 1'/><author><name>Manaranjan Pradhan</name><uri>http://www.blogger.com/profile/00587309481023161990</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_HL0dmkQKBxs/TBcq9fVguLI/AAAAAAAAAFY/MDtxgC_IS3I/s72-c/Virtualization+stages.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7912068605233390124.post-9014916243812105749</id><published>2010-06-13T09:16:00.000-07:00</published><updated>2010-06-13T10:16:08.415-07:00</updated><title type='text'>SaaS Architecture 6 : Extending data model</title><content type='html'>It is only fair that customers will expect some degree of customization in the application. Examples of some customizations are &lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;1. Personalization and branding of UI ( showing customer logo on the page )&lt;/div&gt;&lt;div&gt;2. Separate business rules&lt;/div&gt;&lt;div&gt;3. Extension of data model.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Out of these configurability options, extension of data model is very complex and I am going to discuss in this blog.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Extension of data is quite simple, if separate database or separate schema is chosen. Schema can be modified as per the customer needs. Though it will lead to further operational complexity for supporting separate schema for each customer. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;But the real challenge lies where shared schema approach is chosen. Schema can not be modified as everyone shares the same schema. There are two approaches that can be used to implement data mode extension in shared schema approach.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;u&gt;Preallocated fields&lt;/u&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;In this approach schemas have few extra columns to save additional fields and these extra columns can be defined only as strings. Another metadata table can be used to define column field name and type. Following picture shows.&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_HL0dmkQKBxs/TBURN65ju0I/AAAAAAAAADw/zGy852FGl8c/s1600/preallocated+fields.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 130px;" src="http://2.bp.blogspot.com/_HL0dmkQKBxs/TBURN65ju0I/AAAAAAAAADw/zGy852FGl8c/s400/preallocated+fields.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5482307052240091970" /&gt;&lt;/a&gt;&lt;div&gt;&lt;div&gt;But the disadvantage is that the number of columns are fixed. So, tenants can only extend their data model to a certain extent. Alternatively, providing too many columns will leave fields unused and database will become sparse and wasteful. &lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;u&gt;Name value pairs&lt;/u&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;u&gt;&lt;br /&gt;&lt;/u&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;In this approach the base table (the data table for customer information) will have record id for each customer record that is inserted. Then meta data table can be defined for additional field names and types, that each tenant choose to extend. Then create a name value pair table to store new field values for these extended fields. The record id will relate to the extended fields and these extended fields are defined by the type table. The following picture represents this approach.&lt;/div&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_HL0dmkQKBxs/TBUROOdaRfI/AAAAAAAAAD4/sdKtsCbsC40/s1600/Name+value+pair.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 121px;" src="http://2.bp.blogspot.com/_HL0dmkQKBxs/TBUROOdaRfI/AAAAAAAAAD4/sdKtsCbsC40/s400/Name+value+pair.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5482307057490740722" /&gt;&lt;/a&gt;&lt;div&gt;This is an extensible model and can store any number of fields. The application logic need to written to convert these fields to appropriate types before they are actually used in the application. &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The only disadvantage is it is a very complex approach and needs a lots of testing to ensure quality.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Name value approach is best choice, which provides an extensible and robust SaaS architecture in the long run.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7912068605233390124-9014916243812105749?l=enablecloud.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://enablecloud.blogspot.com/feeds/9014916243812105749/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7912068605233390124&amp;postID=9014916243812105749&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/9014916243812105749'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/9014916243812105749'/><link rel='alternate' type='text/html' href='http://enablecloud.blogspot.com/2010/06/saas-architecture-5-extending-data.html' title='SaaS Architecture 6 : Extending data model'/><author><name>Manaranjan Pradhan</name><uri>http://www.blogger.com/profile/00587309481023161990</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_HL0dmkQKBxs/TBURN65ju0I/AAAAAAAAADw/zGy852FGl8c/s72-c/preallocated+fields.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7912068605233390124.post-2740218708637059871</id><published>2010-06-12T18:19:00.000-07:00</published><updated>2010-06-12T19:16:16.017-07:00</updated><title type='text'>SaaS Architecture 5 : Shared Schema Approach</title><content type='html'>&lt;div style="text-align: left;"&gt;As explained, shared schema approach is the best choice for a SaaS architecture from operational efficiency perspective. But in the meantime, it is also highly complex from developmental perspective. Extra care must be taken to ensure authorized access to data.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;As all data belong to all tenants reside in the same table, each row must have required information to identify which tenant it belongs to. Adding tanant ID is the best way or adding an ID that can be mapped to a tenant ID uniquely is also an option.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Every query must be filtered using a where clause WHERE tenantID = &lt;&gt;. Views can be created using this filter criteria and all queries must be allowed only on the view relevant to a particular tenant.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_HL0dmkQKBxs/TBQ-mGt5kkI/AAAAAAAAADo/TC2-yKxVxCQ/s1600/Shared+Schema+Query.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 119px;" src="http://4.bp.blogspot.com/_HL0dmkQKBxs/TBQ-mGt5kkI/AAAAAAAAADo/TC2-yKxVxCQ/s400/Shared+Schema+Query.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5482075470775816770" /&gt;&lt;/a&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Using encryption to protect highly sensitive data is a good design alternative to provide another layer of security. The encryption key should unique for each tenant. Either symmetric or asymmetric keys can be used for this purpose. Using asymmetric keys for data will come at a cost of performance. So, a better alternative is to use symmetric key to encrypt data, but protect the symmetric key using a key pair. Please consider encrypting only sensitive data rather than all data.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;For better performance, data can be partitioned for faster access. Partitioning can be based on tenant ID. For example, tenants from 1-100 in one partition and 101-200 in another and so on. But, this may not uniformly distribute data, if usage patterns vary across tenants. So, you need to understand usage patterns of tenants before making a decision. But, keeping all data for a tenant in a single partition is always advantage, as all queries will be related one tenant only. Partitioning data using geographic locations of tenants is another alternative if you have customer spread across geographic locations.    &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;In the next post, I will explain how to extend a data model in shared schema approach. In the meantime, please provide your inputs and feedback on this series of SaaS Archiecture. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;  &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7912068605233390124-2740218708637059871?l=enablecloud.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://enablecloud.blogspot.com/feeds/2740218708637059871/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7912068605233390124&amp;postID=2740218708637059871&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/2740218708637059871'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/2740218708637059871'/><link rel='alternate' type='text/html' href='http://enablecloud.blogspot.com/2010/06/saas-architecture-5-shared-schema.html' title='SaaS Architecture 5 : Shared Schema Approach'/><author><name>Manaranjan Pradhan</name><uri>http://www.blogger.com/profile/00587309481023161990</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_HL0dmkQKBxs/TBQ-mGt5kkI/AAAAAAAAADo/TC2-yKxVxCQ/s72-c/Shared+Schema+Query.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7912068605233390124.post-2803965077978223725</id><published>2010-06-12T06:48:00.000-07:00</published><updated>2010-06-12T07:24:17.476-07:00</updated><title type='text'>SaaS Architecture 4 : How to choose a data model?</title><content type='html'>I described the three data models for a multi-tenancy architecture in my earlier &lt;a href="http://enablecloud.blogspot.com/2010/06/saas-architecture-1-multi-tenancy-data.html"&gt;post&lt;/a&gt;. But how to choose one and based on which criteria? In this post, I will discuss some points that we need to consider while choosing a particular model.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;1. If there are regulatory requirements that customers' data need to be isolated from each other, then you may have to choose separate database option. Such regulatory requirements may exist in some industries like financial or health care, which are highly protective about their data. So before making any decision, make sure you understand the regulatory requirements for your industry very clearly.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;2. If you have a very large set of target customers, for example in hundreds or in thousands, then separate database option is NOT feasible. It is practically impossible to support thousands of databases. Shared database is the best option in this case and will ultimately provide financial benefits, once you reach a certain level of maturity in operational efficiency.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;3. If you are providing specific features like SEPARATE backup or failover or disaster recovery strategies  to separate customers, then you can achieve this by adopting separate database option. But if you provide same backup or DR strategies to all customers, then you can provide it at a lower cost using shared schema option.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;4.  If your customers are highly skeptical and unconvinced about the data being shared, then you need to consider separate database schema. It is not always about technology, sometimes you have to live and comply with customer's perception. Especially, if you are from an industry where customers are ready to pay a premium for a peace of mind that their data is secured and the privacy is guaranteed. So, understand your customers perception about data, security and privacy.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;5. For shared schema option, you need to make more investment at development time as the complexity of developing such a solution is higher. You need to make upfront investment to reap the benefit later. But if you do not have the money to invest in development, but believe that you can bear the operational cost when you have the customers then separate database is an option for you. You can pass on the operational cost to your customer. But you will slowly realize that you may loose the competitive advantage if someone else can provide a solution with much lower operational cost.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;It is imperative to understand technology, industry perception, regulatory requirements and many other environment factors before making a decision on choosing a particular data model for your multi-tenancy architecture. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Please share your experience on choosing a model.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7912068605233390124-2803965077978223725?l=enablecloud.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://enablecloud.blogspot.com/feeds/2803965077978223725/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7912068605233390124&amp;postID=2803965077978223725&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/2803965077978223725'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/2803965077978223725'/><link rel='alternate' type='text/html' href='http://enablecloud.blogspot.com/2010/06/saas-architecture-4-how-to-choose-data.html' title='SaaS Architecture 4 : How to choose a data model?'/><author><name>Manaranjan Pradhan</name><uri>http://www.blogger.com/profile/00587309481023161990</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7912068605233390124.post-4313206964630459587</id><published>2010-06-12T05:55:00.001-07:00</published><updated>2010-06-12T06:39:46.390-07:00</updated><title type='text'>SaaS Architecture 3 : Multi-tenancy Data Architecture</title><content type='html'>&lt;div style="text-align: left;"&gt;Multi-tenancy is core aspect of any SaaS architecture. All SaaS based solutions should ultimately move to multi-tenancy architecture for the business model to work. It is necessary for any SaaS offering to keep their operations overhead to minimum to actually make this financially successful business model.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Multi-tenancy is the ability to host multiple customers data on a single instance while protecting everyone's privacy. Designing Multi-tenancy application is different than designing an application for a single customer. The complexity of the design increases if applications are made highly configurable. Configurability is introduced to make applications customizable for customers to a certain extent.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;In this blog, of course we will look into data architecture of a multi-tenant application.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;There are three models that can be adopted.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;1. Separate Database&lt;/div&gt;&lt;div&gt;2. Shared Database, Separate Schema&lt;/div&gt;&lt;div&gt;3. Shared Schema &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;b&gt;Separate Database&lt;/b&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;u&gt;&lt;br /&gt;&lt;/u&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;Features:&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;ol&gt;&lt;li&gt;Each tenant has it's own database&lt;/li&gt;&lt;li&gt;Data of each tenant is isolated from each other&lt;/li&gt;&lt;li&gt;Datamodel can be extended&lt;/li&gt;&lt;li&gt;Data restoration per tenant is easier is case of failure&lt;/li&gt;&lt;li&gt;Maintenance cost is higher&lt;/li&gt;&lt;li&gt;May be useful for applications that need to comply with strict data isolation requirements ( Financial or Healthcare )&lt;/li&gt;&lt;/ol&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_HL0dmkQKBxs/TBOMRrjPXWI/AAAAAAAAACg/zq-x9oRaueo/s1600/Separate+Database.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 85px;" src="http://3.bp.blogspot.com/_HL0dmkQKBxs/TBOMRrjPXWI/AAAAAAAAACg/zq-x9oRaueo/s400/Separate+Database.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5481879406816222562" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;b&gt;Shared Database, Separate Schema&lt;/b&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;u&gt;&lt;br /&gt;&lt;/u&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;Features:&lt;/i&gt;&lt;/div&gt;&lt;/div&gt;&lt;ol&gt;&lt;li&gt;Each tenant has it's own schema under same database&lt;/li&gt;&lt;li&gt;Different set of tables for each tenant&lt;/li&gt;&lt;li&gt;When tenant subscribes to service, the provisioining service can create schema for the tenant&lt;/li&gt;&lt;li&gt;Data model can be extended as per tenant requirement&lt;/li&gt;&lt;li&gt;There is some degree of isolation&lt;/li&gt;&lt;li&gt;Data restoration per tenant is complex in case of failure &lt;/li&gt;&lt;li&gt;Is feasible for application with less number of tables. As no of tables increases, this approach becomes very complex&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_HL0dmkQKBxs/TBOMR_ZeW3I/AAAAAAAAACo/O-2i87YmBDw/s1600/Separate+Schema.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 115px;" src="http://3.bp.blogspot.com/_HL0dmkQKBxs/TBOMR_ZeW3I/AAAAAAAAACo/O-2i87YmBDw/s400/Separate+Schema.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5481879412143971186" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;div&gt;&lt;div&gt;&lt;b&gt;Separate Schema&lt;/b&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;u&gt;&lt;br /&gt;&lt;/u&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;Features:&lt;/i&gt;&lt;/div&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;ol&gt;&lt;li&gt;All tenants share the same database and same schema&lt;/li&gt;&lt;li&gt;Each record is associated by a tenant ID&lt;/li&gt;&lt;li&gt;Cost of maintenance is low&lt;/li&gt;&lt;li&gt;Code need to be more robust for security so that records are accessed by corresponding tenant&lt;/li&gt;&lt;li&gt;Data model can be extended as per tenant requirement&lt;/li&gt;&lt;li&gt;There is no isolation&lt;/li&gt;&lt;li&gt;Data restoration per tenant is complex in case of failure &lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;u&gt;&lt;br /&gt;&lt;/u&gt;&lt;/div&gt;&lt;div&gt;&lt;u&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/u&gt;&lt;/div&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_HL0dmkQKBxs/TBOMSejiizI/AAAAAAAAACw/SGYlKYGf4oM/s1600/Shared+Schema.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 103px;" src="http://1.bp.blogspot.com/_HL0dmkQKBxs/TBOMSejiizI/AAAAAAAAACw/SGYlKYGf4oM/s400/Shared+Schema.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5481879420507687730" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;   &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7912068605233390124-4313206964630459587?l=enablecloud.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://enablecloud.blogspot.com/feeds/4313206964630459587/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7912068605233390124&amp;postID=4313206964630459587&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/4313206964630459587'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/4313206964630459587'/><link rel='alternate' type='text/html' href='http://enablecloud.blogspot.com/2010/06/saas-architecture-1-multi-tenancy-data.html' title='SaaS Architecture 3 : Multi-tenancy Data Architecture'/><author><name>Manaranjan Pradhan</name><uri>http://www.blogger.com/profile/00587309481023161990</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_HL0dmkQKBxs/TBOMRrjPXWI/AAAAAAAAACg/zq-x9oRaueo/s72-c/Separate+Database.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7912068605233390124.post-7594063045080852769</id><published>2010-06-10T07:26:00.000-07:00</published><updated>2010-06-10T07:53:57.531-07:00</updated><title type='text'>SaaS Architecture 2: Must have modules in SaaS Application</title><content type='html'>If you are building an application based on SaaS Model or if you are a packaged application vendor and planning to offer services in SaaS model, then you must have the following modules developed in your offering.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;1. Usage Metering&lt;/div&gt;&lt;div&gt;2. Pricing Engine&lt;/div&gt;&lt;div&gt;3. Billing&lt;/div&gt;&lt;div&gt;4. Payment processing&lt;/div&gt;&lt;div&gt;5. Subscriber self service&lt;/div&gt;&lt;div&gt;6. Service Provisioning &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;u&gt;Usage Metering&lt;/u&gt;&lt;/div&gt;&lt;div&gt;&lt;u&gt;&lt;br /&gt;&lt;/u&gt;&lt;/div&gt;&lt;div&gt;Usage metering modules should have the ability to measure consumption of resources, services and functionalities. Some examples, how many users or customer records, how many requests, how much of storage space, how many transactions etc. These information will be input to the billing module for charging the customer. This module is foundation for the pay per use model. These metering can be real-time or can be run periodically.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;u&gt;Pricing Engine&lt;/u&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;This module is used to set price for services or functionalities being consumed. The module should be accessed by authorized people to set pricing. If the market where the services are being offered is highly competitive, this module becomes very important to keep adjusting prices to remain competitive. There should be an approval workflow process for setting prices to ensure that the changes are actually intentional and authorized.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;u&gt;Billing&lt;/u&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The output of usage metering will be fed to billing module for generation of invoices. It takes input from pricing engine module and calculate the charges at the end of the billing period and updates the customer record for viewing. It should have integrated with notification services ( Email, SMS etc) to send billing details to customer after invoices are generated. If customer has provided payment information, it raises a request for payment processing.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;u&gt;Payment Processing&lt;/u&gt;&lt;/div&gt;&lt;div&gt;&lt;u&gt;&lt;br /&gt;&lt;/u&gt;&lt;/div&gt;&lt;div&gt;This is a highly sensitive module as it stored customer payment related information like credit cards. These modules are integrated with payment gateways for processing payments.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;u&gt;Subscriber Self Service&lt;/u&gt;&lt;/div&gt;&lt;div&gt;&lt;u&gt;&lt;br /&gt;&lt;/u&gt;&lt;/div&gt;&lt;div&gt;SaaS based products are always available on demand. Customer should be able to signup, configure initial setup, provide payment details and ready to use the software. So, subscriber self service modules are very important for retaining customers. Now-a-days everyones want instant gratification. Customer should be able to do it themselves.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;u&gt;Service Provisioning&lt;/u&gt; &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;As soon as the customer signs up, all required details should be created immediately and the customer should be able to start using the software.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;To be a successful SaaS provider, all the above moduled need to be developed and integrated into the main module. There are various third party products available for metering, billing, payment processing and can be used for faster integration.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7912068605233390124-7594063045080852769?l=enablecloud.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://enablecloud.blogspot.com/feeds/7594063045080852769/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7912068605233390124&amp;postID=7594063045080852769&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/7594063045080852769'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/7594063045080852769'/><link rel='alternate' type='text/html' href='http://enablecloud.blogspot.com/2010/06/saas-architecture-2-must-have-modules.html' title='SaaS Architecture 2: Must have modules in SaaS Application'/><author><name>Manaranjan Pradhan</name><uri>http://www.blogger.com/profile/00587309481023161990</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7912068605233390124.post-2279414033551620886</id><published>2010-06-09T20:19:00.001-07:00</published><updated>2010-06-09T20:40:27.352-07:00</updated><title type='text'>Pros and Cons of Private Cloud..</title><content type='html'>&lt;div&gt;The concerns of security and privacy and loss of control, have made a way for private cloud. While it is impossible to ignore the benefits the clouds can provide, organizations are looking into alternatives like private clouds to first experiment with the concept of cloud.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;No doubt, private cloud needs large investment and it can not provide economies of scale that large public cloud offer.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Internal IT should may not have skill to keep pace with the speed of change in cloud technology. Unless the private cloud adapts to the change in technology faster, it may become obsolete soon and a burden at the end.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;Private clouds can be used as stepping stone for public cloud. People who are skeptical about public cloud, may start with the private cloud on a smaller scale and make sense of the benefits it provides. Or organizations who have invested heavily on hardware and can not get rid of it, may reuse them to build private cloud for internal applications or development or testing purpose.&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Private clouds can not provide the benefits that public cloud provides like no capital spending on hardware, no maintenance or operations overhead or pay per use. Private cloud needs upfront investment on hardware and softwares. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Organizations who have invested in virtualization can  go one step ahead to build private clouds to get benefits like self provisioning, dynamic pool of virtualized resources or resources on demand. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;In my opinion, private clouds are not an option for small and medium sized enterprises, who look to save money by not spending upfront or capital investment.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Private clouds are good options for large enterprises who have a strong internal IT team to create and manage such an environment.  As mentioned earlier, private clouds can become a staging environment before moving to public cloud.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7912068605233390124-2279414033551620886?l=enablecloud.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://enablecloud.blogspot.com/feeds/2279414033551620886/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7912068605233390124&amp;postID=2279414033551620886&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/2279414033551620886'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/2279414033551620886'/><link rel='alternate' type='text/html' href='http://enablecloud.blogspot.com/2010/06/pros-and-cons-of-private-cloud.html' title='Pros and Cons of Private Cloud..'/><author><name>Manaranjan Pradhan</name><uri>http://www.blogger.com/profile/00587309481023161990</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7912068605233390124.post-8027456338405630218</id><published>2010-06-09T09:47:00.000-07:00</published><updated>2010-06-10T07:53:36.186-07:00</updated><title type='text'>SaaS Architecture 1 : Key Architectural Aspects</title><content type='html'>While discussing with a customer, who is planning to move their application to SaaS model, we concluded on four key architectural aspects for developing a SaaS based application.  &lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;These four aspects of architecture are&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;1. Multi-tenancy&lt;/div&gt;&lt;div&gt;2. Configurability&lt;/div&gt;&lt;div&gt;3. Scalability &amp;amp; Reliability&lt;/div&gt;&lt;div&gt;4. Security and Privacy&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;u&gt;Multi-tenancy&lt;/u&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Multi tenancy refers to hosting all clients on single instance of application. Until now, it was always one instance per client for companies providing services on ASP model. But as the number of clients increase the complexity of managing these environments also increase if separate instances are provisioned for each client. So, the key to SaaS model is to host all clients on a single instance, and ensure that clients are able to access their part of data. Multi-tenancy brings many benefits like improved operations efficiency and providing feature updates simultaneously to all clients.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;u&gt;Configurability&lt;/u&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;As all clients access same instance of the application, it is very difficult to cater to specific client needs if the application is not highly configurable. Different clients will have different personalization requirements on presentation layer, specific data model extensions or different business rules. All these can be fulfilled only if the application becomes highly configurable. Clients should be able to configure and extend functionalities.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;u&gt;Scalability &amp;amp; Reliability&lt;/u&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;SaaS based applications will need to support hundreds or thousands of clients at some point of time. So, these applications need to be designed to handle high traffic volumes and still comply to SLA commitments like performance and response time. Also, the application should be designed to recover quickly from the failures or disasters. Imagine, how downtimes can cripple thousands of customers, if the application does not recover quickly. So, for a SaaS application to be successful, it need to scale out and run reliably.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;u&gt;Security &amp;amp; Privacy&lt;/u&gt;&lt;/div&gt;&lt;div&gt;&lt;u&gt;&lt;br /&gt;&lt;/u&gt;&lt;/div&gt;&lt;div&gt;All Clients data will be on a single instance. Care must be taken to provide enough security and privacy so that no clients can not access other client's data. Mostly these clients will be competitors in the real world and need assurance from the SaaS providers that their data is protected from unauthorized access from other clients. In fact, the clients identity should also be kept secret from other clients.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Any architect who designs a SaaS application must look into these four aspects seriously. Only addressing all these four aspects of the architecture will ensure a good and successful SaaS model.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7912068605233390124-8027456338405630218?l=enablecloud.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://enablecloud.blogspot.com/feeds/8027456338405630218/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7912068605233390124&amp;postID=8027456338405630218&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/8027456338405630218'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/8027456338405630218'/><link rel='alternate' type='text/html' href='http://enablecloud.blogspot.com/2010/06/key-aspects-of-saas-architecture.html' title='SaaS Architecture 1 : Key Architectural Aspects'/><author><name>Manaranjan Pradhan</name><uri>http://www.blogger.com/profile/00587309481023161990</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7912068605233390124.post-2815767489289722426</id><published>2010-06-04T01:34:00.001-07:00</published><updated>2010-06-06T04:50:22.033-07:00</updated><title type='text'>Some interesting Q&amp;A from AWS talk by Matt Tavis</title><content type='html'>&lt;div&gt;Here are some more interesting Q&amp;amp;As from Matt Tavis's talk on wednesday evening at ThoughtWorks, Bangalore.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Q1. &lt;i&gt;Someone from the audience told that they encountered "Resource Not Available" error, while trying to spawn more resources from the same availability zone. They were spawning all resources in the same availability zone assuming communication between availability zones will be effected because of network latency.  &lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;A. There is of course no guarantee that resources will always be available for creating new instances all the time. There might be shortage of resources sometimes, if there are too many simultaneous requests. But there is no reason why someone should allocate all resources from same availability zone. Resources can be allocated from other availability zones. As the availability zones in a region are connected through high speed network fibers, there should not be any network latency for instances communicating across availability zones in a region.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Q2. &lt;i&gt;The 1024 bytes limitation on simpleDB row size &lt;/i&gt;&lt;i&gt;sometimes &lt;/i&gt;&lt;i&gt;makes it difficult to define large sized key-values ( multiple values ) in a single row. What is the workaround to this problem?&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;A. Two workarounds to this problem can be applied.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;First: The workaround to overcome this limitation is to split some key-value definitions into multiple rows and then join them in the runtime in the application.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Second: Provide a S3 location in the Simple DB key value column and then pick up the properties file from this location in the runtime to read long value properties. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Q3. &lt;i&gt;How to integrate applications running on cloud with legacy systems running within enterprise's network?&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Approach 1: Create a vpn tunnel between the cloud application and the mainframe applications and the interfaces like 3270 terminals can be accessible to the cloud applications through VPN tunnel.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Approach 2: Write web services wrappers around the mainframe applications and expose as web services. Normally web ports are accessible from outside enterprise networks, so the cloud applications can make a direct call to these web services and which in turn interacts with the mainframe applications.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Q4. &lt;i&gt;Is Amazon planning to provide and support vertical stacks out of the box for various applications like LAMP? &lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;A. Currently there are many third parties providing these kinds of stacks on top of Amazon. But if Amazon sees opportunities or increasing demand for any particular stack, they may consider providing and supporting it. For example, they saw good demand for Hadoop and provided it on Amazon Stack. It is offered as Map-Reduce currently. It abstracts the complexities of configuring a hadoop environment for hundreds of servers. Currently map and reduce functions can be written and deployed to run on hundreds of servers very quickly and with little configuration.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Q5. Is there any plan to support VMWare images to run on amazon stack directly?&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;A. No. Amazon will not tie to any particular virtualization technology.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Q6. How Amazon ensures security from hypervisor security loopholes?&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;A. Currently the virtualization technology on amazon uses hard partitioning of memory, CPU and Disk space. So, there is no way an application can access other applications' memory or disk space. Unused memory or disk space is not utilized for other instances. As far as, network access it concerned, the network traffic is controlled by security groups. An instance can only see the traffic that are allowed by security groups. So, it is advisable, to configure security groups strictly to ensure only authentic traffic reaches an instance. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Q7. &lt;i&gt;How to integrate applications running on cloud with LDAP system running inside enterprise's network?&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;A. There are two approaches to integrate applications with the LDAP system.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Approach 1: Organizations hosting internal applications normally make use of VPC to isolate their instances in the cloud. These applications can integrate with internal LDAP server through the VPN gateway.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Approach 2: An LDAP server instance can be hosted in the cloud and the LDAP can be synchronized periodically with the LDAP instance in house. EC2 instance will authenticate against LDAP server on cloud.&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:-webkit-xxx-large;"&gt;&lt;span class="Apple-style-span"  style="font-size:130%;"&gt;&lt;span class="Apple-style-span"  style="font-size:16px;"&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7912068605233390124-2815767489289722426?l=enablecloud.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://enablecloud.blogspot.com/feeds/2815767489289722426/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7912068605233390124&amp;postID=2815767489289722426&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/2815767489289722426'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/2815767489289722426'/><link rel='alternate' type='text/html' href='http://enablecloud.blogspot.com/2010/06/some-q-from-amazon-aws-presentation.html' title='Some interesting Q&amp;A from AWS talk by Matt Tavis'/><author><name>Manaranjan Pradhan</name><uri>http://www.blogger.com/profile/00587309481023161990</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7912068605233390124.post-6922236992111255644</id><published>2010-06-03T09:30:00.000-07:00</published><updated>2010-06-04T01:33:25.621-07:00</updated><title type='text'>Amazon Cloud Architecture Principles</title><content type='html'>I attended the Amazon AWS presentation at ThoughtWorks in Bangalore on 02 June. The main objective was to introduce amazon AWS to interested audience who wants to explore Amazon Cloud capabilities.  Presented by Matt Tavis, a Amazon's solution architect from Seattle, US.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Besides introducing amazon cloud features and giving a live demo, Matt also talked about the architectural principles for cloud applications.&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Here are the list of architectural principles that he talked about.&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;1. Design for failure &lt;/div&gt;&lt;div&gt;    &lt;/div&gt;&lt;div&gt;    Assume everything fails and design to overcome failure. CPU, DISK, Memory, Processes everything will fail at some point of time. So, it is necessary to design applications in such a way that withstand these failure and recover from it.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;2. Loose coupling sets you free. &lt;/div&gt;&lt;div&gt;    &lt;/div&gt;&lt;div&gt;Design components like black box with properly defined interfaces. Designing loosely coupled components help applications scale easily. Scale out, not scale up is the new mantra. So, loosely coupled systems will help scale out systems easily.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;3. Implement Elasticity&lt;/div&gt;&lt;div&gt;Scale up and down systems as demand changes. This will ensure optimized resource usage and being adaptive to demand fluctuations. Amazon provides features like auto scaling to implement elasticity.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;4. Build Security in every layer&lt;/div&gt;&lt;div&gt;     Implement security groups, encrypt data in transit and at rest, use encrypted file systems, rotate AWS credential periodically and use multi-factor authentication to get access amazon cloud.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;5. Do not fear constraints&lt;/div&gt;&lt;div&gt;Two examples giver are:&lt;/div&gt;&lt;div&gt;a. If processing needs more memory, it can be shared across multiple instances. A shared distributed cache like memcached can also be used for more cache memory and faster access. &lt;/div&gt;&lt;div&gt;b. If more database IO needed, then mutiple read-only databases can be configured. Writes allowed against master, while reads can be against the read-only databases.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;6. Think Parallel&lt;/div&gt;&lt;div&gt;Simultaneously executing processes and then aggregating results. Like Map Reduce framework, hundreds of instance can be spawned to processes the requests and then aggregate the results.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;7. Leverage many storage options for different activities. &lt;/div&gt;&lt;div&gt;SimpleDB for key value pair store.&lt;/div&gt;&lt;div&gt;S3 - file storage. Very good for storing large files.&lt;/div&gt;&lt;div&gt;EBS - Raw Disk storage.&lt;/div&gt;&lt;div&gt;RDS - MySQL Database. This feature comes with many automated backup and recovery options.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;These are &lt;b&gt;&lt;i&gt;good architectural principle&lt;/i&gt;&lt;/b&gt;&lt;i&gt; &lt;/i&gt;&lt;b&gt;&lt;i&gt;for any cloud development&lt;/i&gt;&lt;/b&gt;. Only the examples or scenarios are given from Amazon AWS perspective.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Hope this is useful to you.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7912068605233390124-6922236992111255644?l=enablecloud.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://enablecloud.blogspot.com/feeds/6922236992111255644/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7912068605233390124&amp;postID=6922236992111255644&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/6922236992111255644'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/6922236992111255644'/><link rel='alternate' type='text/html' href='http://enablecloud.blogspot.com/2010/06/amazon-cloud-architecture-principles.html' title='Amazon Cloud Architecture Principles'/><author><name>Manaranjan Pradhan</name><uri>http://www.blogger.com/profile/00587309481023161990</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7912068605233390124.post-5041800859645601487</id><published>2010-06-02T21:21:00.000-07:00</published><updated>2010-06-02T21:52:50.707-07:00</updated><title type='text'>LDAP intergration for Amazon Cloud...</title><content type='html'>&lt;div&gt;If organizations host some of their internal IT applications in the cloud, then it becomes necessary to integrate these applications with their LDAP service to authenticate the users. People ask questions what models to follow while integrating LDAP.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Recently I attended a seminar by Matt Tavis, Solutions Architect from Amazon in Bangalore. He suggested two approaches. Here are they,&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;1. Organizations hosting internal applications normally make use of VPC to isolate their instances in the cloud. These applications can integrate with internal LDAP server through the VPN gateway. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;2. An LDAP server instance can be hosted in the cloud and the LDAP can be synchronized periodically with the LDAP instance in house. EC2 instance will authenticate against LDAP server on cloud.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I will write another post on how to integrate applications with AD FS to enable single sign on.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7912068605233390124-5041800859645601487?l=enablecloud.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://enablecloud.blogspot.com/feeds/5041800859645601487/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7912068605233390124&amp;postID=5041800859645601487&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/5041800859645601487'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/5041800859645601487'/><link rel='alternate' type='text/html' href='http://enablecloud.blogspot.com/2010/06/ldap-intergration-for-amazon-cloud.html' title='LDAP intergration for Amazon Cloud...'/><author><name>Manaranjan Pradhan</name><uri>http://www.blogger.com/profile/00587309481023161990</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7912068605233390124.post-3453865855021520084</id><published>2010-05-18T22:48:00.000-07:00</published><updated>2010-05-18T23:39:55.336-07:00</updated><title type='text'>Fine Prints in Cloud Service Agreement: Data Security</title><content type='html'>Cloud service agreements (CSA) are the contract terms and conditions for both the cloud provider and consumer before entering into a relationship.  &lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;CSA is the face of cloud providers. It specifies what it can provide and at what level of guarantee. It talks about providers strength of ensuring cloud security and privacy, which is of course the top most concern of Cloud computing. &lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;CSA also provides details of who is responsible for what part of data security? Cloud provider may be responsible for providing physical and network security to protect data from unauthorized access, but consumer should be responsible for providing application level security. Consumer should also be responsible for uploading restricted content to cloud and ensuring it complies to applicable regulations.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;What contract terms one should look for in CSA? There are several aspects that need to be looked into. In this series, we will look into only data security related terms and conditions?&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;1. Where are the data centers located? The location of the data centers are very important from the perspective of keep sensitive data in the cloud. For example, the electronic records of patients from Europe should be stored with in Europe.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;2. What level of physical security is provided to the data centers? Who has access to these data centers? Whether they have proper authorization and auditing process in place or not?&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;3. Whether cloud provider's security policy is sufficient to comply with consumer organization's internal security policy requirements?&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;4. Whether the cloud provider agrees to undergo periodic auditing and security certifications? For example, a third party certification like SAS 70.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;5. Do they do regular backups and have a recovery process in place that is conforms to organization's  SLA requirements?&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;6. Are the backup taken in portable format so that the consumer can retrieve it's data if disaster strikes cloud provider or the consumer decides to move out of cloud provider environment?&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;7. What life cycle process do they follow to manage data? For example, if you delete data, whether that data is also deleted from backup or is retained?&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;8. What are the encryption mechanisms provided by the cloud provider? Are these encryption mechanisms the best available in the industry.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;9. Can it comply with regulatory compliances if required? For example HIPPA, SOX etc.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;We will look into other aspects of CSA in upcoming blogs.&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7912068605233390124-3453865855021520084?l=enablecloud.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://enablecloud.blogspot.com/feeds/3453865855021520084/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7912068605233390124&amp;postID=3453865855021520084&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/3453865855021520084'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/3453865855021520084'/><link rel='alternate' type='text/html' href='http://enablecloud.blogspot.com/2010/05/read-fine-prints-in-cloud-service.html' title='Fine Prints in Cloud Service Agreement: Data Security'/><author><name>Manaranjan Pradhan</name><uri>http://www.blogger.com/profile/00587309481023161990</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7912068605233390124.post-7924870421512450117</id><published>2010-05-06T03:04:00.000-07:00</published><updated>2010-05-09T10:31:22.175-07:00</updated><title type='text'>Solutions for building private cloud</title><content type='html'>Private cloud is a cloud infrastructure built within organizations premise.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Private cloud is an good option &lt;/div&gt;&lt;div&gt;1. For organizations which have made significant investments in data centers and also want to take advantage of cloud computing.&lt;/div&gt;&lt;div&gt;2. For organizations, which can not move certain applications or data to cloud because of regulatory compliance restrictions.  A hybrid cloud kind of implementation can give them an option of deploying such applications / date into private cloud and other non-sensitive applications and data into public cloud.&lt;/div&gt;&lt;div&gt;3. Organizations can use a private cloud as transition bed to finally move into public cloud. They can understand and learn the skills to move to cloud and support applications in cloud.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;There are lots of options to build a private cloud in house. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Following softwares are worth mentioning&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;1. &lt;a href="http://www.eucalyptus.com/"&gt;Eucalyptus&lt;/a&gt;&lt;/div&gt;&lt;div&gt;2. &lt;a href="http://www.opennebula.org/start"&gt;OpenNebula&lt;/a&gt;&lt;/div&gt;&lt;div&gt;3. &lt;a href="http://www.vmware.com/products/vsphere/"&gt;VMWare's vSphere &lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I will write another post about pros and cons of building a private cloud.&lt;/div&gt;&lt;div&gt;  &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7912068605233390124-7924870421512450117?l=enablecloud.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://enablecloud.blogspot.com/feeds/7924870421512450117/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7912068605233390124&amp;postID=7924870421512450117&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/7924870421512450117'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/7924870421512450117'/><link rel='alternate' type='text/html' href='http://enablecloud.blogspot.com/2010/05/solutions-for-building-private-cloud.html' title='Solutions for building private cloud'/><author><name>Manaranjan Pradhan</name><uri>http://www.blogger.com/profile/00587309481023161990</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7912068605233390124.post-2840322791406770759</id><published>2010-05-04T05:56:00.000-07:00</published><updated>2010-05-04T06:54:20.868-07:00</updated><title type='text'>Migrating Applications to Amazon Cloud - Part 1</title><content type='html'>I am starting a series of posts on how to migrate existing applications to cloud. The applications can be of different kinds. We will start out with simple web applications.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The intention of these articles are not to reinvent the wheel, but the point to solutions or products already built and available to do this job. We will look into some of these solutions and how they help migrating applications to Amazon Cloud. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I will also point to the products information pages and blog posts that explain how to do it.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;In the first part of the series, we will look into &lt;b&gt;&lt;span class="Apple-style-span"  style="color:#FF6600;"&gt;&lt;a href="http://www.cloudfoundry.com/"&gt;CloudFoundry&lt;/a&gt;&lt;/span&gt;&lt;/b&gt;.&lt;br /&gt;&lt;div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;CloudFoundry can be used to migrate web applications that uses following software stack.&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;span class="Apple-style-span"  style="color:#FF6600;"&gt;Apache web server, Tomcat Container and MySql.&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;They have provided a simple interface to upload your application war file and configure the deployment topology.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;You can deploy all the components in a single EC2 instance or configure it to deploy different components (Apache web server, Tomcat container and MySql) in separate instances. And it automatically configures master-slave configuration for you MySql database.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;CloudFoundry tools is in beta phase now, hence is available free of cost. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;If your application war file is ready, then it will take not more than 10 minutes to migrate to Amazon Cloud.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="color:#FF6600;"&gt;How to start? Where to Go?&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.cloudfoundry.com/getting_started.html"&gt;Here &lt;/a&gt;is the getting started guide.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.cloudfoundry.com/screencasts.html#cf"&gt;Here &lt;/a&gt; is a screencast that shows how to upload your application to Amazon EC2. &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7912068605233390124-2840322791406770759?l=enablecloud.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://enablecloud.blogspot.com/feeds/2840322791406770759/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7912068605233390124&amp;postID=2840322791406770759&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/2840322791406770759'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/2840322791406770759'/><link rel='alternate' type='text/html' href='http://enablecloud.blogspot.com/2010/05/migrating-applications-to-amazon-cloud.html' title='Migrating Applications to Amazon Cloud - Part 1'/><author><name>Manaranjan Pradhan</name><uri>http://www.blogger.com/profile/00587309481023161990</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7912068605233390124.post-1184907950724720684</id><published>2010-04-30T04:59:00.000-07:00</published><updated>2010-04-30T05:29:47.755-07:00</updated><title type='text'>Licensing for the cloud</title><content type='html'>How licensing of softwares work in the cloud? Are the current licensing models suitable for cloud computing? &lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;First of all there are licenses for the &lt;b&gt;OS&lt;/b&gt; running and then the &lt;b&gt;softwares &lt;/b&gt;that we install to run our applications.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;OS licenses are taken care of by the cloud providers mostly. Amazon has started a pilot program of brining your own windows server licenses to the EC2. This is currently available only to US customers and in US region.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Software licensing models are surely lacking behind and not very compatible for cloud computing scenarios. You still need to buy licenses for your peak load. For example, if you run 100 application server instances during your peak load but only 20 servers rest of the time, you still need to pay for 100 server licenses. The licensing models for commercial softwares have not kept pace with cloud computing paradigm.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Probably because, the software vendors are not ready for commoditization of their softwares.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Open source softwares&lt;/b&gt; are best fit for the cloud environment. You can start as many instances as you want and run for as many hours as you want. That's why they are very popular. And most the migrated applications to cloud currently run open source software. I think they have made the right decision to use open source softwares and now benefiting from cloud opportunities. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Softwares with server licenses&lt;/b&gt; are worst, as you need to pay for the maximum number of servers, that you may need to run at some point of time. Though you benefited from moving to cloud but not on software licensing front.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Also, you should be careful about your auto-scaling features, as you may start server instances more than the actual licenses, that you have paid for. This would be a breach of software licensing contract. Currently there are no way to monitor and manage licenses in the cloud, at least not any that I am aware of.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Softwares that have &lt;b&gt;CPU hours licensing model&lt;/b&gt; are definitely most welcome and is the way to go for most software vendors in future to keep in pace with cloud computing.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;My suggestion is that you must understand the licensing models before jumping into cloud, if you are using commercial softwares. Also push your vendors to come up with a cloud compatible licensing model. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;It is only matter of time before the software vendors are forced to adopt models for the cloud.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7912068605233390124-1184907950724720684?l=enablecloud.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://enablecloud.blogspot.com/feeds/1184907950724720684/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7912068605233390124&amp;postID=1184907950724720684&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/1184907950724720684'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/1184907950724720684'/><link rel='alternate' type='text/html' href='http://enablecloud.blogspot.com/2010/04/licensing-for-cloud.html' title='Licensing for the cloud'/><author><name>Manaranjan Pradhan</name><uri>http://www.blogger.com/profile/00587309481023161990</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7912068605233390124.post-7087718374794628408</id><published>2010-04-30T03:36:00.000-07:00</published><updated>2010-04-30T04:40:32.623-07:00</updated><title type='text'>Security designs for Amazon AWS cloud</title><content type='html'>Security is becoming my favorite topic. What need to be done to ensure that our data is safe in the cloud. Here are some recommendations while deploying applications in the cloud.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;1. Always use trusted public AMIs, whether it is windows or linux.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;2. Disable root logins in your systems. Access systems using SSH shell and using keys. Users should use sudo for administrator jobs.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;3. Never store user credential information on machine images. It is advisable to build AMIs with minimal software. On booting, initialize the instances with required softwares and configure it. Sensitive data like user credentials or database user-id/passwords can be passed in the command line while booting the instances. These information should never be persisted in EBS or bundled with AMIs.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;4. Encrypt the file system on EBS. XFS + RAIDO is a good option. If your applications read/write any information on the file system, then encrypting the file system is a good idea.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;5. Encrypt your backup files. After taking backup of your EBS volumes and before storing in in S3, make sure it is encrypted.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;6. Encrypt the sensitive data in database or keep sensitive data out of cloud. Use the keys to decrypt the information in memory and never store decrypted data on persistence store or file system. Clear memory after required operations are complete.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;7. Use security groups to ensure only required access is given to authorized people and systems. Deploy different components of application in different instances e.g. use separate instances for web server, application server and database servers. And enable security groups for strict access.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;8. Use SSL for encrypting data in transit. Users should access and transfer application information using SSL. Atleast enable SSL  for those functionalities which access critical pieces of information. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;9. Use multi factor authentication for accessing your amazon account information. It will provide higher security.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;10. Harden your OS to remove unnecessary services running and unwanted users from the system. Tools like Bastille are good for hardening linux OS. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;These are basic security steps that need to taken to ensure security of your data and applications in the amazon cloud.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://aws.amazon.com/about-aws/whats-new/2009/06/08/new-aws-security-center-and-security-whitepaper/"&gt;Here &lt;/a&gt;is a good whitepaper from Amazon on AWS Security.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7912068605233390124-7087718374794628408?l=enablecloud.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://enablecloud.blogspot.com/feeds/7087718374794628408/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7912068605233390124&amp;postID=7087718374794628408&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/7087718374794628408'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/7087718374794628408'/><link rel='alternate' type='text/html' href='http://enablecloud.blogspot.com/2010/04/security-designs-for-amazon-aws-cloud.html' title='Security designs for Amazon AWS cloud'/><author><name>Manaranjan Pradhan</name><uri>http://www.blogger.com/profile/00587309481023161990</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7912068605233390124.post-4966190469886396325</id><published>2010-04-28T22:04:00.000-07:00</published><updated>2010-04-29T05:24:28.278-07:00</updated><title type='text'>Amazon releases AWS in Asia-pacific Region: Singapore</title><content type='html'>Amazon has finally released AWS region in Singapore, Asia pacific. Earlier this year Amazon had released an edge point in Singapore for it's CloudFront solution. This is a good news for Asia pacific customers and Amazon's commitment to continuously increase better experience with it's cloud solution.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Already Amazon AWS value add service providers like RightScale and enTrust have planned to release their offerings in asia-pacific region very soon.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;All AWS offerings EC2, S3, SQS, SDB, RDS, Notification service, Cloud Front will be available Singapore region. Amazon will now push hard it's offerings in the Asia Pacific region. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Here is the announcements: &lt;a href="http://aws.amazon.com/about-aws/whats-new/2010/04/29/announcing-asia-pacific-singapore-region/?ref_=pe_2170_15199740"&gt;http://aws.amazon.com/about-aws/whats-new/2010/04/29/announcing-asia-pacific-singapore-region/?ref_=pe_2170_15199740&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7912068605233390124-4966190469886396325?l=enablecloud.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://enablecloud.blogspot.com/feeds/4966190469886396325/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7912068605233390124&amp;postID=4966190469886396325&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/4966190469886396325'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/4966190469886396325'/><link rel='alternate' type='text/html' href='http://enablecloud.blogspot.com/2010/04/amazon-release-aws-in-asia-pacific.html' title='Amazon releases AWS in Asia-pacific Region: Singapore'/><author><name>Manaranjan Pradhan</name><uri>http://www.blogger.com/profile/00587309481023161990</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7912068605233390124.post-8107204670595407112</id><published>2010-04-27T09:50:00.000-07:00</published><updated>2010-04-27T20:41:30.530-07:00</updated><title type='text'>Cloud will make your CFO happy</title><content type='html'>The cloud economic benefits are so compelling that it will make your management especially happy. Let's look at some factors why it is so promising financially.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Expenditure&lt;/div&gt;&lt;div&gt;-------------&lt;/div&gt;&lt;div&gt;On premise solutions need capital expenses for buying hardwares, setting up data-centers etc. As capital investments are funded by cash reserve or loans, the rate of return should be higher than cost of capital. Also IT Capital assets depreciate faster (about 2-3 years), so the return on the investment should be realized during this short span.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Cloud computing expenses are operating expenses and funded from revenues.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;div&gt;Cash Flow&lt;/div&gt;&lt;div&gt;----------&lt;/div&gt;&lt;div&gt;All investments for on-premise solutions are upfront investments. But it is "pay as you go" for cloud computing.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Financial Risk&lt;/div&gt;&lt;div&gt;--------------&lt;/div&gt;&lt;div&gt;As the investments are upfront there are high risks involved if the returns are uncertain. The risk is low in case of cloud computing, as it gives you flexibility NOT to incur the expenses if the returns are low.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;i&gt;No huge upfront investment with reduced financial risk is an advantage for organization choose to adopt cloud computing.  &lt;/i&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;But I must emphasize, that careful calculations and comparisons should be made with available organization data, to arrive at a conclusion on how much benefit, moving to cloud can offer. The benefits can not be same for all organizations. Some organizations might have additional data center capacity or might have reached highest level of maturity in IT operations. Moving to cloud may not offer additional benefit to them. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;You must take inspirations from others, but MUST do the ground work properly to evaluation the transformation. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Last but not the least, organizations must also consider the cost of not moving to the cloud. Will talk about it in a later post. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7912068605233390124-8107204670595407112?l=enablecloud.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://enablecloud.blogspot.com/feeds/8107204670595407112/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7912068605233390124&amp;postID=8107204670595407112&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/8107204670595407112'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/8107204670595407112'/><link rel='alternate' type='text/html' href='http://enablecloud.blogspot.com/2010/04/cloud-will-make-your-cfo-happy.html' title='Cloud will make your CFO happy'/><author><name>Manaranjan Pradhan</name><uri>http://www.blogger.com/profile/00587309481023161990</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7912068605233390124.post-6892353046479562006</id><published>2010-04-25T22:15:00.000-07:00</published><updated>2010-04-26T03:02:27.190-07:00</updated><title type='text'>A Cloud Security Leader?</title><content type='html'>Eveyone's concern on cloud secuity and privacy is actually driving innovative solutions. This is what is going to happen and many innovative solutions will emerge and make the case for cloud computing more compelling.&lt;br /&gt;&lt;br /&gt;One such leader is definitely CohesiveFT. It's product VPN-Cubed can create overlay networks in the cloud. The overlay network can created in a single cloud or it can span across multiple clouds or between cloud and oranization's private infrastructure. &lt;span style="color:#000000;"&gt;An &lt;/span&gt;&lt;a style="COLOR: rgb(85,136,170); TEXT-DECORATION: none" href="http://en.wikipedia.org/wiki/Overlay_network"&gt;&lt;span style="color:#000000;"&gt;overlay network&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#000000;"&gt; is "a computer network built on top of another network.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;This solution can be used to implement following security related solutions&lt;br /&gt;1. You can bring your own static IP addresses and assign to virtual servers on public cloud.&lt;br /&gt;2. You can run solutions that rely on multicasting (some clustering solutions use multicasting)&lt;br /&gt;3. Extend existing network monitoring solutions for your datacenter or private infrastructure to monitor cloud infrastructure as well.&lt;br /&gt;4. Deploy solutions across multiple cloud and still configure it as part of the same network. The overlay network can span acros multiple cloud. (Clouds that VPN-Cubed support). This feature can be exploited to implement failover strategies.&lt;br /&gt;5. All communications are encrypted in the overlay network. It can create a industry standard IPSec based VPN. IPSec protocol prevents attacks like man in the middle, DoS or network intrustion.&lt;br /&gt;&lt;br /&gt;VPN-Cubed is currently available on Amazon EC2, GoGrid and terremark's vCloud Express. It has a free edition AMI in Amazon, which can be used to create a virtual private network on cloud of upto 5 instances.&lt;br /&gt;&lt;br /&gt;These innovative solutions will fill the gaps and make a compelling case for organization's to adopt cloud. Here is an &lt;a href="http://blog.elasticserver.com/2009/08/new-vpn-cubed-version-and-cloud.html"&gt;article&lt;/a&gt; on how VPNCubed compares to Amazon VPC and is more complete solution.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7912068605233390124-6892353046479562006?l=enablecloud.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://enablecloud.blogspot.com/feeds/6892353046479562006/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7912068605233390124&amp;postID=6892353046479562006&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/6892353046479562006'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/6892353046479562006'/><link rel='alternate' type='text/html' href='http://enablecloud.blogspot.com/2010/04/cloud-security-leader.html' title='A Cloud Security Leader?'/><author><name>Manaranjan Pradhan</name><uri>http://www.blogger.com/profile/00587309481023161990</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7912068605233390124.post-8789181168097455647</id><published>2010-04-25T10:18:00.000-07:00</published><updated>2010-04-25T21:19:52.059-07:00</updated><title type='text'>Load or Stress Testing on Cloud</title><content type='html'>I forgot to mention in one of my earlier post "&lt;a href="http://enablecloud.blogspot.com/2010/04/suitable-and-not-suitable-for-cloud.html"&gt;Suitable or not Suitable for Cloud&lt;/a&gt;" that load or stress testing is one of the suitable business cases for the cloud. Simulating an actual production load is not always possible as it would require similar setup that needs lots of investment. Most of the organizations do not have enough investment for such stress test setups. Organizations normally do a stripped down version of stress testing to find out any obvious bottlenecks.&lt;br /&gt;&lt;br /&gt;Cloud can come handy in carrying out a real life stress testing scenario. In fact cloud can be used for both:&lt;br /&gt;1. Deploy and scale applications on cloud to do stress testing&lt;br /&gt;2. Generate load for your testbed&lt;br /&gt;&lt;br /&gt;There are few good testing tools available for cloud testing of applications. Two tools that stand out are SOASTA and PushToTest.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Here is an &lt;a href="http://highscalability.com/blog/2010/3/4/how-myspace-tested-their-live-site-with-1-million-concurrent.html"&gt;article &lt;/a&gt;on how SOASTA was used to simulate 1 million concurrent virtual users to test myspace.com. 800 EC2 servers were run to generate such a huge traffic.&lt;br /&gt;&lt;br /&gt;SOASTA's CloudTest has on demand EC2 instances to quickly and affordably simulate the real time web environment. Multiple instances can be started to simulate more users. Simulating this kind of scenario in house is a real challenge and opting for cloud is an abvious advantage.&lt;br /&gt;&lt;br /&gt;SOASTA can test web applications and services which support SOAP, REST or HTTP(S) protocols. It has recording, monitoring and analystics tools to perform end-to-end testing and analysis. Please check it out &lt;a href="http://www.soasta.com/product/recording.html"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Similarly, PushToTest's TestMaker is available as Amazon AMI. This can be used to simulate thousands of concurrent users. You can check the product &lt;a href="http://www.pushtotest.com/deployment-options/test-ondemand"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Cloud testing provides few visible advantages.&lt;br /&gt;1. No more buying licenses, setup software and hardware for the testbed&lt;br /&gt;2. These services are available at commodity prices. Pay only for what you use and how long you use. No need to incur heavy software costs like traditional test tools.&lt;br /&gt;3. Test can be done to simulate geographically distributed users using various cloud providers or mutiple regions in Amzon AWS. This is quite close to real life scenario for webstites providing services globally.&lt;br /&gt;&lt;br /&gt;This shows how Cloud Computing is changing many faces of IT. Please give your comments or send mailto: manaranjan@enableapps.com&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7912068605233390124-8789181168097455647?l=enablecloud.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://enablecloud.blogspot.com/feeds/8789181168097455647/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7912068605233390124&amp;postID=8789181168097455647&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/8789181168097455647'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/8789181168097455647'/><link rel='alternate' type='text/html' href='http://enablecloud.blogspot.com/2010/04/load-or-stress-testing-on-cloud.html' title='Load or Stress Testing on Cloud'/><author><name>Manaranjan Pradhan</name><uri>http://www.blogger.com/profile/00587309481023161990</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7912068605233390124.post-4016673752849402511</id><published>2010-04-25T04:48:00.001-07:00</published><updated>2010-04-25T05:28:40.431-07:00</updated><title type='text'>Creating Security Perimeter in Amazon AWS</title><content type='html'>The concept of perimeter security is to create fortified network boundaries for servers to restrict access to only intended traffic using firewalls and provide network security from malicious attacks like network intrusion, man in the middle attacks and packet spoofing.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Amazon provides two solutions to create similar solutions in the amazon cloud.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;1. Security Groups&lt;/div&gt;&lt;div&gt;2. VPC ( Virtual Private Cloud)   &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Security Groups&lt;/div&gt;&lt;div&gt;-----------------&lt;/div&gt;&lt;div&gt;Security groups can be defined and linked to EC2 servers to restrict traffic from particular set of IP addresses and allow access on particular ports. Security groups act like virtual firewalls.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;For example, traffic can be allowed from internet on port 80 to EC2 instances running web servers. But traffic from only web servers are allowed on a particular port to EC2 instances running application servers. Similarly, traffic can be allowed only from application servers to EC2 instances running database servers. This is to make sure that unintended access are not allowed to servers.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;VPC (Virtual Private Cloud)&lt;/div&gt;&lt;div&gt;-----------------------------&lt;/div&gt;&lt;div&gt;Amazon's VPC solution can be using create virtual private network by isolating EC2 instances and connect to enterprise's existing IT infrastructure using encrypted IPSec VPN Connection.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;IPSec protocol is designed to prevent network intrusion, DoS and Man in the middle attacks. Organizations can create a subnet for EC2 resources and assign an IP address range for EC2 instances within subnets.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;This is a good option for organizations looking to move to cloud but considering integrating with their existing infrastructure using secured networks.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7912068605233390124-4016673752849402511?l=enablecloud.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://enablecloud.blogspot.com/feeds/4016673752849402511/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7912068605233390124&amp;postID=4016673752849402511&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/4016673752849402511'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/4016673752849402511'/><link rel='alternate' type='text/html' href='http://enablecloud.blogspot.com/2010/04/creating-security-perimeter-in-amazon.html' title='Creating Security Perimeter in Amazon AWS'/><author><name>Manaranjan Pradhan</name><uri>http://www.blogger.com/profile/00587309481023161990</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7912068605233390124.post-3098822606503055017</id><published>2010-04-24T02:15:00.000-07:00</published><updated>2010-04-24T18:07:19.569-07:00</updated><title type='text'>Cloud Computing &amp; why it matters</title><content type='html'>There is a wonderful presentation on "&lt;a href="http://www.youtube.com/watch?v=okqLxzWS5R4."&gt;Cloud Computing &amp;amp; why it matters&lt;/a&gt;" by Simon Wardley. I loved this one. He talks about how innovations become products and ultimately a commodity which are normally available as services. Like electricity which had seen this transition from being one of the hot innovations in early nineteenth century to become a regular commodity later. Countries built grid to provide this to every home and it became ubiquitous. &lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Similarly computing power will also become a commodity and this utility will be available as a service. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;Simon talks about how 4 parameters effect this transition. Concept, suitability, technology and attitude.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The concept is already there. Is the industry and environment suitable for this revolution? Is the technology available for this transition? And lastly the willingness of organizations to change and adopt this change.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;He also mentioned that once computation becomes commodity, it will loose it's spark. It will not be strategic to business and will only be a cost of doing business. Like electricity is not a strategic differentiator any more, it is only a cost of doing business. Everyone will have access to computation power depending on their need and their ability to consume.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I agree that cloud computing is not a technology but a process of transition of computation from being a product to become a commodity and being offered as a service.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I thoroughly enjoyed the talk. It is only 14 minutes talk.&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7912068605233390124-3098822606503055017?l=enablecloud.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://enablecloud.blogspot.com/feeds/3098822606503055017/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7912068605233390124&amp;postID=3098822606503055017&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/3098822606503055017'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/3098822606503055017'/><link rel='alternate' type='text/html' href='http://enablecloud.blogspot.com/2010/04/cloud-computing-why-it-matters.html' title='Cloud Computing &amp; why it matters'/><author><name>Manaranjan Pradhan</name><uri>http://www.blogger.com/profile/00587309481023161990</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7912068605233390124.post-9165812055590043571</id><published>2010-04-23T18:12:00.001-07:00</published><updated>2010-04-24T00:09:22.182-07:00</updated><title type='text'>Suitable or Not Suitable for Cloud</title><content type='html'>&lt;div&gt;Customers ask normally, whether they can move everything to cloud or selectively move to cloud. It is actually a good question to ask. Cloud is not a solution for everything. Until unless you gain from moving to cloud, why bother at all. And the biggest promise cloud provide is economic benefit.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Let's look at some business cases, where cloud makes lots of sense and where it makes little or no sense.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Business cases that are good fit for Cloud&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;1. Specialized functionality&lt;/div&gt;&lt;div&gt;   --------------------------&lt;/div&gt;&lt;div&gt;let's start with an example. NY Times wanted to convert their 15 million scanned documents into pdfs and create searchable indexes. Total size of this documents are 4 TB. It would have taken months to do this task. But they did over a weekend in amazon cloud using 100 of linux servers. Most importantly they could do it using a credit card.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Similar functionalities that need huge amount of resources but not on a continuous basis is definitely a good fit for cloud.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;There are some cloud offering that solve specific problems. For example, Amazon's CloudFront. It is a good fit for content delivery around the globe. They have edge point servers across the globe and your contents can actually be cached in edge points  to delivery contents faster. Imagine if you have to actually setup such infrastructure across globe to achieve this. Amazon provides this at a fraction of a cost that you would actually incur if you decide to go on your own.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;There is no predefined list of specific tasks that fit the cloud. You need to look at your need and decide by comparing cost-benefit between cloud and in-house solutions. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;2. One-off tasks&lt;/div&gt;&lt;div&gt;----------------&lt;/div&gt;&lt;div&gt;One time tasks that need computation power. For example, if you need to create searchable index on you documents one in a month. Then upload the documents, run your programs (Map-Reduce a good option) to create indexes and then download the indexes. Again look at your requirement and decide.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;3. Inconsistent load/demand&lt;/div&gt;&lt;div&gt;    ---------------------------&lt;/div&gt;&lt;div&gt;Applications that have variable or seasonal load. Applications that are accessed by users between a time-frame e.g. only during day time having a peak load for only 2/3 hours. Or if your application or website is accessed during holiday seasons or pertaining to a event like sports event that happens once in a year. These are good fit for cloud. There will be lots of unused capacity if these solutions are hosted in-house. Cloud provides excellent economic benefits for these kinds of applications. You can scale up or down depending on demand and these can be automated in most of the cloud provider environments.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;4. Expensive or no expertise to run in-house&lt;/div&gt;&lt;div&gt;    ------------------------------------------&lt;/div&gt;&lt;div&gt;If you are a startup and do not have capital for investment in your own infrastructure. If you do not have expertise to build data centers, applications or run your IT operations. Then cloud is a good fit. Cloud is pay as you go and can be scaled as business grows. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;5. Time-to-market is essential&lt;/div&gt;&lt;div&gt;    -----------------------------&lt;/div&gt;&lt;div&gt;If you need to develop and host something very quickly and you can not waste valuable time in ordering new servers, setting up infrastructure.  Then cloud can be your friend. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Cloud is not a best option for what kind of applications&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;1. Applications that need deep integration into your enterprise&lt;/div&gt;&lt;div&gt;   -------------------------------------------------------------&lt;/div&gt;&lt;div&gt;If you application integrates with several other applications in your enterprise and all applications can not be moved to cloud. If your application interacts with many applications for most of the work it does. Then moving this application may require compromising on performance or security aspects. These applications are not a good fit.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;2. Highly sensitive and heavily regulated data&lt;/div&gt;&lt;div&gt;    -------------------------------------------&lt;/div&gt;&lt;div&gt;Sensitive data must be kept out of cloud unless you have a very strong security implementation. There are some regulation that data can not be kept out of organizations's premise or national boundaries. These kind of applications are not good fit unless cloud providers provide solutions specific to solve these issues. Amazon EC2 provide data centers in US and Europe. So, you can choose where your data or application can run and hence comply to some regulations.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;3. Applications already running in premise and have reached highest level of maturity&lt;/div&gt;&lt;div&gt;    ------------------------------------------------------------------------------------&lt;/div&gt;&lt;div&gt;I think no need to disturb applications that are running and have reached higher levels of operational efficiency. If you still want to migrate then you can do a proper cost-benefit analysis to understand implications.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Summarize&lt;/div&gt;&lt;div&gt;-----------&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Cloud and some applications are made for each other. Some applications are good if they run in-house. If one suggestion I would give then that would be : Architects should compare cloud and in-house for all new application developments. And only after making proper analysis they should choose what is right for it. Rejecting cloud without considering pros and cons, is not advisable.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I hope you enjoyed reading this blog.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Please provide your comments or write to me at manaranjan@enableapps.com &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7912068605233390124-9165812055590043571?l=enablecloud.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://enablecloud.blogspot.com/feeds/9165812055590043571/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7912068605233390124&amp;postID=9165812055590043571&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/9165812055590043571'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/9165812055590043571'/><link rel='alternate' type='text/html' href='http://enablecloud.blogspot.com/2010/04/suitable-and-not-suitable-for-cloud.html' title='Suitable or Not Suitable for Cloud'/><author><name>Manaranjan Pradhan</name><uri>http://www.blogger.com/profile/00587309481023161990</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7912068605233390124.post-1689678702194121915</id><published>2010-04-23T05:42:00.000-07:00</published><updated>2010-04-23T19:02:40.291-07:00</updated><title type='text'>Is cloud less secure?</title><content type='html'>Whenever I attend any cloud sessions or seminars, most of the questions people ask are about security and privacy. Undoubtedly this is one of the major concern for the cloud adoption. But is cloud really less secure?&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I think there are two aspects to this. &lt;/div&gt;&lt;div&gt;1. One is lack of awareness &lt;/div&gt;&lt;div&gt;2. Readiness for cloud migration ( Cloud provider and consumer )&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The general perception is if my data is out there in the cloud, anyone can access it. It is not true. The same set of security technologies that is available to enterprises are also available in the cloud. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Let's see what are top Cloud Security Concerns&lt;/div&gt;&lt;div&gt;&lt;div&gt;-----------------------&lt;/div&gt;&lt;div&gt;1. Data protection&lt;/div&gt;&lt;div&gt;2. Access Controls&lt;/div&gt;&lt;div&gt;3. Network Vulnerability&lt;/div&gt;&lt;div&gt;4. Availability &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Data Protection&lt;/div&gt;&lt;div&gt;----------------&lt;/div&gt;&lt;div&gt;General best practices are that data should be encrypted in the cloud for protection. e.g. customer information should be encrypted if stored in the cloud to protect privacy. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Keep highly sensitive data out of cloud. Do all operations related to sensitive data in the premise of the enterprise and find a secured way to integrate what is in cloud and what is in enterprise.&lt;/div&gt;&lt;div&gt;e.g. keep credit card related information and do authorization related operations in the enterprise premise and return only results to the cloud. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;This is where readiness comes into picture. Is your enterprise data properly segregated? Do you know what is sensitive data and what is not? Do your application components loosely coupled so that various components can be deployed in distributed environments.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Access Control&lt;/div&gt;&lt;div&gt;---------------&lt;/div&gt;&lt;div&gt;Ensure that right people gets access to right resources. This is where most cloud vendors are lacking. We do not see most cloud vendors providing a mechanism to integrate with enterprises' existing identity and access management infrastructure. There are ways to integrate it right now, but innovations need to happen here. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Network Security&lt;/div&gt;&lt;div&gt;------------------&lt;/div&gt;&lt;div&gt;Encrypt the data in transit in networks. Cloud vendors already providing a mechanism to isolate your instances and connect to your enterprise using VPN. Amazon AWS provides features to create Virtual Private Cloud using IPSec security. This ensures protection against Man in the middle attacks, Denial of service attacks and Packet sniffing.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Amazon's security group features also provide a firewall like feature to filter relevant traffics  to servers and applications.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Availability&lt;/div&gt;&lt;div&gt;-----------&lt;/div&gt;&lt;div&gt;This is one fear that what happens if cloud vendor's infrastructure fails or disaster strikes. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;So, before choosing a cloud vendor make sure if the cloud vendors have a disaster recovery mechanism, whether they have multiple data centers to fail over. Amazon provides data centers in multiple regions and available zones. So, some of their services automatically fail-over. But you also need to ensure your application architecture exploits these features to remain available.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;What happens if cloud vendor goes bankrupt?&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Find an alternative cloud provider and have a backup system running on it. It can be active-active or active-passive configuration. The good point is cloud is elastic. So, you need not have a full capacity deployment in the alternative provider environment. But when you fail-over, you can scale up as you need. Make sure you do routine drills to ensure this mechanism works as expected.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;To summarize&lt;/div&gt;&lt;div&gt;--------------&lt;/div&gt;&lt;div&gt;Clouds can be more secure as cloud providers invest more in security as it is critical to their business.  Cloud providers are doing more research, investment, testing and improving security infrastructure continuously. Small and medium sized companies probably do not have much investment and expertise to implement all aspects of security. So, for them moving to cloud can actually mean more security.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;As far as perception is concerned increasing adoption will create more comfort and change in perception for other customers. Salesforce.com is a good example. More and more customers are subscribing to it everyday.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;So, before concluding cloud is less secure, please ask the following questions&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;1. What security aspects that is required for your enterprises are not available in the cloud?&lt;/div&gt;&lt;div&gt;2. Are your applications ready to move into the cloud?&lt;/div&gt;&lt;div&gt;3. What are threat perceptions if you move your application to the cloud?&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Start little, keep learning and increase maturity in cloud migration. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Please provide your comments or write to manaranjan@enableapps.com&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7912068605233390124-1689678702194121915?l=enablecloud.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://enablecloud.blogspot.com/feeds/1689678702194121915/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7912068605233390124&amp;postID=1689678702194121915&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/1689678702194121915'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7912068605233390124/posts/default/1689678702194121915'/><link rel='alternate' type='text/html' href='http://enablecloud.blogspot.com/2010/04/is-cloud-less-secure.html' title='Is cloud less secure?'/><author><name>Manaranjan Pradhan</name><uri>http://www.blogger.com/profile/00587309481023161990</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
