Setup a Kubernetes node using Kind

Install kind on macOS

brew install kind

Create the cluster using the kubernetes specification file we created

kind create cluster --config=k8s/kind.yaml --name=fullcycle

Change between your active clusters

List your active clusters:

kubectl config get-clusters

Change to your desired cluster:

kubectl config set-context fullcycle

Get Nodes Running

kubectl get nodes

Apply changes to your cluster using a spec file

kubectl apply -f k8s/FILE_NAME.yaml

Get Pods running

kubectl get pods

Get ReplicaSets

kubectl get replicasets.apps

Get Deployments

kubectl get deployments.apps

Get Deployment status

kubectl get deployments.apps goserver

Describe Deployment

kubectl describe deployments.apps goserver

Get Statefulset Status

kubectl get statefulsets.apps goserver

Describe StatefulSet

kubectl describe statefulsets.apps goserver

Describe Deployment

kubectl describe deployments.apps goserver

Get Resource Revision

kkubectl describe deployments.apps goserver

Get Rollout History

kubectl rollout history deployments/goserver

Rollout Undo Change

kubectl rollout undo deployments/goserver --to_revision=REVISON_NUMBER

Port forward to one of your Pods

kubectl port-forward pods/goserver 8080:8080

Run stress test using fortio on your application

kubectl run -it fortio --rm --image=fortio/fortio -- load -qps 800 -t 120s -c 70 "http://goserver-service:8000/healthz"

Create namespace

kubectl create namespace dev

List kubernetes cluster information

kubectl config view

Create new context on cluster

kubectl config set-context dev --namespace=dev --cluster=kind-fullcycle --user=kind-fullcycle

Show current context

kubectl config current-context

List API Resources

kubectl api-resources