This is an old revision of the document!


Laboratorul 05. Kubernetes

5.1. Pods

Nota: pe parcursul laboratoarelor de mai jos, va rog sa inlocuiti “id” cu numarul aferent fiecarui student.

  • Adaugam credentialele pentru clusterul de kubernetes

mkdir ~/.kube cp config ~/.kube

$ kubectl get nodes

  • Observam contextul actual folosit
  • Verificam conexiunea si observam contextul folosit

kubectl config view

  • Creare namespace student.
  • Fiecare student isi va crea propriul namespace, folosind id-ul student aferent.

kubectl create ns student[id]

kubectl get ns

  • Configuram kubectl sa foloseasca ca namespace implicit namespace-ul propriu.

kubectl config set-context –current –namespace=student[id]

kubectl config view

  • Editam fisierul “pod01.yaml” cu id-ul aferent fiecarui student, apoi creem un pod conform definitiei din fisier. Pod-ul se va crea in aproximativ 10 secunde. Observati output-ul celor doua comenzi get. Folositi id-ul aferent.

kubectl apply -f pod01.yaml

kubectl get pods

kubectl get pods webserver-student-id -owide

kubectl get pods webserver-student-id -oyaml

  • Intram in pod-ul nou creat si observam.

kubectl exec -it webserver-student-id – bash

root@webserver-student-id:/# cat /etc/os-release

PRETTY_NAME=“Debian GNU/Linux 10 (buster)”

NAME=“Debian GNU/Linux”

VERSION_ID=“10”

VERSION=“10 (buster)”

VERSION_CODENAME=buster

ID=debian

HOME_URL=“https://www.debian.org/

SUPPORT_URL=“https://www.debian.org/support

BUG_REPORT_URL=“https://bugs.debian.org/

root@webserver-student-id:/# exit

kubectl logs webserver-student-id

  • Stergem pod-ul creat anterior.

kubectl delete pod webserver-student-id

kubectl get po -o wide # Should output “No resources found.”

  • Cream un pod ce contine doua containere

kubectl apply -f pod02.yaml

kubectl get po -o wide

kubectl describe pod webserver

  • Rulati comenzile urmatoare una cate una si observati ca va aflati in containere diferite ale aceluiasi pod.

kubectl exec -it webserver -c webwatcher – /bin/bash

root@webserver:/# cat /etc/os-release

kubectl exec -it webserver -c webserver – /bin/bash

root@webserver:/# cat /etc/os-release

  • Stergem ceea ce am creat folosind comanda de mai jos

kubectl delete -f pod02.yaml

  • Cream pod-ul 3 folosind fisierul pod03.yaml. Avem dooua containere care impart acelasi volum.

kubectl apply -f pod03.yaml

  • Observati in definitia pod-ului cum este montat volumul html in cele doua containere
  • Mai departe verificam faptul ca aceleasi date sunt prezente in ambele containere

kubectl exec webserver -c c1 – /bin/cat /usr/share/nginx/html/index.html

kubectl exec webserver -c c2 – /bin/cat /html/index.html

  • Stergem pod-ul creat anterior

kubectl delete pod webserver

  • Pentru partea a 2-a (din 3) a laboratorului, rulati comanda:

cd ../Laborator2

devops/laboratoare/05.1627476412.txt.gz · Last modified: 2021/07/28 15:46 (external edit)
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0