Software- As- A- Service (SaaS) On AWS

2y ago
60 Views
5 Downloads
823.23 KB
11 Pages
Last View : 16d ago
Last Download : 3m ago
Upload by : Bennett Almond
Transcription

SaaS on AWSSeptember 2010Software- as- a- Service (SaaS) on AWSBusiness and Architecture OverviewSaaS and AWS IntroductionSoftware- as- a –Service (SaaS) is an application delivery model that enables users to utilize a software solution over theInternet. SaaS revenue models are typically subscription based, where users pay a fixed recurring fee over a period oftime (often monthly or annually). SaaS providers are drawn to Amazon Web Services (AWS) as an ideal infrastructureplatform for their SaaS business – as the AWS usage based pricing model and scale on demand infrastructure alignswell with their revenue and operating models. This whitepaper explores the business and technical considerations ofdeploying a SaaS offering on AWS versus a co-location or traditional hosting environment.Business ConsiderationsSaaS offerings present a number of unique challenges when compared to traditional software product models.Specifically, providers must take into account the following:Managing Cash FlowSubscription pricing models, in contrast to perpetual licensing models, don’t have large, one time, upfront licenserevenue coming in as customers on-board. Instead, customers pay smaller, recurring fees over the lifetime of thecontract. When choosing a hosting platform, this is an important difference to keep in mind. Traditional hostingenvironments require large initial capital outlays to procure required infrastructure before a single customer can be onboarded. Forecasting demand well ahead of actual usage becomes necessary, which in turn exposes two distinctbusiness risks: If the business performs better than expected, there may not be enough servers on hand to support newpaying customers. On the other hand, if demand is over-forecasted, you will have low asset utilization, high fixedoperating expenses, and ultimately increase the required time duration to recognize positive cash flow for a givencustomer (see figure below).AWS enables providers to avoid the expense of owning servers or operating data centers. Our service enables SaaSproviders to add and remove resources as needed based on the real-time demands of their business. This significantlydecreases forecasting risk, and improves cash flow positions by only paying for resources when they are actually needed.AWS services can be consumed without minimum usage contracts or long-term commitments, helping providers retainmaximum business flexibility.1

SaaS on AWSSeptember 2010While there is a transition required from the traditional perpetual license business model, ISVs and shareholders find arecurring subscription model to be favorable on the balance sheet as it builds a more predictable, deferred revenuestream. In difficult economic times, net new license revenue tends to be the first to go.Reduce Platform SupportA SaaS delivery model allows an ISV to dedicate their valuable engineering resources to develop technology that leads togreater innovation and differentiation of their solution in the market. With the distributed client server computingmodel, the end user takes on the responsibility of building the platform required to support the business application.As such, there are an infinite number of configurations that an ISV must “certify” to in order to support their customers.Some call this the Matrix of Pain. Consider an ISV who has 10 products, that needs support on 10 different platformconfigurations (i.e. Windows 2003 running SQL Server on 32-bit, Windows 2008 running SQL on 64-bit, RHEL 4 runningOracle on OVM, RHEL 5 running MySQL on VMWare, etc .). Each time an update is made to one of the ISV products itmustbe tested against all 10 certified platforms. One update for all 10 software products is equal to100 differentvariations that need to be tested against and supported indefinitely. SaaS delivery allows an ISV to free themselves ofthe Matrix of Pain. Instead of spending tens of millions of dollars on sustaining engineering and legacy support, SaaSallows an ISV to focus on one platform of their choosing.Increase Sales Velocity and Customer SatisfactionTheInternet has introduced a number of conveniences in our personal and professional lives. One of the mostnoticeable is a reduction in time to value. Whether it is accessing movies, music, shopping for cars, or downloading abook, the internet has revolutionized customers’ expectations around instant gratification. Like cloud computing, SaaSallows an ISV to provide this level of instant gratification to their customer, as well as their sales team and channelpartners. No longer does an enterprise sales executive have to wait 4 weeks for a customer to acquire hardware,operating system licenses and data center space followed by installation and configuration of the business application tostart an evaluation. The reality is that cloud computing allows ISVs to deliver software in a truly on demand manner.Reduce sales cycles from months to days. Reduce time to value for the customer from months to hours. Win/win.SaaS allows the ISV to control the software upgrade cycle for the customer. In many cases, end users are reluctant tomigrate to newer versions of software simply due to the hassle and uncertainty associated with doing upgrades. Thisimpacts the ISV equally. Customers who don’t upgrade need support on legacy platforms. With SaaS the customer isabstracted from the software installation, configuration, backup, and upgrade process. Therefore, the ISV cancontinuously upgrade the software to the latest and greatest. Meaning, the end user is always using the newest, mostfeature-rich, most secure and fastest version of the software. The ISV benefits from seamlessly moving customers alongthe upgrade path, thus improving customer satisfaction and reducing legacy support costs.Leverage Existing Software and ArchitectureAWS is unique in our approach to true utility based Infrastructure as a Service. Since AWS provides discrete buildingblocks of low level computing infrastructure, ISVs can leverage existing software and architecture and simply move it toAWS with little to no re-engineering or re-architecting. This is a critical point to note. In order for a SaaS provider tobenefit from the financial advantages of a SaaS model, they must be able to achieve the greatest return oninfrastructure assets. This requires running systems at the highest level of utilization possible. An ISV cannot afford tohave dedicated hardware for each customer and run those systems at 20% utilization. The choices are to re-architect, inmany cases rewrite software from scratch, which is very costly. Or, write new software to leverage Platform as a Service2

SaaS on AWSSeptember 2010offerings. Or, leverage AWS to achieve the economic benefits of multi-tenancy without having to re-write their existingsoftware. As mentioned above, AWS allows the ISV to easily spin up unique environments for each new customer andpay for that infrastructure only when they need it.Managing Uptime for a Global Customer BaseA highly reliable and available IT infrastructure requires SaaS providers to not only maintain reliable storage and backupdevices, but also operate a reliable network with redundant networking devices, transit connections, and physicalconnections between data centers. In addition to backup and reliable networking, SaaS providers must also have atested, working solution for disaster recovery. This includes deploying data and applications across multiple data centers– either with failure resilient software or in a more traditional hot/cold standby approach. To achieve realistic disasterrecovery, all of the data centers and servers involved have to be constantly utilized; if they sit idle, it’s almost certainthey won’t function as desired when activated from a cold start. SaaS providers need to account for both the cost andthe complexity of this redundancy when evaluating their deployment. AWS includes all this in its simple usage charges,and lets customers easily do things like deploy servers in any one of our global regions (East Coast US, West Coast US,EU, and Singapore). Within a region, ISVs can further enable the availability of their application by deploying serversacross multiple Availability Zones, which provides the ability to remain resilient in the face of most failure modesincluding natural disasters or system failures.Providing a Secure EnvironmentAnother direct cost for SaaS providers running their applications is ensuring the confidentiality, integrity, and availabilityof business critical data. Examples of security costs for SaaS providers include capital expenditures for network securitydevices, security software licenses, staffing of an information security organization, costs associated with informationsecurity regulatory compliance, physical security requirements, smart cards for access control, and so on. To provideend-to-end security and end-to-end privacy in the cloud, AWS builds services in accordance with security best practicesand features, and clearly documents how developers can effectively use those features. AWS customers thus takeadvantage of Amazon’s reliable and secure global computing infrastructure, which has been the backbone ofAmazon.com’s multi-billion dollar retail business for more than 15 years, at no additional cost to the customer. Formore information on AWS security, consult the Amazon Web Services: Overview of Security Processes whitepaper ataws.amazon.com/security.Overall CostAWS passes on to providers the financial benefits of operating at Amazon’s scale. In addition to server, power, andnetwork infrastructure costs, personnel costs also need to be accounted for. These include cost of the sizable ITinfrastructure teams that are needed to handle the “heavy lifting” – managing heterogeneous hardware and the relatedsupply chain, staying up-to-date on data center design, negotiating contracts, dealing with legacy software, operatingdata centers, moving facilities, scaling and managing physical growth, etc. – all the things that AWS’s services handle onbehalf of SaaS providers.SaaS Architecture on AWSSaaS architectures are often variations of the classic three-tier web application hosting model. Design priorities aretypically reliability, security, availability, performance, and cost. To illustrate best practices for deploying this model onAWS, let’s first review the traditional web hosting architecture:3

SaaS on AWSSeptember 2010Traditional Web Application Hosting ArchitectureBelow is a classic example of a scalable web hosting architecture using a traditional web hosting model:Figure 1 - A Traditional Web Application ArchitectureThis traditional web hosting architecture is built around a common three-tier web application model that separates thearchitecture into presentation, application and persistence layers. This architecture has already been designed to scaleout by adding additional hosts at the persistence or application layers and has built-in performance, failover andavailability features. The following section will look at how such architecture can be migrated in the Amazon WebServices cloud.4

SaaS on AWSSeptember 2010AWS Cloud Architecture for hosting SaaS EnvironmentsBelow is another look at that classic web application architecture that many SaaS providers are built on, but this versionleverages the AWS cloud computing infrastructure:Figure 2 - An Example of a Web Hosting Architecture on AWSKey Components of an AWS Web Hosting ArchitectureThe following sections outline some of the key components of an AWS web hosting architecture and how they differfrom a traditional web hosting architecture.Edge cachingEdge caching doesn’t differ when using the Amazon Web Service cloud computing infrastructure. Any existing solutionsin place in your web application infrastructure should work just fine with the AWS cloud. One additional option,however, is made available when using AWS, which is to utilize the AWS CloudFront service(http://aws.amazon.com/cloudfront/) for edge caching of your application assets stored in the AWS Simple StorageService (S3).5

SaaS on AWSSeptember 2010Elastic IPs and DNSMigrating a web application to the AWS cloud does require making some DNS changes. AWS provides a DNSmanagement service, called Route 53, but you will still need to request a number of Elastic IPs, which are static IPaddresses that you can dynamically assign to running EC2 instances. A new AWS account can request five (5) Elastic IPs(EIPs) to start with but more can be requested if needed. As can be seen in the AWS Web Hosting architecture (Figure2), these EIPs can be assigned to the public entry points of your web application and then you can point the DNS entriesfor your domain to these EIPs. The domain name registrar used for purchasing your public domain name should providea simple mechanism to setting this list of IPs addresses and your incoming traffic will be round-robin load-balancedacross the EIPs you register.Controlling access to hostsUnlike a traditional web hosting model, there is no border firewall thatcontrols all traffic into the data center. Instead, every EC2 host has a localfirewall that you can configure for access. This is done via SecurityGroups, which allow you to specify the protocols, ports and source IPranges that can send traffic to your EC2 hosts. Security groups can evenreference other security groups or themselves to limit access to EC2 hoststhat are in specific clusters. For example, in the example AWS webhosting architecture, the web server cluster might only allow access forany host over TCP on ports 80 and 443 (HTTP and HTTPS) and from theApplication Server security group for direct host management. TheApplication Server cluster on the other hand might allow access from theWeb Server security group for handling web requests and from yourcorporate subnet over TCP on port 22 (SSH) for direct host management.In this model, your support engineers could log directly into theapplication servers from the corporate network and then access the other clusters from the application server boxes.Load balancing across clustersA common network appliance in a traditional web hosting is a load-balancer. In the AWS cloud, however, there are nonetwork appliances, which is why the example AWS web hosting architecture has an EC2 instance running a softwareload balancer. Providers also have the option of leveraging Amazon’s Elastic Load Balancing Service, which automaticallydistributes incoming application traffic across multiple Amazon EC2 instances. It seamlessly provides the amount of loadbalancing capacity needed in response to incoming application traffic. Elastic Load Balancing detects unhealthyinstances within a pool and automatically reroutes traffic to healthy instances until the unhealthy instances have beenrestored. Customers can enable Elastic Load Balancing within a single Availability Zone or across multiple zones for evenmore consistent application performance.Alternatively, customers can deploy their own custom load-balancing solution, with many packages available to meetthis need, and many have been used in the AWS cloud. Currently, the most common solution is to use HAProxy(http://haproxy.1wt.eu/), which is free to use and provides many configuration options for web server and applicationserver load-balancing. This is a common instance type in AWS cloud architectures because the ability to spin up newhosts on demand requires a lightweight mechanism for routing traffic when hosts are dynamically being provisioned and6

SaaS on AWSSeptember 2010removed. AWS has announced future support for auto-scaling, load balancing and monitoring both individually and as asuite of services to help solve this problem in a simpler 10/using the cloud to build highl.html)Finding other hosts and servicesAnother change from the traditional web hosting architecture is that most of your hosts will have dynamic IP addresses.In fact, only those hosts in the AWS cloud with Elastic IPs (EIPs) will have predictable endpoints for networkcommunications. A simple solution to this is to centrally maintain the configuration of hosts and the required networkservice endpoints. Since most web application architectures have a database server, which is always on, this is acommon repository for configuration. Using this model newly added hosts can request the list of necessary endpointsfor communications from the database as part of a bootstrapping phase. The location of the database can be providedas user data passed into each instance as part of the data passed during the launching of the instance.Caching within the web applicationAny software-based caching solutions within your existing web application architecture need not be changed whenmoving to the AWS cloud. Simply building an EC2 instance with your caching software solutions is sufficient to enablethis in the AWS cloud. Web and application layer caching can be done in this way and the centralized configuration inthe database can help web and application servers find the appropriate caches.Database configuration, backup and failoverMany web applications contain some form of persistence and it is usually in the form of a database. AWS has supportfor a large number of database solutions, including MySQL, Oracle, SQLServer and DB2. Not only do these databasepackages run on EC2 hosts but they also have licensing solutions that support the cloud, which alleviates much of thelicensing confusion around database products. Just like in the traditional hosting model, databases solutions in thecloud should have both master and slave instances to support backup and failover. AWS customers have successfullyused a variety of master/slave and replication models on EC2 instances, including mirroring for read-only copies and logshipping for always-ready offline slaves. Often web applications have a specific databases backup and failure model thatis used and chances are that many of these can easily be replicated in the AWS cloud. As is shown in the AWS webhosting architecture, the use of multiple Availability Zones (AZs) for a second failover slave within EC2 is recommendedto maximize availability of the database. Using a second availability zone is exactly like having a back-up datacentersince each AZ is entirely separated to ensure maximum availability. An additional consideration when running databaseson EC2 is the availability of fault-tolerant and persistent disks. For this purpose, it is recommended that databasesrunning on AWS EC2 utilize Elastic Block Storage (EBS) volumes, which are akin to network attached storage for runningEC2 instances. For EC2 instances running a database, all database data, logs and temp storage should be placed on EBSvolumes, which will remain available even if the database host fails. This allows for a simple failover scenario where anew EC2 instance can be launched in the case of a host failure and the existing EBS volumes can simply be attached tothe new instance to allow the database to pick up where it left off. EBS volumes automatically provide basic mirroring,which increases their availability over simple disks. It is also recommended to stripe EBS volumes to increase IOPSperformance for your database hosts.Since the database layer represents a stable and always-on component in the web architecture, it can also be used forstoring and managing the configuration of the AWS web architecture. Within the AWS cloud, hosts and services can bebrought up and down on-demand and the exact network addresses are not known prior to launch, which requires thathosts relying on cross-host communications need to have a configuration service from which to draw theirconfigurations.7

SaaS on AWSSeptember 2010Amazon also offers a Relational Database Service (Amazon RDS), that makes it easy to set up, operate, and scale arelational database in the cloud (http://aws.amazon.com/rds/). It provides c

Software- as- a- Service (SaaS) on AWS Business and Architecture Overview SaaS and AWS Introduction Software- as- a –Service (SaaS) is an application delivery model that enables users to utilize a software solution over the Internet. SaaS revenue models are typically subscription base

Related Documents:

Three SaaS Sales Models Price and complexity define a strategic spectrum of sales approaches for SaaS startups that gravitate strongly toward three distinct SaaS sales models: self-service, transactional and enterprise. While a mature SaaS business may employ all three, a SaaS startup will have the resources to master only one.

SaaS Sales Revenue Plan/Budget Excel Template User Guide Three year sales plan/budget for SaaS based business The SaaS Subscription 3-year revenue plan allows you to develop a monthly sales revenue plan for up to three years for a SaaS subscription-based business. The SaaS

A Green Field SaaS implementation is comparatively simple and pretty straight forward as it requires subscribing a new tenant or organization in SaaS application setup. SaaS Meta data driven reference data model can support "N "number of tenants connected to a single SaaS application environment. Existing application migration into SaaS :

The term "SaaS Agreement" includes this SaaS Agreement and the SaaS Subscription Order Form ("SaaS Order Form") found herein as Appendix 1, and any other document which is incorporated herein by reference. In case of conflicting terms, the following order of precedence shall apply: (i) the terms of the SaaS Agreement (ii) The SaaS .

PaaS VS SaaS PaaS is best for companies looking to custom build a solution. SaaS is best for companies looking for an out-of-the-box ease of use. 2.2 Software as a Service (SaaS) Software as a Service (SaaS) solutions are standard, production-ready so

SaaS: Software as a Service SaaS is a model of software deployment where an application is hosted as a service provided to customers across the Internet. SaaS is generally used to refer to business software rather than consumer software, falls under Web 2.0! By removing the need to install and run an application on a

While the value of SaaS is well understood, the journey to a SaaS delivery model can have a large impact on a business. For many, the move to SaaS represents a significant transformational event that requires companies to examine all the moving parts of their business. SaaS often touches every aspect of a business.

with ASTM D2310, D2992 and D2996. Fittings meeting ASTM D6041 are available upon request. · NATIONAL SANITATION FOUNDATION (NSF) Can be Manufactured to meet ANSI/NSF Standard No. 61 for potable water usage. F-CHEM Piping Systems Smith Fibercast is a World Leader in Composite Piping featuring ISO 9001: 2000 quality assurance at both production facilities. 60-inch cooling water recirculation .