Úložisko v Kubernetes
Aplikácie využívajú disky z rôznych príčin:
Stav aplikácie musí byť oddelený od procesu
Kubernetes "nevie" o diskovom priestore
https://docs.microsoft.com/en-us/azure/aks/concepts-storage
Kuberntes "obalí" úložisko do svojho objektu.
Prístup k zložke je:
https://kubernetes.io/docs/concepts/storage/persistent-volumes/#raw-block-volume-support,
Statické mapovanie.
PersistentVolume vytvorí administrátor (kubectl apply).Dynamické mapovanie.
PersistentVolumeClaim.Afinita: Zväzok bude naviazaný na konkrétny uzol.
Potrebujeme:
Objekt ktorý patrí k aplikácii, vytvárame ho spolu s Deployment alebo StatefulSet
PersistentVolumePrístup k lokálnemu alebo distribuovanému súborovému systému
+------------+ Binding +--------------+
| Persistent |<--------| Persistent |
| Volume | | Volume Claim |
+------------+ +--------------+
Hardware Container
(podobné ako Deployment)
Deklarujeme PODy ktoré aplikácia potrebuje
Deklarujeme nároky aplikácie na zväzky
StatefulSet je závislý na PersistentVolume.
POD pomocou ReplicaSetPersistentVolume pomocou PersistentVolumeClaim Storage
+------------------+
| PersistentVolume | LoadBalancer
+------------------+
^ P.V.Claim ^
| |
+--------------+ Port +-----------+
| POD Template |------>| Service |
| ReplicaSet | +-----------+
| StatefulSet |
+--------------+
node
Najhoršia úloha je "uvoľniť" 2 TB disk plný rôznych dát