Introduction

This article will try to set up our first GKE cluster. We would also deploy .NET 6 service to GKE. In the end, we would explore Kubernetes features and deployments.

Prerequisites

Build custom images using Docker and Deploy them to the Google container registry.

https://www.c-sharpcorner.com/article/how-to-create-docker-image-of-net-6-workloads-and-push-it-to-google-container-r/

In this article, we will cover the following topics:

Step 1. What is Google Kubernetes Engine

Kubernetes is the most popular open-source container orchestration service, and the Google Kubernetes Engine is a fully managed service offered by the Google Cloud platform.

Features

GKE Features

Step 2. Create your first GKE Cluster

Search for Google Kubernetes Engine and enable GKE API

Deploy .NET 6 Workloads to Google Kubernetes Engine and explore Kubernetes Features and deployment.

Click on Create Cluster. The below screen would Pop up. Cluster creation experience varies over a period of time.

Deploy .NET 6 Workloads to Google Kubernetes Engine and explore Kubernetes Features and deployment.

Auto Pilot is a new mode where GKE manages node. It helps to save on operational costs. In this article, we will create a cluster with standard mode.

Specify the cluster name and select the default configuration for your cluster.

The cluster is up and running.

Deploy .NET 6 Workloads to Google Kubernetes Engine and explore Kubernetes Features and deployment.

Step 3. Create a Deployment and a service

The default configuration creates a cluster with 3 Nodes, 6 vCPUS, and 12 GB Memory.

Connect to GKE Cluster

gcloud container clusters get-credentials gkedev --zone us-central1-c --project buildcustomimage

Create a Deployment

We have already built custom image and deployed them to the Google container registry

https://www.c-sharpcorner.com/article/how-to-create-docker-image-of-net-6-workloads-and-push-it-to-google-container-r/

kubectl create deployment gkenetservice --image gcr.io/buildcustomimage/custom-image:0.1

Get Deployments

kubectl get deployments

Expose Deployments as Services

kubectl expose deployment gkenetservice --type=LoadBalancer --port=8080 --target-port=80

The container is exposed on port 80

Exposing a Deployment would create service. In this example, we have exposed deployment as Load Balancer Service on port 8080.

Get Services

kubectl get services

Deploy .NET 6 Workloads to Google Kubernetes Engine and explore Kubernetes Features and deployment.

In the browser window, type 35;232;168.66:8080, and the application should be accessible.

Summary

In this article, we have learned how to work with GKE.

In the upcoming articles, we will explore Google Cloud Functions and Cloud build.

Thanks a lot for reading. I hope you liked this article. Please share your valuable suggestions and feedback. Write in the comment box in case you have any questions. Have a good day!