/home/ahmetb
  • Blog
  • About me
  • Tweets
  • GitHub
  • Talks
20 July 2020

Serving users from multiple regions with Cloud Run

WARNING

I have now moved this guide to the Cloud Run official documentation. Follow that page for the most up-to-date instructions.

You can now route your users to the nearest Google datacenter to them that has your Cloud Run application deployed. In this article, I list the commands to setup a load balancer and deploy an application as “multi-region” with Cloud Run using gcloud. Read More →

04 May 2020

Connecting Kubernetes privately from Cloud Run over VPC Network

Today we’ve launched the most anticipated Cloud Run feature to beta: You can now access VPC networks from Cloud Run. As you can imagine, this is great news for scenarios like running your frontend on Cloud Run, and calling other backend microservices running on Kubernetes1 over their private IPs.

In this article, we will connect to a Kubernetes service running on a private GKE cluster from Cloud Run. To visualize this, we’ll be configuring the following architecture: Read More →

27 April 2020

Effectively specifying environment variables for Cloud Run

Many microservices applications are primarily configured through environment variables nowadays. If you’re deploying to Cloud Run with gcloud CLI specifying a lot of environment variables might look rather painful: Read More →

31 March 2020

Inside gcloud run deploy

Good news everyone: We finally managed to make deploying serverless containers as simple as gcloud run deploy --image=[IMAGE]. This command deploys an application to Cloud Run with the given docker image, but what does really happen behind the scenes to make this happen? Read More →

26 March 2020

Is Google Cloud Run really Knative?

Google’s serverless containers as a service (CaaS) platform Cloud Run claims to implement the Knative API and its runtime contract. If true, this would mean that with the same YAML manifest file, you can run your apps on Google’s infrastructure, or a Kubernetes cluster anywhere. Read More →

02 January 2020

kubectl tree: Visualize Kubernetes object ownership

I’ve been leading the Krew “kubectl plugin manager” (a Kubernetes sub-project). Today, Krew is used to distribute over 70 kubectl plugins. This week, I finally took some time to write my first proper plugin. Read More →

29 October 2019

Knative = Kubernetes Networking++

Knative project is usually explained as building blocks for “serverless on Kubernetes”. As a result of this implication, most Kubernetes users are not aware of what Knative can do for their non-serverless workloads: Better autoscaling and networking for stateless microservices on Kubernetes. Read More →

24 October 2019

Inspecting kubectl traffic with mitmproxy

If you need to inspect kubectl network traffic, you can add verbose logging options (-v=8 or higher) to any kubectl command and you can see the URLs, request and response body/headers (except authorization). These headers usually are not complete, because more headers are added after the request is logged. To have a complete view, you need to intercept traffic using a local proxy like mitmproxy. Read More →

  • ««
  • «
  • 1
  • 2
  • 3
  •  … 
  • 35
  • »
  • »»