How I Started Working With Kubernetes

 3 years ago
source link: https://lambda.grofers.com/how-i-started-working-with-kubernetes-1c60f2eb1886
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

How I Started Working With Kubernetes

And eventually became a contributor.

Image for post
Image for post
Animation by Asif Jamal

I first heard about Kubernetes in 2016. When Docker was the new boom, Kubernetes was introduced as a prototype system to manage containers.

Though I was unsure of getting into it, I passed it at that time as I was content with containers and didn’t need any orchestration.

However, when I did start working on Kubernetes, I found it pretty exciting. But there were certain aspects of Kubernetes that bothered me. These aspects were buggy and didn’t work as intended.

Upon diving further, I found that the entire ecosystem was written in Golang. To catch up, I started working on Golang and eventually grew comfortable around the system.

All in all, it took me around 10 months to get comfortable around Docker and Kubernetes source code.

The Kubernetes community was also helpful, and I found a lot of help from Jonathan Brasseri and Aldo Culquicondor who answered my queries around the Kubernetes scheduler.

And it’s then that I started contributing code to the scheduler, gradually adding new components, and removing redundant ones.

To be fair, it was tough identifying where to start. Since I was most comfortable around scheduler and networking, I started picking topics from there. I identified some redundant components and started removing them.

I also moved around certain components of the scheduler to make the contract between scheduler and controller more decoupled.

After a lot of dedicated effort, I have now been invited to join the Kubernetes organization on Github.

The community has a big role to play. It recognizes your efforts around the contributions you make towards the Kubernetes platform — eventually helping you to move to join sigs and leading them.

What’s next?

I’m now working towards floating IP issues in Istio and working on some new design components in Calico.

I have also started to explore eBPF, and I am working to figure out how we can introduce the capabilities of Cilium into Calico.

A short piece of advice to anyone who’s starting out: start by studying the test cases.

Next How We Sustain DNS Outages at Grofers

Software engineering internship at GrofersPrevious

About Joyk

Aggregate valuable and interesting links.
Joyk means Joy of geeK