Standing Cloud's CEO Discusses What's In His Cloud Stack

by Sam Dean - Apr. 20, 2011Comments (0)

Recently, in conjunction with the rise of cloud computing, OStatic has been doing an interview series focused on the components in cloud software stacks, and how they create unique advantages. Recently, we discussed the cloud stack at myClin, which offers cloud resources that make it easier for physicians and their staffs to participate in clincal trials. Also recently, Hanspeter Christ, Deputy Process Manager of the Federal Spatial Data Infrastructure (FSDI) for Swisstopo--Switzerland's federal office of topography--caught up with us to discuss Swisstopo's cloud stack. The series began with our conversation with PHP Fog founder Lucas Carlson, where he provided many insights into a smart cloud stack.

For our latest installment in the series, we checked in with David J. Jilk, CEO of Standing Cloud (shown), which provides platform-as-a-service (PaaS) technology that enables cloud users to deploy, manage, customize and/or develop packaged or custom applications in a variety of languages. The service supports PHP, Java, Ruby on Rails, and Python, as well as about 80 complete open source applications that can quickly be deployed by end users. Standing Cloud is backed by Foundry Group and Avalon Ventures, and our Q&A with David Jilk follows here:

What kinds of cloud/SaaS/PaaS offerings does your company deploy?

Most SaaS and PaaS offerings provide only a single application or platform on a single cloud service (usually Amazon). Standing Cloud offers about 80 different applications that can be deployed as “distributed SaaS,” and several different language technologies deployable as a PaaS environment - and all of it runs on a variety of public cloud services. If you are a customer of one of those other cloud services - for example, Rackspace, SoftLayer, GoGrid, or Linode - you don’t have to change providers to make use of these application layer capabilities.

More specifically, we support Java, PHP, Rails, and Python development platforms, and we have the community editions of all the popular open source applications including Drupal, WordPress, Joomla, SugarCRM, vTiger, OpenBravo, Magento, and many others.

How does your platform work with other cloud tools?


I’ll start by giving you an indirect answer. We primarily work with open source and standard technologies, and most of our applications are open source. Furthermore, unlike most PaaS and SaaS offerings, Standing Cloud allows access to lower layers of the stack. So if you have deployed SaaS, and you need to get down to the PaaS layer (e.g., for customizing the application), you can do that. And if you’re using it for application development as PaaS, and you have a special need at the infrastructure layer, you can get root access and modify the system.

In that context, the direct answer is that most cloud tools and services can be accommodated in one way or another. Monitoring tools, no problem - for example, it works great with CloudKick. Email delivery services like SendGrid are also fine. Access to other applications or web services works great. The only question is how easy it is to connect: some capabilities we have built into Standing Cloud or fit naturally, others you need to set up manually. We continue to work toward automating the most popular tools.

What other specific technologies, including any open source tech, do you use within your platform?

Not surprisingly, we use a lot of different technologies in the Standing Cloud platform. Although we have a significant amount of proprietary code and scripts, we’ve generally selected standard or open source components where they fit. Our core system is built in Java, and it relies on several open source technologies including Struts, JQuery, JPBM (Java Business Process Manager), JBoss, and MySQL. The language platforms we support are all open source today, and we will be adding support for proprietary technology stack components soon. We deploy servers from the most standard, bare-bones Linux distributions available on each cloud service, and then our system configures everything. A part of the value that we add is that open source is great once it is running, but it’s not always easy to install, configure, and integrate with other tools. We handle all of that at both the platform and application layers, and we do it in a way that provides for one-click portability to another server, a shared server, or even another cloud service.

How do you plan to extend your cloud platform over time?

There are three main areas we are working on today. First, greater scalability. Today, you can scale from a cloud server hosting multiple deployments of an application, to a full server for that application, to increasing the size of the server up to the maximum. Very soon you will be able to separate the database and application servers, and from there you will be able to scale the application servers horizontally in a load-balanced configuration. This will require virtually no effort on the part of the developer/user - it will be automated. This is DevOps the way it ought to be.

Second, a greater variety of choices and flexibility in the technology stack selection. Today, you pick a stack (e.g., “Just LAMP”) and you have to use the version and components we have configured. In the future, you will be able to substitute the nginx web server for Apache or the Postgres database for MySQL. We are also working on commercial options like Oracle or DB2 for the database or Weblogic/WebSphere for the application server. And for environments like Rails where there are frequent upgrades, we will be working harder to keep up with the versions.

Finally, we will continue to grow the base of cloud services we support. Many companies give this lip service, but only we have taken it seriously. We support eight public cloud services today, some in multiple data centers, and you will see a few more in the next month. Part of our proprietary technology is the code and architecture we use for deploying to a new cloud service.  If their API works properly, it only takes us a day or two to make that connection and then another day or two to adapt our scripts to handle their boot images. Once we get that running, everything else just works. Our objective is to make PaaS and APaaS available everywhere, not just on Amazon.

What kinds of efficiencies do particular parts of your cloud stack offer?

As with any PaaS, the efficiency gains are in two areas: productivity and performance. Standing Cloud increases developer productivity, because for many developers, doing system administration is unpleasant, time-consuming, and error prone. We automate system administration and turn devops into something developers can do with a few clicks, instead of using Google to figure out Linux command options and then hoping for the best. We improve performance for similar reasons: setting up an efficient deployment configuration requires system administration knowledge. We deploy our applications and technologies with best practices, for both performance and security. These practices are parameterized, so that, for example, when we set up memory parameters we know the RAM size of the server and the memory requirements of the application.

What management tools does your platform include?

We provide 24x7 monitoring of all applications. Depending on the user’s settings, when we detect that an application is down or running slowly, we will either notify the user, or automatically restart the application on a new server, using a recent backup.  We automatically back up applications as frequently as every hour, and users have access to a recent history of backups. Using our test drive capability, you can restore a backup to a new server with a couple of clicks - not only to rest easy that backups are working properly, but also to try an application upgrade or other change to see whether it works properly before doing it on your production server. With some applications, you can upgrade the version with a single click. We provide several ways to modify the application deployment, including code synchronization with Git, Subversion, and CVS, FTP for those accustomed to shared hosting, and an easy file upload capability for plugins and themes. With a few clicks you can scale up or down to a different server size. We even give you a browser based terminal window so that if you need to get to the command line, you don’t have to remember passwords or manage key files.



Mark Hinkle uses OStatic to support Open Source, ask and answer questions and stay informed. What about you?




Comments

image
Share Your Comments

If you are a member, to have your comment attributed to you. If you are not yet a member, Join OStatic and help the Open Source community by sharing your thoughts, answering user questions and providing reviews and alternatives for projects.


Promote Open Source Knowledge by sharing your thoughts, listing Alternatives and Answering Questions!