The following are 10 critical steps that I&O leaders can take to get control over Kubernetes in the enterprise:
1. Build your strategySuccessful I&O implementation needs to begin by building a collaborative plan with application teams on how they can take over the operational burden of managing the disparate clusters that may be spread across the organization. It is common for the initial innovation gains of Kubernetes in a project team to level off after initial deployment, leaving those teams to spend a considerable amount of time with Day 2 operations instead of focusing on their business goals. I&O leaders should take an inventory of Kubernetes clusters across the enterprise including identification of key deployment patterns, products or open source projects in use, capability gaps, and version compliance. The strategy needs to describe how they plan to provide centralized management, governance, and cost management of Kubernetes as a service to the enterprise without impacting the agility and speed.
2. Establish the right team (Organizing for success) Establishing the right team to run the Kubernetes platform is a critical step. Too many organizations skip this step, learning along the way until they find themselves in production without the appropriate skills in place. The team should be composed of experts with necessary skills including traditional site reliability engineering, knowledge of infrastructure and cloud, automation, virtualization, and of course, Kubernetes. Because the adoption of Kubernetes involves transforming the way in which applications are built, deployed, and managed, a cloud native or DevOps mindset is key. Integrated CI/CD and GitOps capabilities are increasingly being made available by vendors out of the box – organizing and enabling the team to be able to leverage these capabilities, ensuring that the team is aligned to deliver on both technical and business outcomes.
3. Obtain the proper trainingMany I&O organizations won’t have the necessary expertise to build the right team and in those cases, it is critical that these organizations acquire the proper training to up-skill their existing team members. Hands-on training is the best way to learn Kubernetes and the CNCF certification takes a very practical approach to validating one’s knowledge. Learning should be an ongoing process and not focus solely on Kubernetes. Understanding the moving parts of the CNCF landscape and emerging open source projects in the community are critical to keeping pace with the innovation of the ecosystem.
4. Establish standardsWith an established inventory of Kubernetes clusters, versions, add-ons, and gaps in capabilities deployed across the organization, it is important for platform teams to begin to define standards. The platform team should start by leveraging some of the patterns found in their existing deployments. Are all of the deployments based on pure upstream Kubernetes and allow for some application portability? Do they have different solutions that aren’t compatible with one another? Do they need to upgrade the clusters to a current version? Are they lacking observability or security capabilities in their clusters? Can they identify or implement best practices? Governance and compliance initiatives must not throttle velocity and limit choice.
5. Identify and partner with an initial customerDepending on the strategy defined and the existing landscape, I&O teams should pick an initial customer or project team to partner with to establish initial success. This may involve taking over the management of their existing platform, as opposed to pushing a new platform down on them. This project team can be instrumental in the overall success of the program helping to shape future capabilities, aiding the understanding of critical capabilities, learning from prior issues or challenges, and most importantly to establish trust.
6. Define and deliver centralized capabilitiesWith standards in hand and some early wins, it is time to define and deliver those centralized capabilities. The goal here is to start to establish some economy of scale across the enterprise. Enabling multi-cluster management and governance can be critical to the efficiency needed to manage Kubernetes at scale. This may include centralized governance policies, single sign-on, centralized monitoring and logging (or observability) capabilities, real time cost management, role-based access control (RBAC), and more. Working with application teams, the platform team should identify any gaps in capability and define a roadmap to improving existing capabilities. At this point, the platform team needs to establish themselves as a product owner which will deliver a high level of efficiency across the broader organization, economy of scale, and increasingly critical value to the business.
7. Document success with metricsI&O teams should work with the project teams to identify key metrics that can help them to define and measure business value. This may include metrics such as uptime, rate of on boarding new applications or projects, or how quickly application releases can be delivered. These metrics are not only critical to the ongoing improvement of the platform capabilities, they are critical for business leaders to gain visibility into the value the platform is delivering across the enterprise. Metrics are also useful when evangelizing the platform to new projects teams or organizations.
8. Establish a Center of Excellence A Center of Excellence (COE) is a cross functional team that comes from different groups across the organization. A COE can be extremely effective when bringing together thought leaders across the business whose joint expertise can help further the goals of the platform team. The COE can define best practices as well as help shape the roadmap for future platform capabilities. In some cases, product teams may continue to stay ahead of the platform when adopting new and emerging technologies. The COE can then take learnings from those experiences and bring them back to the centralized platform as enhancements.
9. Evangelize and sell your platform internallyWith the necessary people, process, and technology pieces in place, the platform team will need to evangelize and sell the platform internally. Initial wins, new centralized capabilities, supporting the agility of applications teams, and key metrics are all necessary ingredients required to onboard new teams. In an ideal situation, the platform team is able to onboard new teams by providing (and augmenting) their existing services while integrating with a centralized management and governance model. Over time, project teams may be able to adapt to the standards developed by the platform team, but not be forced to adopt a new platform by way of a mandate. The onboarding process must include the necessary enablement to ensure project teams have a frictionless experience with the platform. Enablement could be in the form of documentation or training (which could be self-paced or instructor-led) and should also be tailored to the personas in the focus group.
10. Listen and evolve (Continuous Improvement)As is common with any service lifecycle, a continuous improvement approach should be part of the platform team’s ethos.The centralized management of any platform across a large enterprise is not a simple feat. Leveraging initial customer feedback and establishing credibility with the COE are necessary to the ongoing success of the platform. The platform team will need to keep an eye on new and emerging technologies as well as trends in the cloud native ecosystem. Establishing a sandbox for these new technologies can help them to stay agile and get the necessary inputs from key stakeholders.
Many organizations attempt and fail with Kubernetes adoption because their focus is on the technology rather than business value and customer success. As seen by the CNCF survey , but only the most sophisticated enterprises are able to do this at scale.
***To learn more about containerized infrastructure and cloud native technologies, consider joining us at KubeCon + CloudNativeCon NA Virtual, November 17-20.