|By Jason Bloomberg||
|September 30, 2012 09:00 AM EDT||
You're the widget product manager for Widgetco, who sells about 500 widgets per day on your Web site, some days a dozen more, some days a dozen less. Everything is fine until you pick up a copy of USA Today. Right there on the front page, in brilliant color-on-newsprint, is Justin Bieber. And what is the Biebster holding in his hand? One of your widgets.
Dream scenario? No, you think, more like nightmare scenario. Widgetco hosts its Web site in its own data center, as it has done since 1997. It can take maybe, say, a thousand or two transactions per day at most. But sure enough, Bieber Fever crashes your site, on the one day you could make your entire quarterly sales quota, if only you could fulfill the demand.
You should have listened to your CIO, who recommended Cloudbursting as a way of dealing with unexpected spikes in demand. Cloudbursting is being able to maintain on-premise or Private Cloud capacity for normal capacity requirements, while a Public Cloud automatically handles excess demand. Cloudbursting is supposed to be an economical way of leveraging the Public Cloud, because you only pay the Cloud provider when you require excess capacity. On normal days, however, your existing, already-paid-for infrastructure handles the load quite well.
A straightforward value proposition, right? Any on-premise or Private Cloud-based app that is subject to spikes in demand that existing infrastructure can't handle should be able to benefit, so the argument goes. Unfortunately, however, Cloudbursting has a number of problems, making it challenging for even the most suitable scenarios-and furthermore, such scenarios are rarer than you think. Bottom line: Cloudbursting is mostly marketing vaporware, and even as the Cloud marketplace matures, may only be of limited applicability.
A Closer Look at Cloudbursting
Cloudbursting depends upon workload migration: when your on-premise system bogs down, you must move your entire application to the Cloud-data, business logic, and user interface. Over an Internet connection to the Cloud. Even the most basic workloads might take hours to migrate, and in the meantime, your customers are left out in the cold.
The obvious way to mitigate the workload migration problem is to set up a copy of your application environment in the Cloud ahead of time. That way when the Bieber effect kicks in, all you need to do is fire up the Cloud copy and reconfigure your DNS to direct traffic to it, right?
Not so fast. First you'll need to synchronize your data. There are tools for that, true, but it still takes time, and you now have the challenge of maintaining the true version of the data. For example, let's say you have 5,000 widgets in inventory (as reported by your ERP application) when your site goes down. You can't migrate the whole ERP to the Cloud, so you copy over your master inventory table. Now you're fulfilling orders in the Cloud as well as on-premise, since your on-premise site has recovered now that you've lightened its load. The result? Each site sells 3,000 widgets before the next data synchronization cycle, and once again you're in trouble.
OK, so that won't work either. Instead, you integrate the Cloud app with your ERP system, so that you can handle orders in real time, instead of waiting to synchronize your data. In other words, you set up a Hybrid Cloud. Yes, you can do that-after all, many organizations are moving to Hybrid Cloud models-but then you ask yourself: does it really make sense to put in all the time and effort to set up a Hybrid Cloud solely for handling Cloudbursting? If you're going to all that trouble, why not keep the Cloud-based app live all the time?
There's the rub with Cloudbursting: you might think you're saving money by only using a Public Cloud for handling peak demand, but in reality, you get better Total Cost of Ownership by using the Cloud all the time, either via a Hybrid model, or by migrating your entire app to the Cloud. The Hybrid model provides additional benefits as well, namely a measure of failover, increasing your overall availability. It's always better to have two (or more) geographically distributed instances of an app serving your customers, in case something happens to one of them. And if you want to offer seamless availability, you should have all the instances running at once, with a load balancer distributing the traffic. Chances are, you can get load balancing from the Cloud provider as well.
So you've convinced your CIO that Cloudbursting might not be the best alternative. Instead, you're discussing moving your entire site to the Cloud when your CEO walks into the room. Her concern is for compliance and security. You're taking customer credit card numbers, so you must be PCI compliant. And everybody knows Public Clouds are less secure than Private ones, right?
The problem here is that if these concerns are valid then they rule out Cloudbursting as well. Being PCI compliant except during peak demand is just another way of saying you're not PCI compliant. On the other hand, if your Public Cloud provider offers PCI compliance, then it would apply equally well to Cloudbursting as to a Hybrid approach or migrating to the Public Cloud. The same argument applies to security concerns.
There are a few more pitfalls to Cloudbursting worth mentioning. If you're thinking of putting your app in a Private Cloud and using a Public Cloud for Cloudbursting, then what you're really saying is that you didn't plan your Private Cloud properly in the first place. After all, what's the point in setting up a Private Cloud unless it can provide sufficient elasticity to meet your needs? You might as well just stick to a traditional on-premise hosted environment.
You also need to work through the details of the Cloudbursting event itself. Does your on-premise app need to fail for Cloudbursting to take place, or do you have a way of bursting as your existing app nears a critical threshold, but before it actually goes down? The latter requires careful management, and even with all the appropriate management tools in place, you may still have a failure-based scenario. The question then is whether the on-premise failure will impede your ability to successfully Cloudburst. For example, if the Bieber effect causes your database server to crash requiring a reboot, you may not be able to synchronize your data in order to begin the Cloudbursting. In other words, you've designed your Cloudbursting to fail just when you need it.
The ZapThink Take
Let's say you've made it to this point in this ZapFlash and you're still not convinced. You remain confident that Cloudbursting is practical in your situation. OK, then, what kind of situations might be appropriate for Cloudbursting?
Our Widgetco example required some legacy integration, which obviously complicates Cloudbursting enormously. Cloudbursting would clearly be more suitable for standalone applications that didn't require such integration. But on the other hand, you would only need Cloudbursting if you have an app that is susceptible to spikes in demand-and virtually all such apps have public-facing Web interfaces. And thirdly, Cloudbursting would clearly not be appropriate for any app that should obviously be entirely Cloud-based from the get go, namely a SaaS or PaaS app.
We've essentially crossed off every kind of application from the list. Any sort of app that processes customer transactions is out of consideration, because they either require legacy integration or should run as SaaS apps in order to process transactions in the Cloud. All that remain are free, public-facing Web applications that have unpredictable traffic patterns and yet have an on-premise component that you don't want to move to the Cloud. You have one minute to think of one. Ready? Go!
Image credit: oskaree
SYS-CON Events announced today that eCube Systems, a leading provider of middleware modernization, integration, and management solutions, will exhibit at @DevOpsSummit at 19th International Cloud Expo, which will take place on November 1–3, 2016, at the Santa Clara Convention Center in Santa Clara, CA. eCube Systems offers a family of middleware evolution products and services that maximize return on technology investment by leveraging existing technical equity to meet evolving business needs. ...
Aug. 30, 2016 09:45 AM EDT Reads: 879
Let's just nip the conflation of these terms in the bud, shall we?
"MIcro" is big these days. Both microservices and microsegmentation are having and will continue to have an impact on data center architecture, but not necessarily for the same reasons. There's a growing trend in which folks - particularly those with a network background - conflate the two and use them to mean the same thing.
They are not.
One is about the application. The other, the network. T...
Aug. 30, 2016 09:45 AM EDT Reads: 4,755
[session] Architecting for the Cloud By @RagsS | @CloudExpo @IBMBluemix #Cloud #Docker #Microservices
As the world moves toward more DevOps and Microservices, application deployment to the cloud ought to become a lot simpler. The Microservices architecture, which is the basis of many new age distributed systems such as OpenStack, NetFlix and so on, is at the heart of Cloud Foundry - a complete developer-oriented Platform as a Service (PaaS) that is IaaS agnostic and supports vCloud, OpenStack and AWS. Serverless computing is revolutionizing computing. In his session at 19th Cloud Expo, Raghav...
Aug. 30, 2016 09:45 AM EDT Reads: 1,057
The following fictional case study is a composite of actual horror stories I’ve heard over the years. Unfortunately, this scenario often occurs when in-house integration teams take on the complexities of DevOps and ALM integration with an enterprise service bus (ESB) or custom integration. It is written from the perspective of an enterprise architect tasked with leading an organization’s effort to adopt Agile to become more competitive. The company has turned to Scaled Agile Framework (SAFe) as ...
Aug. 30, 2016 09:30 AM EDT Reads: 984
If you are within a stones throw of the DevOps marketplace you have undoubtably noticed the growing trend in Microservices. Whether you have been staying up to date with the latest articles and blogs or you just read the definition for the first time, these 5 Microservices Resources You Need In Your Life will guide you through the ins and outs of Microservices in today’s world.
Aug. 30, 2016 08:45 AM EDT Reads: 5,235
This is a no-hype, pragmatic post about why I think you should consider architecting your next project the way SOA and/or microservices suggest. No matter if it’s a greenfield approach or if you’re in dire need of refactoring. Please note: considering still keeps open the option of not taking that approach. After reading this, you will have a better idea about whether building multiple small components instead of a single, large component makes sense for your project. This post assumes that you...
Aug. 30, 2016 08:30 AM EDT Reads: 5,321
This complete kit provides a proven process and customizable documents that will help you evaluate rapid application delivery platforms and select the ideal partner for building mobile and web apps for your organization.
Aug. 30, 2016 07:00 AM EDT Reads: 3,085
Monitoring of Docker environments is challenging. Why? Because each container typically runs a single process, has its own environment, utilizes virtual networks, or has various methods of managing storage. Traditional monitoring solutions take metrics from each server and applications they run. These servers and applications running on them are typically very static, with very long uptimes. Docker deployments are different: a set of containers may run many applications, all sharing the resource...
Aug. 30, 2016 06:00 AM EDT Reads: 2,126
SYS-CON Events announced today that Isomorphic Software will exhibit at DevOps Summit at 19th International Cloud Expo, which will take place on November 1–3, 2016, at the Santa Clara Convention Center in Santa Clara, CA. Isomorphic Software provides the SmartClient HTML5/AJAX platform, the most advanced technology for building rich, cutting-edge enterprise web applications for desktop and mobile. SmartClient combines the productivity and performance of traditional desktop software with the simp...
Aug. 30, 2016 05:45 AM EDT Reads: 2,479
Sharding has become a popular means of achieving scalability in application architectures in which read/write data separation is not only possible, but desirable to achieve new heights of concurrency. The premise is that by splitting up read and write duties, it is possible to get better overall performance at the cost of a slight delay in consistency. That is, it takes a bit of time to replicate changes initiated by a "write" to the read-only master database. It's eventually consistent, and it'...
Aug. 30, 2016 05:30 AM EDT Reads: 3,253
With so much going on in this space you could be forgiven for thinking you were always working with yesterday’s technologies. So much change, so quickly. What do you do if you have to build a solution from the ground up that is expected to live in the field for at least 5-10 years? This is the challenge we faced when we looked to refresh our existing 10-year-old custom hardware stack to measure the fullness of trash cans and compactors.
Aug. 30, 2016 02:30 AM EDT Reads: 1,867
The emerging Internet of Everything creates tremendous new opportunities for customer engagement and business model innovation. However, enterprises must overcome a number of critical challenges to bring these new solutions to market. In his session at @ThingsExpo, Michael Martin, CTO/CIO at nfrastructure, outlined these key challenges and recommended approaches for overcoming them to achieve speed and agility in the design, development and implementation of Internet of Everything solutions wi...
Aug. 30, 2016 02:00 AM EDT Reads: 2,252
A company’s collection of online systems is like a delicate ecosystem – all components must integrate with and complement each other, and one single malfunction in any of them can bring the entire system to a screeching halt. That’s why, when monitoring and analyzing the health of your online systems, you need a broad arsenal of different tools for your different needs. In addition to a wide-angle lens that provides a snapshot of the overall health of your system, you must also have precise, ...
Aug. 30, 2016 01:45 AM EDT Reads: 1,715
It's been a busy time for tech's ongoing infatuation with containers. Amazon just announced EC2 Container Registry to simply container management. The new Azure container service taps into Microsoft's partnership with Docker and Mesosphere. You know when there's a standard for containers on the table there's money on the table, too. Everyone is talking containers because they reduce a ton of development-related challenges and make it much easier to move across production and testing environm...
Aug. 29, 2016 11:45 PM EDT Reads: 5,282
Aug. 29, 2016 10:45 PM EDT Reads: 4,921
DevOps at Cloud Expo, taking place Nov 1-3, 2016, at the Santa Clara Convention Center in Santa Clara, CA, is co-located with 19th Cloud Expo and will feature technical sessions from a rock star conference faculty and the leading industry players in the world. The widespread success of cloud computing is driving the DevOps revolution in enterprise IT. Now as never before, development teams must communicate and collaborate in a dynamic, 24/7/365 environment. There is no time to wait for long dev...
Aug. 29, 2016 10:00 PM EDT Reads: 2,502
There's a lot of things we do to improve the performance of web and mobile applications. We use caching. We use compression. We offload security (SSL and TLS) to a proxy with greater compute capacity. We apply image optimization and minification to content. We do all that because performance is king. Failure to perform can be, for many businesses, equivalent to an outage with increased abandonment rates and angry customers taking to the Internet to express their extreme displeasure.
Aug. 29, 2016 08:30 PM EDT Reads: 2,456
Right off the bat, Newman advises that we should "think of microservices as a specific approach for SOA in the same way that XP or Scrum are specific approaches for Agile Software development". These analogies are very interesting because my expectation was that microservices is a pattern. So I might infer that microservices is a set of process techniques as opposed to an architectural approach. Yet in the book, Newman clearly includes some elements of concept model and architecture as well as p...
Aug. 29, 2016 07:30 PM EDT Reads: 10,908
SYS-CON Events announced today that 910Telecom will exhibit at the 19th International Cloud Expo, which will take place on November 1–3, 2016, at the Santa Clara Convention Center in Santa Clara, CA. Housed in the classic Denver Gas & Electric Building, 910 15th St., 910Telecom is a carrier-neutral telecom hotel located in the heart of Denver. Adjacent to CenturyLink, AT&T, and Denver Main, 910Telecom offers connectivity to all major carriers, Internet service providers, Internet backbones and ...
Aug. 29, 2016 07:00 PM EDT Reads: 1,996
DevOps at Cloud Expo – being held November 1-3, 2016, at the Santa Clara Convention Center in Santa Clara, CA – announces that its Call for Papers is open. Born out of proven success in agile development, cloud computing, and process automation, DevOps is a macro trend you cannot afford to miss. From showcase success stories from early adopters and web-scale businesses, DevOps is expanding to organizations of all sizes, including the world's largest enterprises – and delivering real results. Am...
Aug. 29, 2016 04:30 PM EDT Reads: 3,580