We’ve talked a lot about how Docker for Enterprise supports and simplifies Kubernetes. But how are organizations actually running Kubernetes on Docker Enterprise, using Docker Kubernetes Service? What have they learned from their experiences?
Here are three of their stories:
When you visit the doctor’s office or hospital, there’s a very good chance McKesson’s solutions and systems are helping make quality healthcare possible. The company ranks number 6 in the Fortune 100 with $208 billion in revenue, and provides information systems, medical equipment and supplies to healthcare providers.
The technology team built the McKesson Kubernetes Platform (MKP) on Docker Enterprise to give its developers a consistent ecosystem to build, share and run software in a secure and resilient fashion. The multi-tenant, multi-cloud platform runs across Microsoft Azure, Google Cloud Platform and on-premise systems, supporting several use cases:
- Monolithic applications: The team is containerizing an existing SAP e-commerce application that supports over 400,000 customers. The application platform needs to be scalable, support multi-tenancy and meet U.S. and Canadian compliance standards, including HIPAA, PCI and PIPEDA.
- Microservices: Pharmaceutical analytics teams are doing a POC of blockchain applications on the platform.
- CI/CD: Developer teams are containerizing the entire software pipeline based on Atlassian Bamboo.
- Batch jobs: Other teams are moving ETL (extract, transform, load) data functions to the new platform.
Fortune 500 Financial Services Firm
One of the most recognizable financial services brands is using Docker Enterprise to build an on-premise Kubernetes deployment to support machine learning projects.
Docker Enterprise provides a secure runtime environment for Kubernetes. The team selected Kubernetes as their orchestration solution for several reasons:
- Support for machine learning solutions such as Kubeflow, Tensorflow and Jupyter.
- GPU support for compute-intensive workloads.
- Extensive container storage interface (CSI) options give them flexibility to provide persistent storage to data-intensive applications.
Even though the company has internal expertise in Kubernetes, they already use Docker Enterprise to support their e-commerce applications. The team recognized the benefits of running Kubernetes within Docker Enterprise.
The mortgage division at Citizens Bank has been running Docker Enterprise in production since February 2017. The team used Swarm for orchestration from the start, and quickly scaled to supporting 1,000 containers in a single cluster in just over a year.
The deployment grew, and by the fall of 2018 they were running 2,000 containers. When Docker added support for Kubernetes, the team evaluated migrating some applications — particularly stateful services such as Kafka and Zookeeper — to take advantage of native automatic scaling and application deployment in Kubernetes.
But for Citizens Bank, the complexity/simplicity trade-off led them to reconsider and keep all workloads on Swarm. As Mike Noe, one of their DevOps engineers put it:
“Swarm and Kubernetes were built with two different philosophies in mind. Swarm aims to offer high impact solutions while prioritizing simplicity. Kubernetes aims to offer a solution for literally every conceivable problem.”
The Best of Both Worlds
The Docker platform includes a secure and fully-conformant Kubernetes environment for developers and operators of all skill levels, providing out-of-the-box integrations for common enterprise requirements while still enabling complete flexibility for expert users. That means you can run Kubernetes interchangeably with Swarm orchestration in the same cluster for ultimate flexibility at runtime.