Put People Before Pods: A People Managers Guide for a Successful Kubernetes Deployment
The original title was "Humanetes: People Before Pods" before someone pointed out to me that would be abbreviated down to h8s. Strangely accurate though – as this article will outline the fact that your team likely h8s change! Here's how to overcome it and have a successful Kubernetes deployment.
"Successful change is not a matter of skill, but a matter of will." - unk.
Organizations and their leadership are always seeking ways to modernize their infrastructure and stay ahead of the competition. Often talked about is Kubernetes, an open-source platform for automating the deployment, scaling, and management of containerized applications. The success of a Kubernetes or OpenShift deployment often rests heavily on the shoulders of people managers, and that's what we'll dive into today.
As a Solutions Architect, I understand that deploying Kubernetes is not just a technology change, but a cultural change as well. It requires an understanding of the intricacies of the platform, as well as the ability to guide teams through a process of change and adaptation. In this article, we'll delve into the principles that people managers must adopt in order to prepare themselves and their teams for a successful Kubernetes deployment before they dive into the nuts and bolts like pods, containers, and PolicySets.
Embracing Change and Failure: A Key to Successful Kubernetes Deployments
The world of technology is constantly changing, and the only way to survive and thrive in it is to embrace change. In the book, "Who Moved My Cheese?" by Spencer Johnson, the author uses the analogy of cheese to represent change. Just as mice in a maze are always searching for cheese, people in organizations are always searching for new and better ways to do things. People managers must be proactive in embracing change and helping their teams adapt to new technologies and processes.
The book highlights the importance of adapting to change and embracing it as a natural part of life. This principle is especially relevant when it comes to Kubernetes deployment, where the technology and best practices are constantly evolving. By embracing change, people managers and their teams can stay ahead of the curve and make the most of new opportunities.
Lead from the front of the pack
People managers must lead by example and demonstrate a willingness to learn and adapt to new technologies. This not only inspires confidence in their teams, but also sets a standard for a culture of continuous learning and growth. In order to be effective leaders, people managers must be knowledgeable about the technology they are deploying and be able to communicate the benefits and challenges of the deployment to their teams.
Leading by example may look like you presenting something new to your team on a consistent basis, and outlining what the discovery process looks like. Be sure to include examples of excellence as well as examples of failure. Your team needs to know it's okay to miss points and make mistakes, or they'll be resistant to change.
Automate Everywhere, Automate Everything!
Well, automate where it makes sense, of course. The importance of automation cannot be overstated when it comes to Kubernetes deployments. Automation reduces human error, improves efficiency, and ensures consistency across multiple deployments. It's one of the key benefits of Kubernetes, as Kubernetes helps to automate application development, deployment, and orchestration. People managers must understand the role of automation in a Kubernetes deployment and be able to explain its benefits to their teams.
Look for opportunities to automate during a Kubernetes deployment, not just “how” but also “why” you automate something the way you do. This is your opportunity to question why things have been set up the way they have been for (x) number of years. You can use technology like Ansible external to your k8s cluster, or you can use something like Operators for automation inside your Kubernetes cluster. Looking for opportunities to automate and sharing the results of that exercise will help your team, outlined in the next section, actually fulfill the need to automate.
Be a Shepherd of Change
People managers must act as shepherds of change, guiding their teams through the deployment process and helping them navigate any challenges that may arise. This requires a deep understanding of the people and processes involved in the deployment, as well as a willingness to be flexible and adapt to changing circumstances.
Success in Kubernetes deployments isn't just about having the right tools and strategies, it's also about having the right mindset. Believe in yourself, your team, and the positive impact you can have on your organization by embracing change and making the most of every opportunity that comes your way.
An example of embracing change may just be dedicating time consistently for you and your team to evaluate new technology together, or it may be delegating to your team specific pieces of a new software stack to learn and present to the group. What works best will vary from team to team.
Preparing for Success: Essential Steps for People Managers in Kubernetes Deployments
How People Managers Can Prepare Themselves and Their Teams
- Familiarize yourself with the technology: People managers must understand the basics of Kubernetes and the benefits of deploying the technology. Check out guides like Kelsey Hightower's awesome Kubernetes the Hard Way guide to learning the technical nuts and bolts. Or, like Red Hat's OpenShift playgrounds. OpenShift is the market leading enterprise grade release of Kubernetes, used by many leading organizations.
- Educate your team: People managers must be able to educate their teams about the technology and the deployment process. This includes explaining the benefits of the deployment, as well as addressing any concerns or objections that the team may have. You can choose to use the resources above and educate them yourself, or you can use engaging resources like Udemy Courses/Linkedin Learning, or the free Red Hat OpenShift training courses for Enterprise Kubernetes.
- Automate wherever possible: Automation is key to a successful deployment, so people managers must understand the role of automation in the deployment process and be able to explain its benefits to their teams. Try to look for opportunities where your team may be spending their time doing tasks that could be automated.
Additionally, you should explore other automation resources such as Terraform or Azure Automation tools, which offer great complementary features on top of Ansible. I'm bias and love Ansible because of how much it can do, but there's definitely other complementary tools to use in conjuncture with it. Explore some options and ideas here. Automation isn't just about "automation" tooling though. Kubernetes itself is automation. Designing your environment around Kubernetes' best practices is automation itself. Operators, Containers, and the orchestration thereof is automation. - Be flexible and adaptable: The deployment process is not a one-size-fits-all solution, so people managers must be flexible and adaptable in order to navigate any challenges that may arise. Fail together, and fail often! Use this process to demonstrate that uneasy change can exist without hubris, and with humility while you fail in the early stages of learning this technology with your team.
As a manager, embrace failure by encouraging your team to experiment, learn, and try new things. Lead by example and nurture an environment that values continuous learning and growth. Celebrate small successes and use failures as learning opportunities. With this mindset, your team will become more confident and innovative, leading to greater success in the long run as they'll be less change averse. - Create a positive culture: Do this by prioritizing the development and growth of each team member. Leaders can create a dynamic and adaptive team that can not only weather the challenges of Kubernetes deployment, but also drive innovation and success in every other domain the process.
With this as a focus, your team will be equipped to handle the challenges of an ever changing technology landscape, and drive innovation for the organization. By providing opportunities for growth and development, you can cultivate a team that is confident, capable, and driven to succeed. Lead with purpose and make a positive impact on the lives of those you lead, and the organization as a whole.
A successful Kubernetes deployment requires a focus on people first
Organizations must embrace change and be proactive in deploying new technologies. As people managers, it is your responsibility to prepare your teams for a successful enterprise Kubernetes deployment by embracing change, and preparing your team for the transition with more than just the "how", the intent of this article is to help you build your "why". The key is to understand that change is inevitable, and that those who are able to adjust to it quickly and effectively will be better prepared for success.
To prepare your teams, it's important to focus on communication and training. Make sure that your team members understand the benefits of Kubernetes and why it's being implemented in your organization. Provide them with the resources they need to learn the technology, and ensure that they are equipped with the right skills to succeed.
No one ever got fired for buying VMware!
It's also important to remember that there is a risk associated with sticking to a virtualization-based environment. The phrase "no one ever got fired for buying VMware" may have held true in the past, but in today's technology landscape, it may be a risky strategy to rely solely on the technology solutions from the last 20 years. Organizations that don't embrace new technologies risk being left behind by their peers, and may struggle to remain competitive or even just compatible in the long term.
People managers play a critical role in preparing their teams for a successful deployment by becoming shepherds of change, embracing automation, and focusing on communication and training. The reliability of this information is supported by the Kubernetes community (such as the official Kubernetes documentation and the Kubernetes Blog) and articles produced by reputable technology publications such as Red Hat's Hybrid-cloud Blog and other more opinionated blogs like TechCrunch or Wired.
By following these principles, you can help your organization to successfully deploy Kubernetes, and ensure that your team is prepared for success in the rapidly changing technology landscape.
The Benefits of a Kubernetes Deployment: A Guide to a More Automated, Efficient, and Scalable Virtual Environment
It's important to first evaluate if your organization is ready for Kubernetes, and if not, what is the correct technology stack for your organization?
Is it a more automated virtualization-based environment?
Is it a hybrid of on-prem and in the cloud?
Is it a Kubernetes deployment on top of VMWare as a test bed?
Is it Kubernetes as a managed service such as full service ROSA, ARO, or more bare bones AKS/EKS?
Theres tons of considerations, but let this all act as a starting point.
All of this to say: embrace the journey ahead, with all its ups and downs, and know that you have what it takes to prepare your team to walk into the abyss of the unknown and return with the light of a new found understanding. All it takes is a little bit of bravery and a whole lot of determination. A bunch of coffee and the willingness to fail helps too.
It's not about waiting for the perfect moment or seeing any sign, it's about making the most of the moments we have today – now. So take a deep breath, and walk into the abyss of the unknown with empathy for your team and an open mind, knowing that anything is possible when you lead with open, transparent, and collaborative principles.
Disclaimer: Michael is a Solutions Architect at Red Hat. All opinions and thoughts are his own and not a statement by any employer. Michael is a dork who loves Kubernetes and Ansible, though, if that wasnt clear.