Cloud deployment forecast: Cloudy with a chance of Kubernetes

By Arvind Rangarajan

Bigstock

It may be snowing in many places around the world this holiday season, but this winter is expected to be cloudy for mobile enterprises. More organizations are opting for the cloud deployment model because of its advantages as compared to on-premises. Gartner predicts that cloud will increasingly become the default option for software deployment.

Mobile enterprises are also increasing their reliance on cognitive and AI services to create greater value for their customers. Those services are gaining a bigger footprint on cloud platforms, as mobile solutions that use them are primarily based in the cloud. Though there may be reasons, like data regulations, to stay on-premises, the sun is indeed beginning to set on this deployment model.

Container-based solutions

The key criteria that impact cloud adoption are single tenancy, portability of deployments across platforms and vendors, less or no downtime, and rapid scalability as demand increases. In addition to these requirements, there are a few inhibitors to mobile back-end deployments on the cloud that are specific in nature and are addressed through customized deployments. For example, data privacy concerns are addressed by a private cloud model.

Container-based solutions on the cloud have been the preferred option in recent times to meet most of these requirements, such as enhanced security. As a result, container-as-a-service became hugely popular as a cloud deployment option with providers like Docker. But the cloud platforms could not fully utilize containers’ advantages until Kubernetes. One key issue was how the container deployment differed on a desktop versus on the cloud, due to the way containers were packaged and developers were required to plan separately for an application rollout on the cloud.

Container orchestration with Kubernetes

Kubernetes brings forth the power of containers and is gaining popularity across several cloud platforms like IBM Cloud. The demand for a portable and robust platform to manage containers has pushed Kubernetes to the go-to option in container orchestration and the mobile back end. With Kubernetes, developers need to perform container deployments using a single mechanism.

Choosing between a public, private or a hybrid cloud model within an enterprise required a lot of planning, as it was harder to switch after an initial release. The portability offered by Kubernetes allows for an enterprise to be flexible with the deployment model. Companies can now start with a low-cost public cloud model with Kubernetes and port the container-based applications to a private cloud model at a later point with almost no migration cost. It is also easier to migrate existing container-based solutions to Kubernetes.

Mobile solutions on Kubernetes

There are many reasons why the forecast is not just cloudy, but also with a chance of Kubernetes for mobile enterprises. Though Kubernetes is not targeted only for mobile back-end deployments, it caters to specific mobile app development needs more than other platforms:

  • Support for agile method: Enterprises increasingly employ agile methodology for mobile app development, as they require continuous integration and deployment across sprints to manage and test the apps. Long downtimes and extensive deployment processes are deterrents to meet sprint milestones. With Kubernetes, mobile back-end deployments are simplified and can be pushed to the cloud in a shorter time frame without the app becoming unavailable. This enables the application testing to continue uninterrupted.
  • Faster services rollout: Mobile apps rely on services to retrieve application data; integrating the mobile app with the services constitutes a major portion of enterprise app development. Containers housing complex middleware can behave differently when deployed in the cloud compared to a test environment due to factors such as dependent software libraries. Kubernetes eliminates this risk, ensuring a consistent application behavior across different environments and allowing development teams to focus on verifying a mobile app feature within a single environment. Since Kubernetes also supports quicker roll back of deployments, services can be restored to the previous stable state in the case of unforeseen errors. This brings down the overall time required to roll out a new service, thus making new app features available faster.
  • Rapid scalability: A change in business process, a new business event or a simple addition of new users could increase use of an organization’s enterprise apps and would demand the back-end application support more transactions. With Kubernetes’s ability to efficiently manage resource capacity for a deployment and its support for a single-tenant model, mobile back-end solutions exhibit consistent performance and offer easier horizontal scalability as more mobile users are added.

You may have noted that Kubernetes is best suited for container-based deployments. With more cloud deployment models based on Kubernetes, the demand for containerized services — which are nothing more than applications customized for deployment on a container — will continue to grow. Mobile back-end deployments on Kubernetes will enable consistent mobile app performance and, as a result, a better user experience. This makes the forecast for this winter cloudy with a strong chance of Kubernetes.

Written By

Arvind Rangarajan

Architect for IBM MobileFirst for iOS Garage, IBM Client Innovation Center – India

Arvind is an IT Architect at IBM Global Services. He specializes in PLM integration using OSLC, as well as, designing and developing Mobile applications.

Other Articles by Arvind Rangarajan
See All Posts