Ahmet Alp Balkan
  • Blog
  • About
  • Tweets
  • GitHub
  • Talks
  • Authenticating to GKE without gcloud

    09 July 2019

    If you’re using Google Kubernetes Engine and deploying to it from headless environments like CI/CD, you’re probably installing the gcloud command-line tool (perhaps every time) you run a build. There’s a way to authenticate to GKE clusters without gcloud CLI! Read more →

  • Mastering the KUBECONFIG file

    12 February 2019

    There is a kubeconfig file behind every working kubectl command.1 This file typically lives at $HOME/.kube/config. Having written kubectx, I’ve interacted with kubeconfigs long enough to write some tips about how to deal with them. Read more →

  • The case for a kubectl plugin manager

    23 January 2019

    In my previous article on kubectl plugins, I explained how kubectl plugins work and how you can develop your own plugins. If “kubectl plugins” are new to you, read that article first.

    In this article, I will explain why we have developed a kubectl plugin manager at Google, and how it addresses some of the usability, discoverability and packaging problems around kubectl plugins. Read more →

  • Write your own kubectl subcommands

    16 January 2019

    Did you know you can create and distribute your own kubectl commands? As of Kubernetes 1.12, kubectl now allows adding external executables as subcommands.

    fun fun fun

    In this blog post, I’ll explain how kubectl plugin mechanism works, why plugins are useful, how you can write your own plugins, and current challenges in the plugin ecosystem. Read more →

  • Advanced Health Check Patterns in Kubernetes

    14 September 2018

    Kubernetes keeps applications running while you’re asleep: This is mostly thanks to the “Readiness and Liveness Probes”. If you don’t know about them, read this cool article.

    This article is about some health check patterns I have seen in the wild for applications that are not natively supporting Kubernetes-native probes. Read more →

  • Kubernetes Multi-tenancy talk at Google Cloud Next'18

    13 August 2018

    I’ve given a talk with @yoshiat (PM, Google Kubernetes Engine) at Google Cloud Next'18 about Kubernetes Multi-Tenancy Best Practices in San Francisco last month!

    You can watch the recording and look at the slides. Read more →

  • Developing CoreDNS backends with gRPC

    06 June 2018

    I recently worked on prototyping a public DNS server using CoreDNS. CoreDNS normally provides serving DNS zone data through files, however it also allows you to proxy to a backend endpoint via gRPC. I used this DNS server as the nameserver for a domain with thousands of subdomains.

    This approach allows you to write a custom DNS server  in any popular language, and serve records stored in an external datastore (like a redis cache, mysql database). In this article, I’ll go over the sample backend I’ve built. Read more →

  • Skaffold: happy Kubernetes workflows

    31 May 2018

    Skaffold is my top Kubernetes developer tool of the year so far. Since its accidental reveal about 3 months ago, it already got 3,700 stars on GitHub. Clearly the community is lovin’ it. Read more →

  • Faster iterations on Kubernetes with freshpod

    27 February 2018

    If you are using Minikube or Docker for Mac/Windows to run your Kubernetes deployments locally, I have developed a tool to restart containers automatically when their images are rebuilt: Check out freshpod on GitHub! Read more →

  • Debugging “FROM scratch” on Kubernetes

    20 February 2018

    How would you debug a Docker container that has no shell, no tools, but a single statically-compiled executable? Creating docker images FROM scratch is a trend on the rise, but is it really taking away our debugging capabilities? Read more →

  • ««
  • «
  • 3
  • 4
  • 5
  • 6
  • 7
  • »
  • »»

About the Author

I'm a software engineer at LinkedIn's Kubernetes-based compute infrastructure team. I enjoy building tools to orchestrate large-scale compute server fleets and love digging deep on Kubernetes and containers space. In my spare time, I maintain several tools in the Kubernetes open source ecosystem.

About me Other articles Follow on Bluesky Follow on 𝕏