In this episode of The New Stack Makers, TC Currie talks with Kublr CEO Slava Koltovich about canaries, Kubernetes and operations.
Koltovich was working in a company providing technical services to enterprise clients when Kubernetes hit the scene a few years ago. He saw that most companies who are providing Kubernetes abstraction layers are focused on development, and not so much was being done for operations. Recognizing an opportunity, Kublr was born.
The Kublr products are tuned for the operations environment and for the typical use cases for operations. The teams normally responsible for having applications up and running, for example, infrastructure teams and application support groups, have been slower to adopt Kubernetes. Since most open source code comes from developers, not surprisingly, most of the available Kubernetes services are focused on developers. Kublr saw the opportunity to tailor Kubernetes functions for operations.
“Don’t be afraid of this new technology,” urges Koltovich. “It’s much more available and easy to use than it was even a year ago.” Ops teams have not yet been interested in canaries because they used to be hard to implement. But that has changed. In today’s environment where final testing has to be done in production he said, you should have a really good reason to not do canaries.
Canaries for the Ops Team
Canaries help make sure that there are no bugs introduced into production environment by verifying that the new code version is tested against production traffic and passes defined benchmarks. They allow you to open a new version to a small percentage in production to make sure it works, before opening it up to all of your customers.
Canaries are the last step in the development pipeline, the final test. It’s important to note, he said, that canaries do not replace any testing that you’re already doing. They are an additional step in your testing process.
And it has become much easier to create canaries. Spinnaker introduced Kayenta, their automated canary service earlier this year.
You Need a Flock
Ideally, Koltovich recommends creating one canary per microservice or group of microservices. Most of the canary functionality will be the same, but each microservices group will need individualization.
You don’t need Kubernetes to run a canary, he said. After all, Netflix started using them before Kubernetes burst on the scene a few years ago. But it helps.
Spinnaker launched Kayenta, their automated canary service earlier this year. Kubernetes makes canary releases faster and cheaper, said Koltovich, allowing you to deal with lighter and faster objects. “It now takes seconds instead of minutes.”
Listen to the full podcast to find out more about the intersection between canaries, Kubernetes and DevOps and what’s in Kublr’s tech stack.
If you want to find out more, here’s Kublr’s blog post on hands-on canary deployments with Istio and Kubernetes and to an article written by Kublr’s CTO Oleg Chunikhin for The New Stack on implementing advanced scheduling techniques with Kubernetes.
In this Edition:
1:25: Why you started Kublr, and what services Kublr provides?
6:08: What are canaries?
7:56: How canaries don’t replace the usual testing
10:55: How does one deploy a canary, exactly? Do you need Kubernetes in order to run canary?
13:11: What is in the tech stack at Kublr?
15:29: If you could tell listeners who are engineers that work with big data one thing about working with canaries, what would that be?
Feature image via Pixabay