Storage Patterns
Local Storage Optimization
Rook Configuration
apiVersion: ceph.rook.io/v1
kind: CephCluster
metadata:
name: edge-storage
namespace: rook-ceph
spec:
dataDirHostPath: /var/lib/rook
mon:
count: 3
allowMultiplePerNode: false
mgr:
count: 1
storage:
useAllNodes: true
useAllDevices: false
config:
storeType: bluestore
databaseSizeMB: "1024"
journalSizeMB: "1024"
Data Locality
StorageClass Configuration
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: edge-local-storage
provisioner: kubernetes.io/no-provisioner
volumeBindingMode: WaitForFirstConsumer
reclaimPolicy: Retain
Cache Management
Redis Edge Cache
apiVersion: redis.redis.opstreelabs.in/v1beta1
kind: RedisCluster
metadata:
name: edge-cache
spec:
kubernetesConfig:
image: redis:7.2
resources:
requests:
cpu: 100m
memory: 128Mi
limits:
cpu: 500m
memory: 512Mi
storage:
volumeClaimTemplate:
spec:
accessModes: ["ReadWriteOnce"]
storageClassName: edge-local-storage
resources:
requests:
storage: 5Gi
redisConfig:
maxmemory: "400mb"
maxmemory-policy: "allkeys-lru"
activedefrag: "yes"
Best Practices
- Storage Architecture
- Data tiering
- Cache hierarchies
- Replication strategies
- Backup policies
- Performance Optimization
- I/O scheduling
- Buffer management
- Cache warming
- Write coalescing
- Data Management
- Lifecycle policies
- Retention rules
- Sync strategies
- Cleanup procedures
- Reliability
- Error handling
- Data recovery
- Consistency checks
- Health monitoring