Create Kubernetes cluser using gcloud

Login to gcloud with

gcloud auth login

Set default region

gcloud config set compute/zone us-central1-a

To create a cluser, run

gcloud container clusters create CLUSTER-NAME

To create a cluster with 2 nodes, run

gcloud container clusters create CLUSTER-NAME --num-nodes 2

To specify compute engine type during cluster creation, run

gcloud container clusters create CLUSTER-NAME --num-nodes 2 --machine-type n1-standard-2

You can also specify scopes, this allow you to give the cluster permission to access other google cloud resources. For example to allow cluster access Cloud Source Repositories and Google Container Registry. run

gcloud container clusters create CLUSTER-NAME --num-nodes 2 --machine-type n1-standard-2 --scopes "https://www.googleapis.com/auth/projecthosting,cloud-platform"

To list your container, run

gcloud container clusters list

gcloud clusters

Before you can use cluser, you need to get authentication credentials with command

gcloud container clusters get-credentials CLUSTER-NAME

To interact with Kubernetes, you need kubectl, on Ubuntu, yu can install it with

sudo snap install kubectl --classic

To deploy a container, run

kubectl run hello-server --image=gcr.io/google-samples/hello-app:1.0 --port 8080

This will deploy google provided hello-app container to the cluser.

To make the application available to public, create a loadbalancer service.

kubectl expose deployment hello-server --type="LoadBalancer"

Now find IP of the LoadBalacner service with command

kubectl get services

From the result, we found EXTERNAL-IP for LoadBalancer is 35.232.226.216. To access the application, go to url


http://35.232.226.216:8080

See Kubernetes

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *