- Create a ReplicaSet with 2 replicas. Make sure the label used for the selector and in the Pods is "type=web"
cat >> rs.yaml <<EOL
apiVersion: apps/v1
kind: ReplicaSet
metadata:
name: web
labels:
app: somewebapp
type: web
spec:
replicas: 2
selector:
matchLabels:
type: web
template:
metadata:
labels:
type: web
spec:
containers:
- name: httpd
image: registry.redhat.io/rhscl/httpd-24-rhel7
EOL
kubectl apply -f rs.yaml
- Verify a ReplicaSet was created and there are 2 replicas
kubectl get rs
# OR a more specific way: kubectl get -f rs.yaml
- List the Pods running and save the output somewhere
kubectl get po > running_pods.txt
- Remove the label (type=web) from one of the Pods created by the ReplicaSet
kubectl label pod <POD_NAME> type-
- List the Pods running. Are there more Pods running after removing the label? Why?
Yes, there is an additional Pod running because once the label (used as a matching selector) was removed, the Pod became independent meaning, it's not controlled by the ReplicaSet anymore and the ReplicaSet was missing replicas based on its definition so, it created a new Pod.
- Verify the ReplicaSet indeed created a new Pod