Starting Down The Container Orchestration Path

Starting Down The Container Orchestration Path

Bringing Containers into The Enterprise

Docker is a well-known Platform as a Service (PaaS) product, which has infiltrated its way into the enterprise-level data centers in various technology sectors. Docker has been around for some time (2013) and has standardized how containers are built, maintained, and utilized throughout the Software Development Life Cycle (SDLC). As container utilization has matured, the need for an orchestration platform has also flooded the market. Orchestration can perform many different functions, including the provisioning and deployment of containers, performing scaling activities or spreading the application load across infrastructure, health monitoring, and performing HA activities if there are underlying host issues are to name a few.

 

The Benefits of Containers

No alt text provided for this image

Containers offer a "logical" bundling mechanism in which applications can be abstracted from the environment and utilized across multiple platforms to provide a highly compatible micro-service. Containers have a much smaller footprint than a typical application, where the various components of the operating system are shared (Kernel, Memory, Misc Libraries).

 

Sample Orchestration Products

No alt text provided for this image

With container orchestration on the rise, and the total market to be worth $1.3 Billion in the next five years, the rapid adoption and surge to dominate the market is nothing less than extraordinary. While there are plenty of orchestration products available in the market today, there are a few headliners that always appear to be at the leading edge for adoption. Some of the key players are well-known names such as Cisco Systems, Google, Amazon Web Services, Microsoft, RedHat, Docker, and Oracle. Of these providers, docker has attempted to provide the orchestration needed to utilize containers at scale; however, the most well-known product comes from the hands of Google. Kubernetes is an open-source orchestration platform maintained by the Cloud Native Computing Foundation (CNCF), and according to the Kubernetes website, "Kubernetes is an open-source system for automating deployment, scaling, and management of containerized applications."

 

RedHat also joined the the container orchestration market and has seen exponential growth in its flagship product OpenShift. According to Redhat, OpenShift is a Kubernetes distribution focused on developer experience and application security that's platform agnostic. OpenShift helps you develop and deploy applications to one or more hosts. These can be public-facing web applications, or backend applications, including microservices or databases.

 

Orchestration Platforms

For those that would like a more turn-key solution, all of the major cloud vendors support a managed solution that provides Kubernetes as a Service (KaaS). Amazon has Elastic Container Service for Kubernetes (EKS), Google has Cloud Kubernetes Engine, and Microsoft has the Azure Kubernetes Service (AKS). These platforms offer a vast amount of functionality with little to no effort, making it an excellent solution for those that have deployments solely in the commercial cloud arena. Of course, these come at a price depending on which provider and scale you chose to deploy.

 

Various Use Cases

Enable Developers

No alt text provided for this image

Allowing the application developers access to all of the external dependencies and resources without delay enables the developer to focus on the task at hand, create fantastic software. By having these dependencies containerized, they can be self-sufficient versus spending time adding all of the external components into the development platform.

 

Enable DevOps Support

No alt text provided for this image

The software must be promoted through several different environments to make it into production, with each having its configurations, hardware, operating systems, and other variables. Containers provide a consistent package, allowing the code to be deployed throughout the CI/CD pipeline swiftly and without delay.

 

Hybrid Cloud Architecture

No alt text provided for this image

The benefit of being able to host workloads on-premise, in public clouds, or other managed infrastructure (such as isolated enclaves) opens up the possibility to deploy the application within the hosting platform that makes the most business sense. Whether its cost, performance, or scalability, having the option to deploy across multiple architectures can be a tremendous benefit to the organization as a whole.

 

References and Additional Reading

https://www.docker.com/

https://aws.amazon.com/eks/

https://cloud.google.com/kubernetes-engine

https://developers.redhat.com/products/openshift/

https://docs.microsoft.com/en-us/azure/aks/intro-kubernetes

https://docs.docker.com/engine/swarm/

https://technology.informa.com/617145/red-hats-container-software-strategy-paying-off-for-now

https://www.globenewswire.com/news-release/2020/04/13/2015137/0/en/Container-Orchestration-Market-is-Expected-to-Reach-1-38-Billion-by-2026-Says-Allied-Market-Research.html

 

 

 

 

 

Matthew King

Technical Manager at Octo

4 年

Great article, thanks for sharing!

要查看或添加评论,请登录

Chris Anderla的更多文章

  • Free Time – Invest in Yourself

    Free Time – Invest in Yourself

    As we embark on some uncharted times I find myself trying my best to keep a positive thought process, show compassion…

    2 条评论
  • To the Cloud and Back Again

    To the Cloud and Back Again

    Recently I was able to attend the Elastic{ON} conference and enjoyed the discussion from Lyfts’s software engineer…

  • Elasticstack - Four (4) Operational Tools

    Elasticstack - Four (4) Operational Tools

    The “Elasticstack” (Elasticsearch, Kibana, Logstash, Beats, etc..

  • Security and Elastic{ON}

    Security and Elastic{ON}

    While attending Elastic{ON} this year it was apparent that the focus on security has been a primary driver when it…

社区洞察

其他会员也浏览了