Cloudy Apps: New Challenges And Complexities

Cloudy Apps

New technologies often simplify some aspect of life, an aspect which was previously painful. But then, as soon as it is adopted, a technology presents new challenges and new complexities.

With cloud computing, you can get a new machine in minutes—less than a minute, in fact, with some of the leading systems. Alternatively, you can provision a new virtual datacenter with secure VLAN and as much storage and “core-age” as you need. Once this is done, the problem of manually sourcing an environment for your application goes away, as it becomes increasingly easy to source one automatically.

With applications, however, there is a new challenge: their environment has to be managed. In the world of cloud, an application is expected to be able to flex when load increases, contract in quiet periods, and generally be efficient about how it’s consuming resources, and do so dynamically. Furthermore, this is not just the case in one site, because if it’s serving users globally, or operating on data-sets in different geographies, it needs to span across sites, adding and removing regions depending on demand, cost or compliance.

The consequence for architects and developers is that an application is no longer just its business logic; it has to carry with its operational logic.

– When should it change the resources it is using?
– How does it safely give up resources, and efficiently “on-board” new ones?
– Where are these policies expressed?

The only sane answer to the last question is that orchestration policies need to be part and parcel of the application. If an application doesn’t describe its deployment and its management—the operational logic—alongside its presentation tiers and its business logic, it is already legacy, and it will bring more complexity over time, not less. On the other hand, if the application embraces its fate, taking responsibility for its runtime lifecycle at dev-time, these operational challenges are addressed in a way app teams know well: by writing it as code—as part of the application—it can be tested, tracked in version control and reused. Continuous integration and testing applies to cloud complexity just as much as to other facets of application development.

There are a number of ways this can be done, with the most exciting activity occurring in the open-source world. Deployment frameworks, such as Puppet and Whirr, can ensure machine portability. Provisioning libraries, such as jclouds, can ensure cloud portability. PaaS offerings, including OpenShift and Cloud Foundry, can ensure application portability, and integrated deployment and management tools such as Brooklyn ensure policy portability.

For green-field applications, these tools—and an approach which treats deployment and ongoing management as core parts of development—give engineers what they need to tackle these challenges.

They enable complexity to be delegated to a PaaS or middleware for those components where it’s appropriate, and for the unavoidable complexity to be managed in other cases, where custom analytics or I/O is essential, or where we are faced with the wide-area realities of replication, consistency, bandwidth and security. By tying in with these open-source projects, application teams benefit from the best practices created by experts without being locked in to proprietary ways of running or managing.

For legacy applications, of course, it might not be practical to transition to new runtimes. However, many of these tools can still facilitate cloud-readiness. By adding a layer of operational logic to the application without touching existing code or business logic, deployment to cloud can be automated, and management introduced, with minimal risk. Eventually, re-architecting may make even better use of the cloud, but the benefits of a lightweight wrapper are significant, bringing at least the orchestration of legacy applications in line with post-cloud application development.

Coming back to our premise, if these tools solve current emerging complexities, it is inevitable that they will soon introduce new complexities. What will these be? Based on our experience, there are a few:  but they’re healthy complexities!

Firstly, the policies become a source of complexity: we recommend keeping them as simple as possible and composing them. But we in the cloud industry (née software industry) are still figuring out best practices.  Open-source policy frameworks are a great place for these conversations to happen. Secondly, everyone in the DevOps chain has to work together to make sure the policies are right for the app and right for the business. In some organizations this can be a challenge, but the rise of DevOps, more agile practices, and testable deployment are helping to ensure that the most valuable resource—people’s time—is spent as productively as possible.

By Alex Heneveld, CTO, Cloudsoft

About CloudTweaks

Established in 2009, CloudTweaks is recognized as one of the leading authorities in connected technology information and services.

We embrace and instill thought leadership insights, relevant and timely news related stories, unbiased benchmark reporting as well as offer green/cleantech learning and consultive services around the world.

Our vision is to create awareness and to help find innovative ways to connect our planet in a positive eco-friendly manner.

In the meantime, you may connect with CloudTweaks by following and sharing our resources.

View All Articles

Sorry, comments are closed for this post.

Comics
Lavabit, Edward Snowden and the Legal Battle For Privacy

Lavabit, Edward Snowden and the Legal Battle For Privacy

The Legal Battle For Privacy In early June 2013, Edward Snowden made headlines around the world when he leaked information about the National Security Agency (NSA) collecting the phone records of tens of millions of Americans. It was a dramatic story. Snowden flew to Hong Kong and then Russia to avoid deportation to the US,…

Achieving Network Security In The IoT

Achieving Network Security In The IoT

Security In The IoT The network security market is experiencing a pressing and transformative change, especially around access control and orchestration. Although it has been mature for decades, the network security market had to transform rapidly with the advent of the BYOD trend and emergence of the cloud, which swept enterprises a few years ago.…

Disaster Recovery – A Thing Of The Past!

Disaster Recovery – A Thing Of The Past!

Disaster Recovery  Ok, ok – I understand most of you are saying disaster recovery (DR) is still a critical aspect of running any type of operations. After all – we need to secure our future operations in case of disaster. Sure – that is still the case but things are changing – fast. There are…

Three Factors For Choosing Your Long-term Cloud Strategy

Three Factors For Choosing Your Long-term Cloud Strategy

Choosing Your Long-term Cloud Strategy A few weeks ago I visited the global headquarters of a large multi-national company to discuss cloud strategy with the CIO. I arrived 30 minutes early and took a tour of the area where the marketing team showcased their award winning brands. I was impressed by the digital marketing strategy…

Having Your Cybersecurity And Eating It Too

Having Your Cybersecurity And Eating It Too

The Catch 22 The very same year Marc Andreessen famously said that software was eating the world, the Chief Information Officer of the United States was announcing a major Cloud First goal. That was 2011. Five years later, as both the private and public sectors continue to adopt cloud-based software services, we’re interested in this…

Cloud Security Risks: The Top 8 According To ENISA

Cloud Security Risks: The Top 8 According To ENISA

Cloud Security Risks Does cloud security risks ever bother you? It would be weird if it didn’t. Cloud computing has a lot of benefits, but also a lot of risks if done in the wrong way. So what are the most important risks? The European Network Information Security Agency did extensive research on that, and…

The Fully Aware, Hybrid-Cloud Approach

The Fully Aware, Hybrid-Cloud Approach

Hybrid-Cloud Approach For over 20 years, organizations have been attempting to secure their networks and protect their data. However, have any of their efforts really improved security? Today we hear journalists and industry experts talk about the erosion of the perimeter. Some say it’s squishy, others say it’s spongy, and yet another claims it crunchy.…

The Cancer Moonshot: Collaboration Is Key

The Cancer Moonshot: Collaboration Is Key

Cancer Moonshot In his final State of the Union address in January 2016, President Obama announced a new American “moonshot” effort: finding a cure for cancer. The term “moonshot” comes from one of America’s greatest achievements, the moon landing. If the scientific community can achieve that kind of feat, then surely it can rally around…

5 Things To Consider About Your Next Enterprise Sharing Solution

5 Things To Consider About Your Next Enterprise Sharing Solution

Enterprise File Sharing Solution Businesses have varying file sharing needs. Large, multi-regional businesses need to synchronize folders across a large number of sites, whereas small businesses may only need to support a handful of users in a single site. Construction or advertising firms require sharing and collaboration with very large (several Gigabytes) files. Financial services…