Kubernetes स्टोरेज: डिप्लॉय, स्केल, और मॉनिटर

Kubernetes परिचय

Frank Heilmann

Platform Architect and Freelance Instructor

Persistent Volumes और Persistent Volume Claims

Persistent Volumes और Persistent Volume Claims

  • स्टोरेज के मुख्य ऑब्जेक्ट: Persistent Volumes (PV), Pods के समानांतर मैनेज होते हैं
  • PVs को Pods से Persistent Volume Claims (PVC) के जरिए मैप किया जाता है
  • मैप किया गया PV, Pod रुकने, खत्म होने या रीस्टार्ट पर भी डेटा सुरक्षित रखता है
  • PVs, स्टोरेज और कंप्यूट को अलग करने में सक्षम बनाते हैं
Kubernetes परिचय

Storage Classes

Storage Classes

  • PVs का प्राविजनिंग या तो
    • Kubernetes एडमिन द्वारा मैन्युअल
    • सामान्य यूज़र द्वारा डायनेमिक
  • डायनेमिक प्राविजनिंग Storage Classes (SC) से बिना मानवीय हस्तक्षेप होती है
  • Storage Classes (SC):

    • Kubernetes एडमिन द्वारा परिभाषित
    • अलग प्रकार (अलग latency, जैसे SDD बनाम HDD, अलग backup रणनीतियाँ)
  • संदेह हो तो Storage Classes उपयोग करें ;-)

Kubernetes परिचय

सबको जोड़कर समझें

  • स्टोरेज चलाने के लिए सिर्फ तीन ऑब्जेक्ट हैं:

    • PersistentVolume
    • PersistentVolumeClaim
    • StorageClass
  • स्थायी डेटा की जरूरत वाला Pod एक PersistentVolumeClaim उपयोग करता है

  • यह PVC, Pod के लिए PersistentVolume बनवाता है
  • यह PersistentVolume क्लेम करने वाले Pod से मैप होता है
  • एक नामित StorageClass उपयोग होती है, जो PV की latency और backup रणनीति जैसे विवरण तय करती है
  • यह PersistentVolume (स्टोर किए डेटा सहित) Pod के terminate होने पर भी बना रहता है
Kubernetes परिचय

मैनिफेस्ट स्निपेट्स

PersistentVolume वाला Pod

apiVersion: v1
kind: Pod
...

spec: containers: ... volumeMounts: - name: pv-mydata mountPath: /mydata
volumes: - name: pv-mydata persistentVolumeClaim: claimName: datacamp-pvc

StorageClass के साथ PersistentVolumeClaim

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: datacamp-pvc

spec: storageClassName: "standard" accessModes: - ReadWriteOnce
resources: requests: storage: 5Gi
Kubernetes परिचय

"kubectl" कमांड्स फॉर स्टोरेज

  • kubectl में Kubernetes स्टोरेज बनाने और मॉनिटर करने के लिए पूरी कमांड-सेट है
  • उदाहरण:
    • kubectl get sc सभी उपलब्ध Storage Classes दिखाता है
    • kubectl get pvc सभी डिप्लॉय हुए Persistent Volume Claims दिखाता है
    • kubectl get pv सभी डिप्लॉय हुए Persistent Volumes दिखाता है
    • हमेशा की तरह, kubectl apply -f <manifest> से मैनिफेस्ट में घोषित स्टोरेज रिसोर्स डिप्लॉय कर सकते हैं.
Kubernetes परिचय

अभ्यास करते हैं!

Kubernetes परिचय

Preparing Video For Download...