Deploying containers in production requires bigger changes than simply acquiring and mastering new platforms and tools. Not only do containers and Kubernetes change the technology stack for deploying and updating applications, but they change the way that I&O and application teams work together. A move to containers will require some IT organizations to simultaneously make a cultural transition and develop new workflows.
Any organization that is serious about using containers to speed up software delivery should either already have a continuous integration/continuous delivery (CI/CD) pipeline in place, or plan on building one as part of the containerization initiative. Integrating steps for containerization into CI/CD pipelines is straightforward, and Kubernetes helps organizations implement continuous deployment with functions such as rolling updates of containerized services.
However, achieving the full benefits of Kubernetes also requires a true DevOps approach in its usage. With Kubernetes, developers can deploy fleets of containerized services with a distributed computing approach that maintains a clear separation of responsibilities for development and I&O teams. As part of the deployment process, team members from both application development and I&O will be involved in creating and managing Kubernetes deployment manifest files alongside other artifacts.
Even if your organization already uses CI/CD, you may have to make some adjustments to your existing pipeline to accommodate containers. This document (Gartner subscription required) offers best practices for building and operating deployment pipelines with containers and Kubernetes. It is critical to assign responsibility for the container deployment manifests in a way that makes sense for all of your teams. Because the creation and maintenance of these files requires extensive input from both I&O and application teams, these teams will have to adopt DevOps discipline in order to succeed.