This lab is designed to help prepare for the kinds of tasks and scenarios encountered during the Certified Kubernetes Application Developer (CKAD) exam.
In this lab, you will have the opportunity to practice your skills related to creating and configuring pods, deployments, and services. You will create a deployment which manages a set of specially-configured replica pods, and then expose those pods using a service.
Learning Objectives
Successfully complete this lab by achieving the following learning objectives:
- Build the deployment and create it in the cluster
Build a deployment descriptor called
pizza-deployment.yml
:apiVersion: apps/v1 kind: Deployment metadata: name: pizza-deployment namespace: pizza spec: replicas: 3 selector: matchLabels: app: pizza template: metadata: labels: app: pizza spec: containers: - name: pizza image: linuxacademycontent/pizza-service:1.14.6 command: ["nginx"] args: ["-g", "daemon off;"] ports: - containerPort: 80 livenessProbe: httpGet: path: /healthz port: 8081 readinessProbe: httpGet: path: / port: 80
Create the deployment in the cluster:
kubectl apply -f pizza-deployment.yml
- Build the service and create it in the cluster
Build a service descriptor called
pizza-service.yml
:apiVersion: v1 kind: Service metadata: name: pizza-service namespace: pizza spec: type: NodePort selector: app: pizza ports: - protocol: TCP port: 80 nodePort: 30080
Create the service in the cluster:
kubectl apply -f pizza-service.yml
You can verify the service is working by testing the nodePort with curl:
curl localhost:30080