Jam Notes #3: Integrating Terraform with Kubernetes

Contributions by Michael Levan and Chad Crowell

Welcome to our note series on our weekly Jam sessions, where we cover relevant DevOps topics with rotating guest speakers.

To save you time and energy, we’ll be uploading each Jam session topic’s notes, along with helpful tips.

For the week of May 12th, we covered Integrating Terraform with Kubernetes.

We talked with Michael Levan and Chad Crowell about their thoughts on which tech stacks to use, the implications of Kubernetes on enterprises, and best practices.

Join our Slack to stay in the loop about our future weekly Jam Sessions on DevOps topics.

1. Which IaC tech stack do you use or recommend?

Michael: What the old generalist used to be is the new niche. Now you have to have 8–10 tools. My tech stack right now is containerization like Docker, Kubernetes, Terraform, and I focus on AWS over Azure. My take is, don’t focus on the platform, focus on the technology because at some point Terraform, Kubernetes, and Docker will go away. I consider myself the containerization guy.

2. Where do you delineate the processes on where Terraform is better for a certain process versus Kubernetes for certain processes?

Michael: There is no competition between tools because there’s a right tool for each job, be it serverless, container, structureless code or CDK.

3. Kubernetes and its implication on enterprises?

Michael: DevOps is hard. Cloud is not an easy thing. Practicing DevOps from a tech or cultural perspective is not an easy thing. It’s not easy to break into DevOps.

Mark: We have to understand why we use the tools. We have to ask, have we used due diligence to assess if this is the right way to go or are we just jumping in on the bandwagon

Michael: When I first started my career, I was in a terminal, troubleshooting. I’ve never installed a Linux system before. Now in this current age, this layer of abstraction makes it so much harder for people to break into DevOps. Let’s say we talk about the difference between bytes and bits. This is a fundamental concept that a lot of people can’t get. We need to get around that layer of abstraction in cloud tools. It’s going to be hard to find good engineers in a few years.

4. Do you think there’s going to be an education gap in the approach of problem sets?

5. Can you give us examples of when Kubernetes is misused?

Michael: The question is, why move from Kubernetes to container? Don’t chase the buzzwords or tools. If you’re chasing a buzzworthy tool, let’s say you have your app running on a VM and you want to make it run faster on a container — chances are you’re running it slower.

Chad: Don’t start with Kubernetes. Don’t start with serverless. Build the app and assess if Kubernetes or serverless is the right fit to deliver your product better.

Michael: Let me play devil’s advocate here. Imagine this scenario — you’re starting a new company, you don’t have a product yet and no funding. Would you recommend someone to deploy on a VM first and then move it to a containerization environment? Or would you recommend they run it straight on containerization?

Chad: I’d say build on your local machine first.

Raphael: I believe in doing something manually first before automating so you know what’s happening.

Michael: When learning cloud and DevOps, do it manually first before automating it. You can’t automate what you don’t know. Last month I was incorporating the IoT port for a client. At first, I was taking manual logs of streams coming in from the IoT core. After that, I hooked up the IoT stream with Kinesis and now I’ve constant logs coming in, I know where those streams are coming from.

Chad: So you need to ask, why are we using this? Does this make sense? With every assignment, ask 7 layers of why? That curiosity will take you above and beyond your career. Learn the fundamentals of Linux and why this is behaving in a certain way and you discover better ways and methodologies

6. What are your thoughts on the evolving ecosystem around the interplay of Terraform and Kubernetes?

Michael: I like that I can take my containerization and turn it into a package.

7. Last words

Chad: I’d encourage everyone to be curious when approaching any tech stack or tools, for example, why is Kubernetes important or not important? That curiosity will take you far in your career. Take what you learn and share with others. We used to have gatekeepers and people hoarding information in the past but now it’s all open source knowledge and sharing.

8. To sum up:

If you’re looking to try a new (free) tool to spin up your infrastructure easily, we recommend that you check out InfraSketch.

And, if you’re looking to get more Infrastructure as Code tips? Join our Slack community to connect with other DevOps professionals.

PS: Did you know we have weekly Jam sessions on DevOps topics? The weekly invites go out on our Slack and Twitter channels. We hope to see you there!

Founder at InfraCode — customizable, reliable Infrastructure as Code tools. Simplifying the lives of DevOps professionals. www.infrastructurecode.io