State agencies and academic institutions are increasingly challenged to keep up with the speed of innovation while meeting stakeholder demands and expectations. By turning to container-based services, organizations enable efficient, affordable application delivery and cloud migration. Kubernetes, an open source platform, is the industry standard in container orchestration technology, but managing and running “do it yourself” Kubernetes is easier said than done.
Running on Containers
It’s almost cliche to say at this point, but we live in a digitally connected world where things are moving faster than ever before. This has never been the case more than in 2020 when frequent challenges force us to change the way we do business. How can government keep up with the speed of innovation and meet the expectations of its constituents?
Containers as a whole represent a fundamental shift in thinking about IT resources. We no longer think about machines or virtual machines, but instead about applications and capabilities. This itself is extremely empowering, and we’ve seen the public sector really start to embrace this idea to support its missions.
Central IT organizations are increasingly experiencing agency requests for container solutions. But implementing containers requires answering a lot of questions. How are they different from virtual machines? How can we use the technology in a secure, multi-tenant way? How can we containerize our applications? How can we shift our current development processes to suit containers?
Taking advantage of all that containers have to offer requires a tool to manage and orchestrate them. This is exactly where a platform like Kubernetes comes into play. It gives organizations and agencies the power to not only stretch their current infrastructures further, but also to pave the way for future innovation by enabling things like microservices or even serverless event-driven architectures.
Open Source, Open Culture
Container orchestration is powerful in what it allows organizations to do. It supplies a common platform for developers, security teams, and operations to all work and collaborate together. It enables rapid innovation by standardizing and automating based on the guidelines that teams themselves can design and implement, ensuring that their best practices and security policies are rigorously followed.
The technology itself is important, but its real impact is the cultural shift that it enables. These tools and platforms allow the conversation to focus on the people and processes that bring the agency’s mission to life: collaboration, openness, transparency, and adaptiveness.
Containers permit you to restructure teams into centers of command, organizing them so they can use their particular expertise to solve problems. This is supported by technology that allows organizational control and guardrails to ensure everything is accomplished safely—providing innovation without sacrificing security and compliance. You can stop thinking about short-term technological necessities; your leadership and visionaries can plan the organization’s mission for years and decades into the future—not weeks and months.
Kubernetes is a powerful piece, but that’s all it is: one piece of the whole puzzle. Kubernetes alone might be sufficient for a small project, but making it a platform for enterprise and government is a very different story. There are a number of additional decisions required to make Kubernetes enterprise ready. And even after you make these decisions, you still have the work of configuring, integrating, operating, and supporting each of these pieces.
Let’s talk about concrete examples. What operating system will your nodes run? What container runtime will you use? What is your image registry solution? How about networking, load balancing and routing? Or log management or metrics?
Wouldn’t it be nice to have a product where all these decisions were already made? Wouldn’t it be great if everything was configured, hardened, and then rigorously tested using those configurations? Then as security patches and updates came out, you wouldn’t have to worry about hunting down and patching each component; instead you would have a place to apply those patches and updates with a single button click.
This is exactly what a supported enterprise Kubernetes platform provides. Vendors take the innovation of the open source community around Kubernetes, Prometheus, Grafana, Cri-O, CoreOS, and many other projects—and make these technologies accessible for enterprises and government by essentially taking ownership of these projects and ensuring they are secure, safe, and stable.
What happens if there is an issue with one of these projects? Would you want to rely on a group of volunteers to address your issue? Wouldn’t you rather have a dedicated team of engineers whose sole responsibility is to find and address such issues? The vendor provides the team and process around not only proactively looking for vulnerabilities but also fixing and delivering updates and patches securely to customers.
Doing More with Less
There are many hidden costs with implementing a “do it yourself” Kubernetes solution. Assembling all of these different projects together by configuring, securing and hardening them requires teams to take responsibility and ownership—not only of the assembly but also of the long-term maintenance efforts. For instance, in just the past 3 years, Kubernetes has had 95% of its code changed. Imagine the time required to vet and then integrate all of these rapid changes into your platform. And don’t forget to account for the time required for responding to critical vulnerabilities discovered in your various projects.
Nevertheless, teams with very talented engineers still ask, “We have the technical know-how and capabilities to stand up Kubernetes as well as all of the other pieces together ourselves. Why wouldn’t we just do that?”
The answer is very simple. “Wouldn’t you rather have your talented engineers work on your organization’s mission—executing and bringing your ten-year timeline to life?” You could devote all or part of your team to building and maintaining a cloud platform, but their time and energy would be better dedicated to serving your constituents and achieving your mission.
In addition, simplifying operations and saving money can be particularly appealing to government and educational organizations during this time of budgetary constraints—as more and more resources are devoted to the pandemic response. Healthcare agencies are overwhelmed with new challenges. Transportation agencies face diminished ridership and revenue. And Educational institutions must coordinate their curriculums in entirely new ways. If your organization is being asked to do more with less, shifting your current development processes to suit containers may be the solution.