Storage-K8S
1. Overview
- Storage in Kubernetes provides both persistent and ephemeral storage options for applications.
- Storage abstraction in Kubernetes involves resources like Persistent Volumes (PV), Persistent Volume Claims (PVC), and Storage Classes to streamline provisioning and management.
1.1. Components of Kubernetes Storage
- Persistent Volume (PV):
- Cluster storage provisioned by administrators or dynamically via storage classes.
- Functions independently of pod lifecycle with defined capacity and access mode.
- Persistent Volume Claim (PVC):
- User-requested storage specifying size and access modes (ReadWriteOnce, ReadOnlyMany, ReadWriteMany).
- Binds to a PV that meets the claim’s specifications.
- Storage Classes:
- Define different storage types and characteristics like replication and performance.
- Enable dynamic volume provisioning.
- Applications leverage StorageClass to align volumes with performance requirements.
1.2. Connection between PV, PVC, and Storage Classes
- PVCs abstract storage for users; PVs represent the actual storage resource.
- Storage Classes offer templates for dynamically provisioning PVs based on application needs.
- Kubernetes provisions a PV automatically upon PVC creation that matches the desired StorageClass.
1.3. Considerations in Kubernetes Storage
- Data Security: Implement encryption, access controls, and network policies.
- Storage Performance: Monitor IOPS, latency, and throughput relative to application demands.
- Backup and Recovery: Develop strategies and use tools for data recovery.
- Capacity Planning: Evaluate resource utilization and anticipate future needs for optimal storage allocation.
1.4. Approaches for Smarter Storage Management in K8S
- Automate monitoring and alert systems for storage usage and performance metrics.
- Update Storage Classes regularly to incorporate new storage technology advancements.
- Design storage architecture with scalability and high availability in mind.
- checkout CSI, for flexible storage classes
- also read up on non-persistent storage options (Ephemeral Volumes)
Tags::k8s: