With deployments, you can create a dynamically-managed set of replica pods. But this introduces a need for an equally dynamic way to access them. Services provide a layer of abstraction that provides access to pods and other entities, allowing dynamic, high-availability access to the necessary components of your applications. In this lab, you will have the opportunity to work with services by creating a service on top of an existing deployment.
Learning Objectives
Successfully complete this lab by achieving the following learning objectives:
- Create the `auth-svc` service
Examine the
auth-deployment
. Take note of the labels specified in the pod template, as well as thecontainerPort
exposed by the containers.kubectl get deployment auth-deployment -o yaml
Create a service descriptor file called
auth-svc.yml
.apiVersion: v1 kind: Service metadata: name: auth-svc spec: type: NodePort selector: app: auth ports: - protocol: TCP port: 8080 targetPort: 80
Create the service in the cluster.
kubectl apply -f auth-svc.yml
- Create the `data-svc` service
Examine the
data-deployment
. Take note of the labels specified in the pod template, as well as thecontainerPort
exposed by the containers.kubectl get deployment data-deployment -o yaml
Create a service descriptor file called
data-svc.yml
.apiVersion: v1 kind: Service metadata: name: data-svc spec: type: ClusterIP selector: app: data ports: - protocol: TCP port: 8080 targetPort: 80
Create the service in the cluster.
kubectl apply -f data-svc.yml