Docker & Kubernetes for Developers · レッスン

ストレージクラスと動的プロビジョニング

StorageClassesを使ってKubernetesにオンデマンドでストレージを作成させ、手動でPersistentVolumesを用意せずにPersistentVolumeClaimsを自動的に割り当てます。

レッスン 4/413 ステップ

「ストレージクラスと動的プロビジョニング」はCoddyKit上の無料Docker & Kubernetes for Developersレッスンです。 これはレッスン4/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはDocker & Kubernetes for Developers学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Docker & Kubernetes for Developersコースには全4レッスンが含まれています。

このレッスンの一部はまだ翻訳されておらず、英語で表示されています。

The Static Provisioning Pain

With static provisioning an admin must pre-create a PersistentVolume for every claim. That does not scale and wastes capacity when claims do not match exactly.

Enter Dynamic Provisioning

A StorageClass describes a kind of storage and a provisioner. When a PVC requests that class, Kubernetes creates a matching PersistentVolume automatically.

Anatomy of a StorageClass

Key fields are the provisioner, backend-specific parameters, and policies like reclaimPolicy and volumeBindingMode.

apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: fast
provisioner: kubernetes.io/aws-ebs
parameters:
  type: gp3
reclaimPolicy: Delete
volumeBindingMode: WaitForFirstConsumer

Claiming Dynamic Storage

A PVC just names the StorageClass; no PV needs to exist beforehand.

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: data
spec:
  accessModes: [ReadWriteOnce]
  storageClassName: fast
  resources:
    requests:
      storage: 20Gi

The Default StorageClass

A cluster can mark one StorageClass as default. PVCs that omit storageClassName then use it automatically.

kubectl get storageclass

reclaimPolicy Explained

Delete removes the underlying disk when the PVC is deleted; Retain keeps it so you can recover data manually.

volumeBindingMode

WaitForFirstConsumer delays creating the volume until a Pod is scheduled, so the disk lands in the same zone as the Pod, avoiding cross-zone attach failures.

Expanding a Volume

If allowVolumeExpansion: true, you can grow a PVC by editing its requested size.

allowVolumeExpansion: true

Multiple Tiers

Offer several classes, such as fast SSD and cheap HDD, and let teams pick the right cost/performance tradeoff per workload.

CSI Drivers

Modern provisioners use the Container Storage Interface (CSI), a standard plugin model so any storage vendor can integrate without changing Kubernetes core.

Verifying Provisioning

After creating the PVC, watch it become Bound and see the auto-created PV.

kubectl get pvc data
kubectl get pv

Quick Check

Test what you have learned.

Recap

You learned how StorageClasses enable dynamic provisioning, the meaning of reclaimPolicy and volumeBindingMode, volume expansion, CSI drivers, and how PVCs bind to auto-created PVs.

無料で開始

AI チューターと学ぶ Docker & Kubernetes for Developers — 無料

ブラウザでリアルコードを書いて実行し、24/7 の AI チューターから瞬時にサポートを受け、ウェブまたはアプリで続きから学習できます。

コース
12
レッスン
48

よくある質問

「ストレージクラスと動的プロビジョニング」レッスンは無料ですか?

はい。「ストレージクラスと動的プロビジョニング」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Docker & Kubernetes for Developersコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Docker & Kubernetes for Developersコースには全4レッスンが含まれています。

「ストレージクラスと動的プロビジョニング」で何を学びますか?

StorageClassesを使ってKubernetesにオンデマンドでストレージを作成させ、手動でPersistentVolumesを用意せずにPersistentVolumeClaimsを自動的に割り当てます。 ブラウザで直接実行するハンズオンコードでDocker & Kubernetes for Developersを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

Docker & Kubernetes for Developersを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのDocker & Kubernetes for Developersは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン4/4です。

「ストレージクラスと動的プロビジョニング」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このDocker & Kubernetes for Developersレッスンでコードを書いて実行できますか?

はい。すべてのDocker & Kubernetes for Developersレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. Persistent VolumeとPersistent Volume Claim
  2. StatefulSetによるステートフルアプリケーション管理
  3. 設定用ConfigMapとSecret
  4. ストレージクラスと動的プロビジョニング
← Docker & Kubernetes for Developersに戻る