悪顎恢艶姻稼艶岳艶壊の閣看鉛顎馨艶、永艶姻壊庄壊岳艶稼岳閣看鉛顎馨艶、永艶姻壊庄壊岳艶稼岳閣看鉛顎馨艶遺鉛温庄馨の離いを尖盾する

峻さん、こんにちは。室宝蝕kグル`プの稼-看噛温敬温稼です。
まだ歎嚏の湿准ですが、歪の菩さがじわりと栖たなと房う、書晩この矧。

云籾です。
悪顎恢艶姻稼艶岳艶壊、佃しいですよね。コンテナでシステムを更廏をする縞、喟A晒は1つの仁籾になることでしょう。喟A晒する圭隈は麼に禽京が匯違議だと房いますが、嶄にはファイルで喟A晒したいときもあると房います。書晩は悪顎恢艶姻稼艶岳艶壊でストレ`ジをマウントする圭隈として、閣看鉛顎馨艶、永艶姻壊庄壊岳艶稼岳閣看鉛顎馨艶、永艶姻壊庄壊岳艶稼岳閣看鉛顎馨艶遺鉛温庄馨の離いを屁尖します。

閣看鉛顎馨艶、永艶姻壊庄壊岳艶稼岳閣看鉛顎馨艶、永艶姻壊庄壊岳艶稼岳閣看鉛顎馨艶遺鉛温庄馨の離い

はじめに

コンテナ坪何にファイルを隠贋することは竃栖ますが、コンテナを唯峭したタイミングで隠贋したファイルはえてしまいます。なので、ファイルを喟A晒したいときは、コンテナの翌にファイルを隠贋する駅勣があります。

悪顎恢艶姻稼艶岳艶壊が戻工する閣看鉛顎馨艶、永艶姻壊庄壊岳艶稼岳閣看鉛顎馨艶、永艶姻壊庄壊岳艶稼岳閣看鉛顎馨艶遺鉛温庄馨は、デ`タを喟A晒するための碧怏みを戻工します。

ゴ`ル

AWSのElastic File System (EFS)にファイルを喟A晒できるところまでを書指のゴ`ルとします。AWSでの喟A晒には麿にElastic Block Store (EBS)がありますが、EBSは1つのノ`ドしかマウントできません。}方ノ`ドで庇L晒できるKubernetesでは音脅栽がありますので、EFSを旋喘すると措いでしょう。

閣看鉛顎馨艶とは

閣看鉛顎馨艶はあらかじめ喘吭されたボリュ`ムを、リソ`スを恬撹することなく、マニフェストに岷俊峺協することで旋喘辛嬬にするものです。この仝あらかじめ喘吭されたボリュ`ム々には弼?な嶽窃が喘吭されています。蠅靴は悪顎恢艶姻稼艶岳艶壊のペ`ジ仝々を歌孚してください。

閣看鉛顎馨艶でよく聞われる嶽窃は、おそらく遺看稼韓庄乙珂温沿と皆艶界姻艶岳だと房います。ただ、この2つをh苧すると芝並が1云慕けてしまうので、艶の字氏にお三しします。書晩は、コンテナが借Pしているノ`ドの糟囃をマウントする鞄看壊岳永温岳鞄について、酒gにh苧します。參和は、鞄看壊岳永温岳鞄のイメ`ジとマニフェストです。

apiVersion: v1
kind: Pod
metadata:
  name: sample-pod
spec:
  containers:
  - name: nginx-container
    image: nginx:latest
    volumeMounts:
    - name: template-volume
      mountPath: /home/hoge
  volumes:
  - name: template-volume
    hostPath:
      path: /tmp
      type: Directory

spec.volumesには仝あらかじめ喘吭されたボリュ`ム々の秤烏を芝峰します。spec.volumes.hostPathpathにはノ`ドのパスを峺協します。typeには峺協したパスがディレクトリであることを苧幣します。

spec.containers.volumeMountsにはボリュ`ムのマウントを峺協します。nameにはマウントしたいspec.volumes.nameを峺協します。mountPathにはマウント枠のパスを峺協します。これはコンテナ坪何のパスです。

貧芝のマニフェストにより、コンテナが借Pしているノ`ドの/岳馨沿を、コンテナ坪何の/鞄看馨艶/鞄看乙艶にマウントする、という吭龍になります。

PersistentVolume (PV) とは

(參週、PV) とは、翌何の喟Aボリュ`ムを戻工するシステムとB亊して、喟A晒I囃を_隠するボリュ`ムです。AWSでは翌何の喟Aボリュ`ムとしてEFSを戻工しています。

永閣は倖艶にリソ`スを恬撹する駅勣があります。永閣はボリュ`ムリソ`スを燕屬垢襪世韻如△修贏毀紊悩里が竃栖るわけではありません。永閣を旋喘するには、コンテナと永閣を潤ぶ、永艶姻壊庄壊岳艶稼岳閣看鉛顎馨艶遺鉛温庄馨が駅勣になります。永艶姻壊庄壊岳艶稼岳閣看鉛顎馨艶遺鉛温庄馨については朔峰します。

參和はAWS EFSと、そのPVとなります。EFSの恬撹圭隈について書指の箸崋となりますので護曚靴泙后

kind: StorageClass
apiVersion: storage.k8s.io/v1
metadata:
  name: efs-sc
provisioner: efs.csi.aws.com

---

apiVersion: v1
kind: PersistentVolume
metadata:
  name: efs-pv
spec:
  capacity:
    storage: 5Gi
  accessModes:
    - ReadWriteMany
  persistentVolumeReclaimPolicy: Retain
  storageClassName: efs-sc
  csi:
    driver: efs.csi.aws.com
    volumeHandle: fs-xxxxxxxx

永閣を恬撹する念に、リソ`スを恬撹しています。StorageClassはストレ`ジのNを峰します。箭えば、書指であれば、AWS EFSを旋喘したストレ`ジである、となります。provisionerに仝艶韓壊.界壊庄.温敬壊.界看馨々を峺協しているのがそれです。

肝に永閣を恬撹します。specに永閣にvする秤烏を芝峰します。capacity.storageにはそのストレ`ジの否楚を芝峰します。掘酷皆は否楚の貧泙ないので吭龍のない芝峰ですが、永閣では駅倬酊燭箸覆辰討い襪燭瓠△修譴辰櫃な、魑韻討討い泙后

accessModesはそのボリュ`ムへのマウントについて芝峰します。ReadWriteManyは、そのボリュ`ムが鹸方のノ`ドでiみ函り/慕きzみとしてマウントされることを幣します。

persistentVolumeReclaimPolicyはそのボリュ`ムの旋喘が嶮阻したとき┘灰鵐謄覆唯峭したなど、そのボリュ`ムの朔I尖を峺協します。仝檎艶岳温庄稼々はデ`タをさずにそのまま火す、という吭龍です。麿には仝禽艶鉛艶岳艶々があり、その兆の宥り、ボリュ`ム旋喘朔はデ`タを茅します。

storageClassNameは枠ほど恬撹した皆岳看姻温乙艶遺鉛温壊壊の兆念を峺協します。

csiにはg縞に旋喘する掘酷皆を峺協します。driverは仝艶韓壊.界壊庄.温敬壊.界看馨々耕協です。volumeHandleは掘酷皆のファイルシステム鴛禽を峺協します。これにより、永閣と掘酷皆のリソ`スが摘原きます。

PersistentVolumeClaim (PVC) とは

枠にも峰べた宥り、PVはそれg悶では吭龍を撹しません。PersistentVolumeClaim (參週、PVC) によりコンテナとPVを~づけます。仝Claim々には仝箔する々や仝勣箔する々という吭龍があります。つまり、PVCには、そのコンテナが圀してるボリュ`ムを峰します。これにより、Kubernetesはコンテナが圀しているボリュ`ムと~原けてくれます。

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: efs-claim
spec:
  accessModes:
    - ReadWriteMany
  storageClassName: efs-sc
  resources:
    requests:
      storage: 5Gi

specには勣李するボリュ`ムの訳周が芝峰されます。貧芝のマニフェストでは、否楚、アクセスモ`ド、皆岳看姻温乙艶遺鉛温壊壊が訳周として芝峰されています。麿にはボリュ`ムに原嚥されたラベルでも訳周峺協が辛嬬です。

永閣をコンテナにマウントする

ではg縞にコンテナにマウントしてみましょう。

apiVersion: v1
kind: Pod
metadata:
  name: sample-pod
spec:
  containers:
  - name: nginx-container
    image: nginx:latest
    volumeMounts:
    - name: persistent-storage
      mountPath: /home/hoge
  volumes:
  - name: persistent-storage
    persistentVolumeClaim:
      claimName: efs-claim

枠ほど仝閣看鉛顎馨艶とは々でh苧した宥り、spec.volumesには仝あらかじめ喘吭されたボリュ`ム々の秤烏を芝峰します。書指喘吭されたボリュ`ムはPVとPVCです。なので、spec.volumes.persistentVolumeClaim.claimNameには枠ほど恬撹した永閣遺の兆念を峺協します。これにより、永閣遺で勣李したボリュ`ムがこのコンテナのボリュ`ムとして摘づきます。

spec.containers.volumeMountsも仝閣看鉛顎馨艶とは々でh苧した宥りです。mountPathにはマウント枠のパスを峺協します。

參貧により、掘酷皆のファイルシステムが、コンテナ坪何の/鞄看馨艶/鞄看乙艶にマウントされます。

おわりに

佃しいですね。コンテナが旋喘するボリュ`ムは悪顎恢艶姻稼艶岳艶壊が畳める、という碧を尖盾するまで、暴は永閣と永閣遺のvS來を尖盾するのに富し扮寂がかかってしまいました。しかし、この永閣と永閣遺のvSにより、コンテナとボリュ`ムがE潤栽となり、コンテナの辛衣來が互まります。書指の三で冱うと、コンテナはボリュ`ムの屎悶が掘酷皆かどうか櫃砲垢覬慴がなくなった、というのがメリットですね。

ではまた。


Recommendおすすめブログ