2014-03-26



It's probably safe to say that most users of cloud-hosted applications don't fully appreciate the staggering complexity of the underlying architecture and infrastructure required to host a reliable, secure and scalable cloud application.

It's equally safe to say that most IT managers, CIOs, devops, sysadmins, and developers that deliver cloud applications do appreciate this complexity, and that they're painfully aware of the massive investment required to develop, deliver, host, secure, and maintain apps in the cloud.

Network configuration, storage, virtualization, resource management, service accessibility, autoscaling, identity management, high-availability zones, compliance, SLAs, object storage, languages and frameworks, tooling, security logging, monitoring, the list goes on and on and on. It's really rather daunting, and frankly it's a wonder anything gets deployed at all.

The Workload Challenge

In addition to the general complexities listed above, each enterprise application has its own workloads and requirements and it's up to the PaaS and the IaaS to accommodate these. Example workloads include:

Legacy Applications

Web applications

Gaming

Mobile

Big Data / Analytics

HPC

Devices / M2M

The complexity of the infrastructure and application workload requirements comes at tremendous cost and because of this many organizations choose to deploy to a public cloud infrastructure like AWS. But what about those organizations that are unwilling, or unable, to move their entire operation, including potentially sensitive data, to the public cloud? These organizations need the same cloud features like measurable, on-demand, scalable, self-service infrastructure, but they need these features on-premise, behind the firewall, and thus are forced to invest heavily to coordinate and orchestrate all the moving parts.

At least, that used to be the case. Now there's a better way, using powerful technologies like private Platform as a Service like Stackato, and private cloud Infrastructure orchestration systems like Citrix CloudPlatform. These products are powerful in and of themselves, but together they offer a powerful and formidable foundation that dramatically improve the private cloud experience. We'll take a look at both of these platforms and how they interact with each other below.

Citrix CloudPlatform

Citrix CloudPlatform is geared towards the infrastructure, or IaaS, layer, and provides powerful capabilities that ease network storage, service, and virtualization configuration. CloudPlatform, based on the highly regarded Apache CloudStack, has been designed to ease the migration of many application workloads to the cloud.

At the CloudStack conference I attended last year, I was quite impressed by the professionalism and enthusiasm of the CloudStack community. The many comments I heard all touted CloudStack as:

easy to install, configure, and manage

mature and industry-ready

well supported and well documented

widely adopted and accepted internationally

flexible and adaptable, with a well-designed plugin architecture

Citrix CloudPlatform stands on the shoulders of CloudStack, and thus has the same foundation and benefits while also providing significant enhancements. These enhancements streamline the deployment of multiple application workloads to the cloud, including desktop and legacy enterprise applications.

Stackato by ActiveState

Stackato, the private Platform as a Service from ActiveState, is geared more towards the developer platform, or PaaS, layer, targeted at higher-level orchestration of services, languages, frameworks, logging, monitoring, and other cloud application integration tasks.

Stackato and CloudPlatform really do go hand in hand. While Stackato is designed to work seamlessly across all infrastructures including CloudPlatform, CloudStack, OpenStack, vSphere, and more, it also has additional dedicated integration with CloudPlatform that raises its capabilities.

We'll look at one such integration here: autoscaling.

Elastic Scaling on Stackato and CloudPlatform

Autoscaling, also known as elastic scaling in AWS circles, is a fundamental capability promised by the cloud. In a nutshell, "scaling" refers to the capability of a system to adjust resources in response to application load and demand. And the "auto" part implies the scaling occurs automatically without human intervention. This is one way that the "on-demand" promise of the cloud is delivered.

Stackato has long supported autoscaling on OpenStack and vSphere. ActiveState is excited to announce that our new autoscaling plugin for CloudPlatform has now been fully implemented. Autoscaling is now supported on all of the major infrastructures including CloudPlatform, CloudStack, OpenStack, and vSphere. When this plugin is enabled, Stackato will dynamically adjust the number of running applications in response to the load on the applications, and application performance.

To accomplish this feat, Stackato monitors the memory consumption of the DEA nodes that comprise the Stackato cluster. When total memory usage drops below a configurable threshold, Stackato calls down to the infrastructure layer (CloudPlatform in this case) requesting that new resources be added to the mix. In this context, the resources are in the form of virtual machines which, when added, allow new application instances to be automatically provisioned, resulting in improved application response.

Stackato integrates with CloudPlatform through CloudPlatform's REST API. Exposing a REST endpoint is a common pattern with cloud services these days. Stackato and CloudPlatform each expose their own REST API, allowing powerful and flexible management and control of the systems.

According to the Stackato engineers who implemented autoscaling, the CloudStack platform has a fairly simple API and web UI that is straight forward to use. This resonates with the comments from the CloudStack conference mentioned above.

There are many other ways that Stackato and CloudPlatform integrate with each other to provide a rock-solid foundation for enterprise applications. By using these tools together, the many complexities involved in delivering cloud applications on a private cloud are significantly reduced.

Summary

The Citrix CloudPlatform orchestration platform provides an abstraction over the IaaS layer and greatly simplifies the work involved in dealing with the network, storage, VMs, and overall resource management.

The Stackato private Platform-as-a-Service is an additional abstraction layer that takes care of the underlying complexities of log aggregation, identity management, monitoring and health management, language, framework and runtime delivery, service provisioning and credential management, and much more.

Together, Stackato and CloudPlatform are a formidable combination that drastically reduce the costs and time to deploy reliable, scalable, and above all, successful, applications to the private cloud.

Whether your organization has already moved to the cloud, or are currently considering such a move, we recommend you evaluate the potent combination of Stackato on CloudPlatform.

Learn more

"Citrix CloudPlatform 4.3 is Now Generally Available" - http://blogs.citrix.com/?p=174201699

"Accelerate and Extend Cloud Adoption with Citrix CloudPlatform 4.3 and Citrix Cloud Ecosystem Partner Solutions", by Geralyn Miller, Alliance Marketing, Citrix - http://blogs.citrix.com/2014/03/26/extending-cloudplatform/

Stackato by ActiveState - http://www.activestate.com/stackato

Citrix CloudPlatform - http://citrix.com/cloudplatform

Image courtesy of pedromourapinheiro@flickr under Creative Commons License

Show more