Kubernetes á¡á á¯á¡áá±ážááœáẠáá¯ááºáá±á¬ááºáá±áá±á¬ á¡ááá®áá±ážááŸááºážáá»á¬ážá¡ááœáẠáá±áá¬ááá¯ááŸá±á¬ááºááŸá¯ááᯠá á®á ááºáááºááŸááºááẠáááºážáááºážáá»á¬ážá áœá¬ ááŸááá«áááºá ááá»áá¯á·á áá±ááºáá±á¬ááºáá»áá±ááŒá®á ááá»áá¯á·á áááŒá¬áá±ážáá°ážá á€áá±á¬ááºážáá«ážááœááºá áá±á¬ááºáá¯á¶ážáá áºáᯠ- Container Storage Interface ááŸáá áºááá·áº áá»áááºáááºááŒááºážá¡áá«á¡ááẠááá¯ááŸá±á¬ááºááŸá¯á áá áºáá»á¬ážááᯠáá»áááºáááºááŒááºážá¡ááœáẠááœá±ážáá»ááºá áá¬áá¯á¶ážáá¯á ááá±á¬ááá¬ážááᯠá€áá±á¬ááºážáá«ážááœáẠááŒáá·áºááŸá¯áá«áááºá
áááºážáááºáž 1- pod manifest ááœáẠPV ááᯠáááºááŸááºáá«á
Kubernetes á¡á á¯á¡áá±ážááœáẠpod áá áºáá¯ááᯠáá±á¬áºááŒááá·áº áá¯á¶ááŸáẠmanifest áá áºáá¯-
áááºááá·áºá¡áá¶á¡ááá¯ážá¡áá»ááºááᯠáá»áááºáááºáá¬ážááŒá®áž áááºááá·áºáá±áá¬ááœáẠá¡áá±á¬ááºááŒáá·áº áá®ážáá±á¬ááºážááá¯ážáá¬ážáááºááᯠáá±á¬áºááŒááá·áº áááºáá®ážáááºá áºá á¡á áááºá¡ááá¯ááºážáá»á¬ážá
á¡ááá¯ááºáž volumemounts mount á¡ááŸááºáá»á¬áž (mountPath) ááá¯ááœáŸááºááŒáá« - ááœááºááááºáá¬á¡ááœááºážá¡ááŒá²áááºážá¡áá¶á¡ááá¯ážá¡áá»ááºááá¯áááºáááºááá·áºáááºážááœáŸááºá¡ááŒáẠvolume áá¡áááºá
á¡ááá¯ááºáž x pod ááœááºá¡áá¯á¶ážááŒá¯áá±á¬ volumes á¡á¬ážáá¯á¶ážááá¯á á¬áááºážááŒá¯á á¯áááºá á¡áá¶á¡ááá¯ážá¡áá»ááºáá áºáá¯á á®áá¡áááºá á¡áá»áá¯ážá¡á á¬áž (áá»áœááºá¯ááºááá¯á·áááá á¹á ááœááºá awsElasticBlockStore) ááŸáá·áº áá»áááºáááºááŸá¯áá±á¬ááºáá»á¬ážááᯠáááºááŸááºáá«á áááºáá®ážáááºá áºááœáẠáá±á¬áºááŒáá¬ážáá±á¬ áááºááá·áº ááá·áºáááºáá»ááºáá»á¬ážááẠá¡áá¶á¡ááá¯ážá¡áá»áẠá¡áá»áá¯ážá¡á á¬ážáá±á«áºááœáẠáá°áááºáááºá
áá°áá®áá±á¬á¡áá¶á¡ááá¯ážá¡áá»ááºááᯠpod container á¡áá»á¬ážá¡ááŒá¬ážááœáẠáááŒáá¯ááºáááºáááºáž áááºáááºááá¯ááºáááºá á€áááºážá¡á¬ážááŒáá·áº ááá°áá®áá±á¬ á¡ááá®áá±ážááŸááºážáá¯ááºáááºážá ááºáá»á¬ážááẠáá°áá®áá±á¬áá±áá¬ááᯠááá°ááá¯ááºáááºá
Kubernetes ááẠááá¯á·á áá¯á·á¡ááœááºááœááºááŸáá ááºááááºážá á€áá»áááºáááºááŸá¯áááºážáááºážááᯠá áááºáá®ááœááºáá²á·ááŒá®áž ááá±á·áá±ááºááœáẠáááºážáááºážááẠáá±ááºáá±á¬ááºáá»áá±ááŒá®ááŒá áºáááºá
áááºážááá¯á¡áá¯á¶ážááŒá¯áá¬ááœáẠááŒá¿áá¬áá»á¬ážá áœá¬ááŸááááºá
- á¡ááœá²á¡á¬ážáá¯á¶ážááᯠááá¯ááºááá¯ááºáááºáá®ážááááºááŒá áºááŒá®áž Kubernetes ááẠáá»áœááºá¯ááºááá¯á·á¡ááœáẠáááºááá·áºá¡áá¬ááá¯áá»áŸ áááºáá®ážááá±ážááá¯ááºáá«á
- Volume áá áºáá¯á á®á¡ááœáẠaccess parameters áá»á¬ážááẠáá°ážááŒá¬ážááŒá®áž volume ááá¯á¡áá¯á¶ážááŒá¯ááá·áº pods á¡á¬ážáá¯á¶ážá manifests áá»á¬ážááœáẠáááºážááá¯á·ááᯠáááºááŸááºáá±ážááá«áááºá
- ááá¯ááŸá±á¬ááºááŸá¯á áá áºá¡á¬áž ááŒá±á¬ááºážáá²ááẠ(á¥ááá¬á AWS á០Google Cloud ááá¯á· ááœáŸá±á·áááº)á áááºáá®ážáááºá áºáá»á¬ážá¡á¬ážáá¯á¶ážááœáẠáááºáááºáá»á¬ážááŸáá·áº áááºáááºáá¬ážááá·áº volumes á¡áá»áá¯ážá¡á á¬ážááᯠááŒá±á¬ááºážáá²ááẠááá¯á¡ááºáááºá
á€á¡áá¬á¡á¬ážáá¯á¶ážááẠá¡ááœááºá¡áááºáááŒá±áá±á¬ááŒá±á¬áá·áº áááºááœá±á·ááœáẠá€áááºážáááºážááẠá¡áá»áá¯á·áá±á¬ á¡áá°áž volumes á¡áá»áá¯ážá¡á á¬ážáá»á¬ážááá¯áᬠáá»áááºáááºááẠá¡áá¯á¶ážááŒá¯áááº- configMapá secret, emptyDir, hostPath:
-
configMap ááŸáá·áº áá»áŸáá¯á·ááŸááºáá»ááºááá¯á·ááẠááœááºááááºáá¬á¡ááœááºážááŸá Kubernetes á០ááá¯ááºáá»á¬ážááŸáá·áºá¡áá° volume áá áºáá¯ááᯠáááºáá®ážááá¯ááºá á±ááá·áº áááºáá±á¬ááºááŸá¯ááá¬ááá»á¬ážááŒá áºáááºá
-
emptyDir ááẠpod ááá áºáááºáá¬á¡ááœááºáá¬áááºáá®ážáá¬ážáá±á¬áá¬áá®á¡áá¶á¡ááá¯ážá¡áá»ááºááŒá áºáááºá áá¬áá®áá±áá¬ááᯠá ááºážáááºááẠááá¯á·ááá¯áẠááááºážáááºážáááºá¡ááœáẠá¡áá¯á¶ážááŒá¯ááẠá¡áááºááŒá±áááºá áá±á«á·ááºáá áºáá¯ááᯠáá»ááºááá¯ááºáá±á¬á¡áá«á ááá¬ááá¯ááºáᬠá¡áá¶á¡ááá¯ážá¡áá»ááºááá¯áááºáž áá»ááºááá¯ááºááŒá®áž áá±áá¬á¡á¬ážáá¯á¶áž áá¯á¶ážááŸá¯á¶ážááœá¬ážáá«áááºá
-
hostPath - ááá·áºá¡á¬áž /etc/kubernetes á¡áá«á¡ááẠá¡ááá®áá±ážááŸááºážááŒáá·áº ááœááºááááºáá¬á¡ááœááºáž á¡áá¯ááºáá¯ááºáá±ááá·áº áá¬áá¬á áá±ááá¹áááá áºááœáẠáááºááá·áºáááºážááœáŸááºááá¯áááᯠáááºáááºááœáá·áºááŒá¯áááºá áááºážááẠá¡áá¹ááá¬ááºáááºážááá·áº á¡ááºá¹áá«áááºááŒá áºáá±á¬ááŒá±á¬áá·áº áá¯á¶ááŒá¯á¶áá±ážáá°áá«ááá»á¬ážááẠáá¯á¶ááŸááºá¡á¬ážááŒáá·áº á€á¡áá»áá¯ážá¡á á¬ážá volumes ááá¯á¡áá¯á¶ážááŒá¯ááŒááºážááᯠáá¬ážááŒá áºáá¬ážáááºá ááá¯ááºáá«áá ááá¯ááºááá¯ááºáá°áá¡ááá®áá±ážááŸááºážááẠáááºážáááœááºááááºáá¬á¡ááœááºáž HTC Kubernetes áááºážááœáŸááºááᯠáááºáááºááá¯ááºááŒá®áž á¡á á¯ááá¯ááºáááºááŸááºáá»á¬ážá¡á¬ážáá¯á¶ážááᯠááá¯ážáá°ááá¯ááºáááºááŒá áºáááºá áá¯á¶ááŸááºá¡á¬ážááŒáá·áºá hostPath volumes áá»á¬ážááᯠkube-system namespace ááœááºáááºáááºááá·áºá áá áºá¡ááá®áá±ážááŸááºážáá»á¬ážááŸáá¬á¡áá¯á¶ážááŒá¯áááºááœáá·áºááŒá¯áá¬ážáááºá
áááºážáááºáž 2. SC/PVC/PV áá®ážááá¯áá»á¬ážááŸáá·áº áá»áááºáááºááŸá¯
á¡ááŒá¬ážáá»áááºáááºááŸá¯áááºážáááºážááŸá¬ Storage á¡áááºážá¡á á¬ážá PersistentVolumeClaimá PersistentVolume á ááá±á¬ááá¬ážááŒá áºáááºá
ááá¯ááŸá±á¬ááºááŸá¯á¡áááºáž áá±áá¬ááá¯ááŸá±á¬ááºááŸá¯á áá áºááœáẠáá»áááºáááºááŸá¯áá±á¬ááºáá»á¬ážááᯠááááºážáááºážáá«á
PersistentVolumeClaim áá»áŸá±á¬ááºááœáŸá¬ááœáẠááá¯á¡ááºáááºáá»á¬áž á¡ááœáẠááá¯á¡ááºáá»ááºáá»á¬ážááᯠáá±á¬áºááŒáááºá
PersistentVolume áááºáá±á¬ááºááœáá·áº ááá·áºáááºáá»ááºáá»á¬ážááŸáá·áº á¡áá¶á¡ááá¯ážá¡áá»áẠá¡ááŒá±á¡áá±ááá¯á·ááᯠááááºážáááºážáá¬ážáááºá
á¡áá¯ááºáá®áá¬á á¡ááŸá áºáá¬á- pod manifest ááœáẠPersistentVolumeClaim á¡áá»áá¯ážá¡á á¬ážá ááá¬áááᯠááœáŸááºááŒááŒá®áž áá±á¬ááºážááá¯ááŸá¯á¡ááẠááá·áºáááºáá»ááºááŸá á€á¡ááœá²á·á¡á ááºážá á¡áááºááᯠááœáŸááºááŒáá«áááºá
PersistentVolumeClaim áááºáá®ážáááºá áºááẠá¡ááá®áá±ážááŸááºážááá¯á¡ááºááá·áº áá±áá¬ááá¬áá¡ááœáẠááá¯á¡ááºáá»ááºáá»á¬ážááᯠáá±á¬áºááŒáááºá á¡áá«á¡áááº-
- disk á¡ááœááºá¡á á¬áž;
- á¡áá¯á¶ážááŒá¯ááœáá·áºáááºážáááºáž- ReadWriteOnce ááá¯á·ááá¯áẠReadWriteMany;
- ááá¯ááŸá±á¬ááºááŸá¯ á¡áááºážááá¯á· ááá·áºáẠ- áá±áᬠááááºážáááºážááŸá¯ á áá áºááœáẠáá»áœááºá¯ááºááá¯á· áááºáá®ážááá¯áá±á¬ á¡áá¶á¡ááá¯ážá¡áá»ááºá
ááá¯ááŸá±á¬ááºáááºáž áááºáá®ážáááºá áºááẠááá¯ááŸá±á¬ááºááŸá¯á áá áºááá¯á· áá»áááºáááºááŸá¯á á¡áá»áá¯ážá¡á á¬ážááŸáá·áº ááá·áºáááºáá»ááºáá»á¬ážááᯠááááºážáááºážáá¬ážáááºá cubelet ááẠáááºážá node ááœáẠvolume ááá¯áááºáááºááẠáááºážááá¯á·ááᯠááá¯á¡ááºáááºá
PersistentVolume manifests áá»á¬ážááẠááá¯ááŸá±á¬ááºááŸá¯ á¡áááºážá¡á á¬áž ááŸáá·áº áááá»áá±á¬ volume (volume ID, path, etc.) á¡ááœáẠá¡áá¯á¶ážááŒá¯ááœáá·áº áá±á¬ááºáá»á¬ážááᯠááœáŸááºááŒáá«áááºá
PVC ááá¯áááºáá®ážáá±á¬á¡áá«ááœáẠKubernetes ááẠáááºááá·áºá¡ááœááºá¡á á¬ážááá¬áááŸáá·áº Storage á¡áááºážááá¯á¡ááºáááºááᯠááŒáá·áºááŸá¯ááŒá®áž á¡ááá²á· PersistentVolume ááᯠááœá±ážáá»ááºáááºá
ááá¯ááá¯á·áá±á¬ PV áá»á¬ážááá¯ááááŸáááá¯ááºáá«á Kubernetes ááẠá¡áá°ážáááá¯ááááºáá áºáᯠ- Provisioner (áááºážáá¡áááºááᯠStorage á¡áááºážááœááºáá±á¬áºááŒáá¬ážáááº)á á€áááá¯ááááºááẠááá¯ááŸá±á¬ááºááŸá¯á áá áºááá¯á· áá»áááºáááºááŒá®ážá ááá¯á¡ááºááá·áº á¡ááœááºá¡á á¬ážá ááá¬áááᯠáááºáá®ážáá±ážáá¬á á¡áá±á¬ááºá¡áá¬ážáá áºáᯠáááºáá¶áááŸááᬠPersistentVolumeClaim ááŸáá·áº áááºá ááºáá±ááá·áº Kubernetes á¡á á¯á¡áá±ážááœáẠPersistentVolume áááºáá®ážáááºá áºááᯠáááºáá®ážáá±ážáá«áááºá
ဠabstractions á¡á á¯á¶ááá¯ááºá¡á¬ážáá¯á¶ážááẠá¡ááá®áá±ážááŸááºážá០á¡ááºááºáá®áá±ážááŸááºážáá±á¬áºááŒááá·áºá¡ááá·áºá០á á®áá¶ááá·áºááœá²áá±ážá¡ááá·áºá¡áá áááºááá·áºááá¯ááŸá±á¬ááºááŸá¯á áá áºá¡ááŒá±á¬ááºáž á¡áá»ááºá¡áááºáá»á¬ážááᯠáááºááŸá¬ážááá¯ááºá á±áááºááŒá áºáááºá
áá±áá¬ááááºážáááºážááŸá¯á áá áºááá¯á· áá»áááºáááºááŒááºážá¡ááœáẠááá·áºáááºáá±á¬ááºáá»á¬ážá¡á¬ážáá¯á¶ážááẠá¡á á¯á¡áá±ážá á®áá¶ááá·áºááœá²áá°áá»á¬ážááœáẠáá¬áááºááŸáááá·áº ááá¯ááŸá±á¬ááºááŸá¯á¡áááºážááœáẠáááºááŸááá«áááºá AWS á០Google Cloud ááá¯á·ááŒá±á¬ááºážáá±á¬á¡áá« áááºáá¯ááºáá±á¬ááºáááá·áºá¡áá¬ááŸá¬ á¡ááá®áá±ážááŸááºážáá±á¬áºááŒáá»ááºááœáẠStorage á¡áááºážáá¡áááºááᯠPVC ááá¯á·ááŒá±á¬ááºážáááºááŒá áºáááºá Provisioner áááá¯ááááºááᯠá¡áá¯á¶ážááŒá¯á áá±áá¬ááááºážáááºážááŸá¯á¡ááœáẠáááºááá¯ááºááá¬áááᯠá¡á á¯á¡áá±ážááœáẠá¡ááá¯á¡áá»á±á¬áẠáááºáá®ážáá±ážáááºááŒá áºáááºá
áááºážáááºáž 3- ááœááºááááºáᬠááá¯ááŸá±á¬ááºááŸá¯ á¡ááºáá¬áá±á·á áº
á¡áá»áá¯ážáá»áá¯ážáá±á¬ ááá¯ááŸá±á¬ááºááŸá¯á áá áºáá»á¬ážááŸáá·áº á¡ááŒááºá¡ááŸááºáá¯á¶á·ááŒááºááá·áº áá¯ááºá¡á¬ážáá¯á¶ážááẠKubernetes core á áá áºá áááºáá áºááá¯ááºážááŒá áºáááºá áá»áœááºááœááºážáá»ááºááŒááºáááºááŸá¯áá»á¬áž ááá¯á·ááá¯áẠáá¯ááºáá±á¬ááºááá¯ááºá áœááºážá¡áá áºáá»á¬áž áá¯ááºáá±ááŸá¯ááẠá¡áá áºááœááºááŸáááŸá¯áá»á¬ážááŸáá·áº áááºá ááºáá±áááº; Kubernetes á áá¶á·ááá¯ážáá¬ážáá±á¬áá¬ážááŸááºážá¡á¬ážáá¯á¶ážá¡ááœáẠáá¯ááºááᯠááŒá±á¬ááºážáá²ááá«áááºá á€á¡áá¬á¡á¬ážáá¯á¶ážááᯠááááºážááááºážáááºááŸáá·áº áá¯ááºáá±á¬ááºáá»ááºá¡áá áºáá»á¬ážááᯠááá·áºááœááºážááẠáááºáá²áááºá
ááŒá¿áá¬ááá¯ááŒá±ááŸááºážáááºá¡ááœáẠCloud Foundryá Kubernetesá Mesos ááŸáá·áº Docker á០developer áá»á¬ážááẠContainer Storage Interface (CSI) - ááœááºááááºáá¬á á®áá¶ááá·áºááœá²ááŸá¯á áá áºá á¡ááŒááºá¡ááŸááºá¡áá»áá¯ážáááºáá±á¬ááºááŸá¯ááá¯áá±á¬áºááŒááá·áº ááá¯ážááŸááºážáá±á¬áá±á«ááºážá ááºá¡ááºáá¬áá±á·á áºááᯠáááºáá®ážááŒá®áž áááá»áá±á¬á¡áá°ážáááá¯ááºáᬠ(CSI Driver) ááᯠáááºáá®ážáá²á·áááºá ááá¯ááŸá±á¬ááºááŸá¯á áá áºá ááá¯ááŸá±á¬ááºááŸá¯á áá áºáá»á¬ážááŸáá·áº á¡ááŒááºá¡ááŸááºáá¯á¶á·ááŒááºááŸá¯á¡ááœáẠáá¯ááºá¡á¬ážáá¯á¶ážááᯠKubernetes core á០áá®ážááŒá¬ážá áá áºááá¯á· ááœáŸá±á·áá¬ážáááºá
áá¯á¶ááŸááºá¡á¬ážááŒáá·áºá CSI Driver ááœáẠNode Plugin ááŸáá·áº Controller plugin ááœáẠá¡á áááºá¡ááá¯ááºážááŸá áºáᯠáá«áááºáááºá
Node Plugin ááẠnode áá áºáá¯á á®ááœáẠá¡áá¯ááºáá¯ááºááŒá®áž Volume áá»á¬ážááᯠáááºáááºáááºááŸáá·áº áááºážááá¯á·á¡áá±á«áº áá¯ááºáá±á¬ááºáá»ááºáá»á¬ážááᯠáá¯ááºáá±á¬ááºááẠáá¬áááºááŸááááºá Controller ááááºá¡ááºááẠááá¯ááŸá±á¬ááºááŸá¯á áá áºááŸáá·áº á¡ááŒááºá¡ááŸááºá¡áá»áá¯ážáááºáá±á¬ááºáááº- volumes áá»á¬ážááᯠáááºáá®ážááŒááºáž ááá¯á·ááá¯áẠáá»ááºááŒááºážá áááºáá±á¬ááºááœáá·áºáá»á¬ážááᯠáááºááŸááºáá±ážááŒááºáž á áááºááŒáá·áºá
áááºááŸáááœááºá áá¬ááºáá±á¬ááºážáá±á¬ááºážáá»á¬ážááẠKubernetes kernel ááœááºááŸááá±áá±á¬áºáááºáž áááºážááá¯á·ááá¯á¡áá¯á¶ážááŒá¯ááẠá¡ááŒá¶ááŒá¯áá¬ážááŒááºážáááŸááá±á¬á·áá² áááºážááá¯á·áá¯ááºáá±á¬ááºááá·áºá áá áºá¡ááœáẠCSI Driver ááᯠáá°ááá¯ááºážááá·áºááœááºážááẠá¡ááŒá¶ááŒá¯áá¬ážáááºá
áááºážáá áºáá®ááœááºááŸá¯ááẠStorage á¡áááºážááŸáá áºááá·áº áá±áá¬ááá¯ááŸá±á¬ááºááŸá¯ááᯠá áááºáá¯ááºáá±á¬ááºáá±á·ááŸááá±á¬ áá°áá»á¬ážááᯠááŒá±á¬ááºááŸáá·áºá á±áá±á¬áºáááºáž á¡ááŸááºááááºááŸá¬ ááŒá±á¬ááºá áá¬áá±á¬ááºážááá·áºá¡áá¬áá áºáá¯áá»áŸ ááŒá áºááá¬áá«á áááá¯ááááºáá¬áá»á¬ážá¡ááœááºá áááºááá·áºá¡áá¬á០á¡ááŸááºáááẠááŒá±á¬ááºážáá²ááŒááºážáááŸááá« - áááºážááá¯á·ááẠStorage class á¡áááºááŒáá·áºáᬠáá¯ááºáá±á¬ááºáá²á·ááŒá®áž áááºáááºáá¯ááºáá±á¬ááºááœá¬ážáááºááŒá áºáááºá á á®áá¶ááá·áºááœá²áá°áá»á¬ážá¡ááœááºá áŠážáá±á«ááºážááá¬ážáááºáááºááŸá¯ááᯠááá·áºááœááºážááŒá®áž áááºáááºáá»á¬ážáááœá²á·á ááºážáá¯á¶ááŸá¬ ááŒá±á¬ááºážáá²ááœá¬ážáá«áááºá ááááºá áááºáááºáá»á¬ážááᯠStorage á¡áááºážáá²ááá¯á· ááá¯ááºááá¯ááºááá·áºááœááºážáá²á·áá«áá ááᯠáááºážááá¯á·ááᯠáŠážáá¯ááºáááºážááá¬ážááœáẠáŠážá áœá¬áááºááŸááºáá¬ážááŒá®ážá ááá¯á·áá±á¬áẠStorage á¡áááºážááœáẠááá·áºááœááºážááá«áááºá ááŒáá·áºááá¯ááºááẠáá¬á០ááá±á¬ááºážáá«áá°ážá
CSI áááá¯ááºáá¬ááᯠá¡áá¯á¶ážááŒá¯á Ceph ááá¯ááŸá±á¬ááºááŸá¯á áá áºáá»á¬ážááᯠáá»áááºáááºááŒááºážááŒáá·áº áááºáááá¯ááºáá±á¬ á¡áá»áá¯ážáá»á±ážáá°ážáá»á¬ážááᯠááŒáá·áºááŸá¯ááẠá¥ááá¬áá áºáá¯ááᯠááŒáá·áºááŒáá«á áá¯á·á
Ceph ááŸáá·áºá¡áá¯ááºáá¯ááºáá±á¬á¡áá«á CSI plugin ááẠbuilt-in drivers áá»á¬ážáááºááá¯ááŸá±á¬ááºááŸá¯á áá áºáá»á¬ážááŸáá·áºá¡áá¯ááºáá¯ááºáááºááœá±ážáá»ááºá áá¬áá»á¬ážááá¯áá±ážáááºá
- Dynamic disk áááºáá®ážááŸá¯á áá¯á¶ááŸááºá¡á¬ážááŒáá·áº RBD áá áºáá»á¬ážááᯠRWO áá¯ááºááœááºáᬠá¡áá¯á¶ážááŒá¯áá±á¬áºáááºáž CSI á¡ááœáẠCeph ááẠáááºážááá¯á·á¡á¬áž RWX áá¯ááºááœáẠá¡áá¯á¶ážááŒá¯ááẠááœáá·áºááŒá¯áá¬ážáááºá ááá°áá®áá±á¬ node áá»á¬ážááŸá pods á¡áá»á¬ážá¡ááŒá¬ážááẠáá°áá®áá±á¬ RDB disk ááᯠáááºážááá¯á·á node áá»á¬ážááœáẠáááºáááºááá¯ááºááŒá®áž áááºážááá¯á·ááŸáá·áº á¡ááŒáá¯ááºá¡áá¯ááºáá¯ááºááá¯ááºáááºá ááá¬ážáá»áŸáá á±áááºá á¡áá¬á¡á¬ážáá¯á¶ážááẠá€áá»áŸáá±á¬ááºááááºááá¯ááºáá« - á€áá áºááºááᯠááááºááá¯á·áááááá¬áá áºáá¯á¡ááŒá áºáᬠáá»áááºáááºááá¯ááºáááºá ááá¯ááá¯áááºááŸá¬ áááºááẠá¡ááºááºáá®áá±ážááŸááºážááᯠá¡áá»á¬ážá¡ááŒá¬ážáááºáá±á¬ááºááœáá·áºáá¯ááºááœáẠááœá²áááºáá¯ááºáá±á¬ááºááááºááŒá áºáá«áááºá
- áá»áŸááºáá áºááŒááºááá¯ááºáá»ááºáá»á¬áž áááºáá®ážááŒááºážá Kubernetes á¡á á¯á¡áá±ážááœááºá áá»áŸááºáá áºááŒááºááá¯ááºáá»ááºáá áºáá¯áááºáá®ážááẠááá¯á¡ááºáá»ááºááŸáá·áºá¡áá° áááºáá®ážáááºá áºáá áºáá¯ááᯠáááºáááºáá®ážááá¯ááºáááºá CSI ááááºá¡ááºááẠáááºážááá¯ááŒááºáááŒá®áž áá áºááºá០áá»áŸááºáá áºááŒááºááá¯ááºáá°áááºááŒá áºáááºá áááºážááᯠá¡ááŒá±áá¶á áááºááẠá¡áááºáá°ážááŒááºáž ááá¯á·ááá¯áẠPersistentVolume á áááá¹áá°áá áºáᯠááŒá¯áá¯ááºááá¯ááºáááºá
- áá áºááºá¡ááœááºá¡á á¬ážááᯠááá¯ážááŒáŸáá·áºááŒááºážá ááá¯ááŸá±á¬ááºááŸá¯ááŸáá·áº Kubernetes á¡á á¯á¡áá±ážááŸá PersistentVolume áá±á«áºááœááºá
- ááœá²áááºážáá»á¬ážá Kubernetes ááœááºáááºáá±á¬ááºáá¬ážáá±á¬ CephFS drivers áá»á¬ážááẠquotas ááá¯ááá¶á·ááá¯ážáá«á ááá¯á·áá±á¬áºáá±á¬ááºáá¯á¶ážáá±á«áº Ceph Nautilus áá«áá±á¬ CSI ááááºá¡ááºá¡áá áºáá»á¬ážááẠCephFS partitions áá»á¬ážááœáẠquotas ááá¯ááœáá·áºááá¯ááºáááºá
- áááºááá áºáá»á¬ážá CSI ááááºá¡ááºááẠPrometheus ááẠáááºááá·áº volumes áá»á¬áž áá»áááºáááºáá±áááºá áááºááá¯á·áá±á¬ áááºááœááºááŸá¯áá»á¬áž ááŒá áºááœá¬ážáá±ááẠá áááŒáá·áº á¡áá»áá¯ážáá»áá¯ážáá±á¬ áááºááá áºáá»á¬ážááᯠáá±ážá áœááºážááá¯ááºáá«áááºá
- Topology ááááá¬ážáá«á á¡á á¯á¡áá±ážááᯠáááá®áááºá¡áá±á¡áá¬ážá¡á ááŒáá·áºáá±áá¯á¶ááᯠáá±á¬áºááŒáá»ááºááœáẠááá·áºá¡á¬áž áááºááŸááºááœáá·áºááŒá¯ááŒá®áž á¡ááºá áá¬áááºááœááºááŸááá±á¬ ááá¯ááŸá±á¬ááºááŸá¯á áá áºá¡á¬áž áááºáááºááœáẠáá¯ááºáá±á¬ááºáá±áá±á¬ pods áá»á¬ážááŸáá·áº áá»áááºáááºááŒááºážá០ááŸá±á¬ááºááŒááºáá«á
CSI ááŸáááá·áº Ceph ááᯠKubernetes á¡á
á¯á¡áá±ážááá¯á· áááºááá¯á·áá»áááºáááºááááºááᯠááŒáá·áºáá«á
áá±á¬ááºážáá«ážáá±ážáá¬ážáá°- Sergey Bondarevá Southbridge ááœáẠáááá¯áá¬ááá¬ááŸááºá Kubernetes á á®áá¶ááá·áºááœá²áá°á kubespray áá®ááœááºáá° áá áºáŠážááŒá áºáááºá
á¡áááºážáááºáá±á¬ Post Scriptum ááẠááŒá±á¬áºááŒá¬áááºá¡ááœááºááá¯ááºáá±á¬áºáááºáž á¡áá»áá¯ážá¡ááœááº...
PS Sergey Bondarev ááẠá¡áá°ážááŒááºáááºáááºáááºážááŸá
áºáá¯ááᯠáŠážáá±á¬ááºáááº- ááœááºážáá¶áá¬ážáááºá
source: www.habr.com