How we deployed to IBM Bluemix in less than 12 hours

Bluemix is the Heroku of IBM. It has been built on Cloud Foundry and runs on top of Softlayer. Many of the world's well-known and successful applications and services have been built on SoftLayer. We were first introduced to IBM Bluemix in July last year. At the time it was still going through beta and coincided with the increasing market traction of Softlayer, which was acquired by IBM last year. We were intrigued but also excited about the possibility of a new channel for Bugwolf.
IBM.jpeg

Contact Us We cut software testing from weeks to days. Let’s talk for 15 minutes to see if we can accelerate your digital delivery too. Schedule a call with our CEO Ash Conway.

Upon making contact with some “in-the-know” IBM executives, they quickly explained the value proposition of Bluemix. We were sold. Within 12 hours we had a version of Bugwolf running on IBM Bluemix. We did this with lightning speed and gained valuable lessons along the way.

Having gone through the process, we wanted to share a couple of things that should be considered when thinking of deploying an application to IBM Bluemix. This is especially relevant when deploying between Amazon AWS, Microsoft Azure, and IBM Bluemix.

Preparing your application

This step was one of the most important parts of the process and was the real reason we were able to deploy the application at lighting speed. You don’t build a house without great foundations. So ensuring your application is decoupled and stateless failure is a key start. Because we built Bugwolf for the cloud from the start, it can scale up and down as necessary. This makes it way more flexible than if we had built a traditional monolithic architecture.

Deploying the changes

When you put the right foundations in place then it makes deploying the changes even easier and faster. This is important when you’re talking about moving your Ruby application to a new home. One of the many benefits of Cloud Foundry, which is what IBM Bluemix is built from, is just how easy it is to push new versions of our application. We can do this multiple times a day - it only takes a few minutes and has zero downtime. This means we can move as fast as our customers need us to. Particularly when there is that new “must have” feature they want.

Building resilience

Before deploying an application, it’s important to build some resilience into your architecture design to plan for unexpected things to happen. This makes so much sense for your staging and production environments. We take advantage of things like a stateless architecture, so that we can both scale as needed and also tolerate the unexpected. Plus, our database layer is a master-slave configuration with automatic failover, live replication and automated backup.

Monitor and diagnose

We had already put in place a range of devops tools and notifications including Bugsnag and Pingdom from our migration from Heroku to Amazon AWS. This made it easy to establish our platform in the new IBM Bluemix environment in no time. Because we consume services such as these via an API rather than binding them in too closely into our code, it does not matter where Bugwolf is running. Also, this means that if we want to use a different service, we can do this with minimal changeover.

Bug Newsletter

Keep up to date with the latest in beta, bug & product testing.

User acceptance testing tools & teams

Quickly assess the quality of your software, websites & mobile apps