oefenexamens mix 3 Flashcards
registry
place where we can push/pull images to/from
-A
alle namespaces
als je een bestand wil verplaatsen
k get pods > /root/pods
verschil tussen canary en green/blue
Canary Deployment: Nieuwe versie wordt geleidelijk uitgerold naar een klein percentage gebruikers. Problemen kunnen snel gedetecteerd worden met minimaal risico.
Blue/Green Deployment: Twee identieke omgevingen (blauw en groen). Het verkeer wordt volledig omgeschakeld naar de nieuwe versie nadat deze is getest.
bij beide strategieen maak je een 2e deployment aan met een nieuw versie nummer. bij green blue wijzig je de selector in de service naar de nieuwe deployment. Bij canary hebben ze dezelfde label en service selector heeft die label. dan verhoog je geleidelijk het aantal replicas van de een naar de ander.
ctr + k in nano
regels verwijderen
kubectl get node -o wide
kubectl get service -o wide
internal Ip van nodeport
nordeport (30080)
samen curl
curl 172.30.1.2:30080
commando op 2 verschillende manieren definieren
- lijst
command:
- /bin/sh
- -c
- “sleep 2 && echo done”
of 2. enkele string
command: [“sleep”, “2”, “&&”, “….”]
bij complexere commandos met && || | kies optie 1
hoe kom je er achter waar de rol naar assigned is?
Which account is the kube-proxy role assigned to?
create rol
create a Role:- kubectl create role developer –namespace=default –verb=list,create,delete –resource=pods
create a RoleBinding
kubectl create rolebinding dev-user-binding –namespace=default –role=developer –user=dev-user
k describe role developer -n blue
Name: developer
Labels: <none>
Annotations: <none>
PolicyRule:
Resources Non-Resource URLs Resource Names Verbs
--------- ----------------- -------------- -----
pods [] [blue-app] [get watch create delete]</none></none>
Resource Names= de naam van de pod in dit geval
wat is een apigroup en hoe weet je de juiste api group?
In Kubernetes worden verschillende soorten resources (zoals Pods, Deployments, Services, etc.) ingedeeld in verschillende API Groups.
Pods vallen onder de core API, dus de API Group is leeg (“”).
Deployments vallen onder de “apps” API Group.
kubectl api-resources
Met het commando kubectl api-resources kun je een lijst krijgen van alle beschikbare resources in je cluster, samen met de bijbehorende API Groups.
veelgerbuikte api groups
Core API (geen API Group):
Pods (“”)
Namespaces (“”)
Services (“”)
ConfigMaps (“”)
Secrets (“”)
“apps”:
Deployments (apps/v1)
StatefulSets (apps/v1)
ReplicaSets (apps/v1)
“batch”:
Jobs (batch/v1)
CronJobs (batch/v1)
“extensions” (voor oudere versies van Kubernetes):
Ingresses (extensions/v1beta1)
“networking.k8s.io”:
Ingresses (networking.k8s.io/v1)
NetworkPolicies (networking.k8s.io/v1)
in role moet je bijv de api group neerzetten
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
creationTimestamp: “2025-01-13T14:51:38Z”
name: developer
namespace: blue
resourceVersion: “3707”
uid: eb89350e-c751-4897-9159-69b08e69eb40
rules:
- apiGroups:
- “”
resourceNames:
- dark-blue-app
resources:
- pods
verbs:
- get
- watch
- create
- delete
- apiGroups:
- apps
resources:
- depployments
verbs:
- create
~
~