Lab4 Deployment & DaemonSet Solution
Deployment
Créer un deploiement nommé web (avec 4 replicas) basé sur l’image httpd
vi deployment.ymlapiVersion: apps/v1kind: Deploymentmetadata: name: app3-webspec: replicas: 4 selector: matchLabels: app3: web template: metadata: labels: app3: web spec: containers: - name: nginx image: nginx:1.17-alpineCréer un service nommé web de type NodePort rassemblant les pods du deploiment web sur le nodePort 30001
vi service.ymlapiVersion: v1kind: Servicemetadata: name: webspec: selector: app3: web type: NodePort ports: - port: 80 targetPort: 80 nodePort: 30001Appliquer les spécifications
kubectl apply -f .Visualiser le résultat
kubectl get deploy,rs,pods,svc -o wideNAME READY UP-TO-DATE AVAILABLE AGE CONTAINERS IMAGES SELECTORdeployment.apps/web 4/4 4 4 5m20s apache httpd:2.4-alpine app3=web
NAME DESIRED CURRENT READY AGE CONTAINERS IMAGES SELECTORreplicaset.apps/web-66bcf7cf77 4 4 4 5m20s apache httpd:2.4-alpine app3=web,pod-template-hash=66bcf7cf77
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATESpod/app3-ds-7ldcc 1/1 Terminating 0 3m25s 192.168.0.145 host13 <none> <none>pod/app3-ds-vkt88 1/1 Terminating 0 3m25s 192.168.0.72 host12 <none> <none>pod/web-66bcf7cf77-2q644 1/1 Running 0 5m20s 192.168.0.143 host13 <none> <none>pod/web-66bcf7cf77-bnchn 1/1 Running 0 5m20s 192.168.0.144 host13 <none> <none>pod/web-66bcf7cf77-kmmfk 1/1 Running 0 5m20s 192.168.0.71 host12 <none> <none>pod/web-66bcf7cf77-pwnnq 1/1 Running 0 5m20s 192.168.0.70 host12 <none> <none>
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE SELECTORservice/web NodePort 10.97.155.18 <none> 80:30001/TCP 5m20s app3=webDaemonSet
Créer un DaemonSet nommé debug basé sur l’image alpine
vi daemonset.ymlapiVersion: apps/v1kind: DaemonSetmetadata: name: app3-dsspec: selector: matchLabels: app3: daemon template: metadata: labels: app3: daemon spec: containers: - name: daemon image: alpine:3.12 command: ["sleep","3600"]Appliquer la spécification
kubectl apply -f daemonset.ymlVisualiser le résultat
kubectl get ds,pods -o wideNAME DESIRED CURRENT READY UP-TO-DATE AVAILABLE NODE SELECTOR AGE CONTAINERS IMAGES SELECTORdaemonset.apps/app3-ds 2 2 2 2 2 <none> 47s daemon alpine:3.12 app3=daemon
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATESpod/app3-ds-l6gcv 1/1 Running 0 47s 192.168.0.146 host13 <none> <none>pod/app3-ds-tr6z2 1/1 Running 0 47s 192.168.0.73 host12 <none> <none>