Standardmäßig sind die Volumes eines Pods "ephemeral" also vergänglich.
Deshalb gibt es Persistant Volumes, die auch einen Neustart des Pods überdauern.
In Kubernetes gibt es viele Storage Provider, ich stelle hier mal eine einfache Variante
mit Openebs und Local Storage vor. Das ist für einen Single Node Cluster ausreichend.
Die Installation von OpenEBS muss für Alpine Linux etwas angepasst werden.
Deshalb laden wir erst das Manifest herunter
wget https://openebs.github.io/charts/openebs-operator.yaml
und passen es etwas an...
Zeile 497 state für udev-probe auf false setzen:
- key: udev-probe
name: udev probe
state: false
Zeile 595 und 596 auskommentieren:
# - name: udev
# mountPath: /run/udev
Zeile 639-642 auskommentieren:
# - name: udev
# hostPath:
# path: /run/udev
# type: Directory
Danach kann der OpenEBS Operator einfach deployed werden
kubectl apply -f openebs-operator.yaml
Abschließend wird noch die Default Storage Class festgelegt
kubectl patch storageclass openebs-hostpath -p '{"metadata": {"annotations":{"storageclass.kubernetes.io/is-default-class":"true"}}}'
Das wars, jetzt können Helm Charts mit PVC ganz normal installiert werden.