Skip links

Modernizing Applications with Kubernetes

The ultimate goal of your application modernization journey is to improve your business practices. By migrating your legacy applications to more modern infrastructure, not only are you preparing to battle the present day disruptive technologies, but those that will affect your business in the future.

In 2018, the typical IT department is expected to only have 40% of their apps and platforms residing in on-premises systems. More and more technology leaders are adopting IT strategies that focus on deploying their current systems in the the cloud, whether it be public, private, or hybrid. IT spending on cloud computing is on the rise as professionals in decision making roles look to solve pain points that came with legacy technology, and find ways to save on costs in order to spend more on innovation to grow the business.

As you make your way down the path of modernizing applications, container technology has become essential in creating agile IT processes. Containers give your engineer the ability to package up these apps with all the necessary parts and send it out as one singular package.

But now you need to manage all these different containers. Some applications are complex and need different components across multiple containers. You need a tool that can orchestrate the entire process.

Enter Kubernetes.

What is Kubernetes?

Kubernetes has become one of the fastest growing open-source projects in history since its release in 2015 by Google. It was born from an implementation of Google’s internal system called Borg, while the Linux Foundation created the Cloud-Native Computing Foundation (CNCF) to host it. Since it was created from the battle-hardened Borg that launches more than 2 billion containers per week, off the bat it was ready for intense workloads. Today it is backed by many major players like AWS, Microsoft, Red Hat, and more.

To put it simply, Kubernetes is a system that manages clusters of containers. It is not a Platform as a Service (PaaS) solution, instead, it acts as a framework that allows users to choose the tools that are best suited to the individual business and employee talent.

Users select which types of application frameworks, languages, monitoring and logging tools, and any other tool of their choice. Kubernetes is container-centric, so it doesn’t matter which programming language or framework that the container is running.

kubernetes diagram

(Source: Red Hat)

Modern applications can span multiple containers, and those containers may be deployed across multiple server hosts. Kubernetes’ objective is to give IT teams the orchestration and management capabilities to deploy containers at scale.

With this orchestration in place, users can build new application services across multiple containers and manage their health over time. Application modernization is not a one-time fix all. Kubernetes gives IT the ability to manage these applications over time in the long term, allowing the business to stay flexible and quick to act.

As containers revolutionize the data center and how we look at technology, IT departments will need to find ways to manage and operate this new technology. This makes platforms like Kubernetes vital in creating agile processes that will improve the business.

Who Uses Kubernetes?

Similar to how Kubernetes brings containers together, it’s also bridging the gap between enterprise IT users who deal in the world of application operations and those of application development.

According to a survey of the Kubernetes community at KubeCon 2017, 55% of respondents were responsible for application operations, while 61% were responsible for application design and development. What’s more, nearly half of both groups identified themselves as having responsibilities in both categories, indicating that technologies like Kubernetes are allowing for teams to better collaborate.

Enterprise IT users are adopting containers for numerous reasons, the most popular of which is to run web applications and microservices. This was followed by using containers as an alternative to virtual machines to increase efficiency, analytics and data streaming, and the emergent Functions as a Service. On top of that, a quarter of all respondents said they are using containers for all of the above reasons.

This showcases the need for a platform like Kubernetes that enables freedom of choice. Kubernetes does not lock you into any specific tool or technology, giving both engineers and operations flexibility.

Where is Kubernetes being Adopted?

Technology leaders who are in the process of modernizing applications and migrating to the cloud, or still developing a strategy, may feel that a born-in-the-cloud platform like Kubernetes is a ways off. However, the most popular infrastructure for enterprise Kubernetes deployments remains on-premises infrastructure running on either Linux, VMware, or OpenStack.

The majority still express the desire to deploy Kubernetes on-premises within the enterprise.

However, that’s not to say interest and use of public cloud aren’t there. AWS leads in public cloud interest at 54%, followed by Google Cloud Platform (GCP) and Microsoft Azure at 31% and 28% respectively.

For enterprises in Canada, this is positive news considering the fact that Canadian enterprises have to this date lagged behind in cloud adoption. Those who are just getting started in their transformation can see that platforms that will be vital to future growth like Kubernetes are available at all stages of migration.

Kubernetes on Azure in Canada

Microsoft has a head start over some of the other cloud providers like AWS and Google, as it opened its first Azure data centers in Canada in 2016. This has made Microsoft Azure one of the market leaders in the Canadian space.

To that end, Microsoft has developed the Azure Kubernetes Service (AKS) in order to aid in the deployment, management, and operations of Kubernetes on Azure. For technology leaders looking to modernize applications with containers on Azure, AKS is available to facilitate that process.

As one of the just few companies that focus on Kubernetes on Azure in Canada, Architech is positioned as a Microsoft Gold Partner to ensure that your organization is capable of modernizing legacy applications with containers and Kubernetes.

Contact us online today to learn more about our consulting and engineering services that can ease you through your adoption of Kubernetes, starting with our Kubernetes on Azure Bootcamp. You can also download our white paper: The Guide to Application Modernization with Kubernetes.

Automation Insights