6.20.5. 動的プロビジョニング


Common Internet File System (CIFS) ダイアレクト/Server Message Block (SMB) プロトコルボリュームの動的プロビジョニング用のストレージクラスを作成できます。ボリュームをプロビジョニングすると、ストレージクラスで定義された source の下に永続ボリューム (PV) 名を持つサブディレクトリーが作成されます。

前提条件

  • CIFS/SMB CSI Driver Operator およびドライバーがインストールされている。
  • 実行中の OpenShift Container Platform クラスターにログインしている。
  • SMB サーバーをインストールしており、サーバーに関する次の情報を把握している。

    • ホスト名
    • 共有名
    • ユーザー名およびパスワード

手順

動的プロビジョニングを設定するには、以下を行います。

  1. 以下のコマンドと次のサンプル YAML ファイルを使用して、Samba サーバーにアクセスするためのシークレットを作成します。

    $ oc create -f <file_name>.yaml

    シークレット YAML ファイルの例

    apiVersion: v1
    kind: Secret
    metadata:
      name: smbcreds 
    1
    
      namespace: samba-server 
    2
    
    stringData:
      username: <username> 
    3
    
      password: <password> 
    4

    1
    Samba サーバーのシークレットの名前。
    2
    Samba サーバーのシークレットの namespace。
    3
    Samba サーバーのシークレットのユーザー名。
    4
    Samba サーバーのシークレットのパスワード
  2. 次のサンプル YAML ファイルを使用して次のコマンドを実行して、ストレージクラスを作成します。

    $ oc create -f <sc_file_name>.yaml 
    1
    1 1
    ストレージクラス YAML ファイルの名前。

    ストレージクラスのサンプル YAML ファイル

    apiVersion: storage.k8s.io/v1
    kind: StorageClass
    metadata:
      name: <sc_name> 
    1
    
    provisioner: smb.csi.k8s.io
    parameters:
      source: //<hostname>/<shares> 
    2
    
      csi.storage.k8s.io/provisioner-secret-name: smbcreds 
    3
    
      csi.storage.k8s.io/provisioner-secret-namespace: samba-server 
    4
    
      csi.storage.k8s.io/node-stage-secret-name: smbcreds 
    5
    
      csi.storage.k8s.io/node-stage-secret-namespace: samba-server 
    6
    
    reclaimPolicy: Delete
    volumeBindingMode: Immediate
    mountOptions:
      - dir_mode=0777
      - file_mode=0777
      - uid=1001
      - gid=1001

    2
    ストレージクラス名
    3 5
    Samba サーバーをインストールし、クラスターからアクセスできるようにする必要があります。<`hostname>` は Samba サーバーのホスト名、<shares> はエクスポートされた共有で使用するために設定したパスを表します。
    4 6
    前の手順で設定した Samba サーバーのシークレットの名前。csi.storage.k8s.io/provisioner-secret が指定されている場合は、source の下に PV 名を持つサブディレクトリーが作成されます。
    前の手順で設定した Samba サーバーのシークレットの namespace。
  3. PVC を作成します。

    1. 次のサンプル YAML ファイルを使用して次のコマンドを実行し、PVC を作成します。

      $ oc create -f <pv_file_name>.yaml 
      1
      1 1
      PVC YAML ファイルの名前。

      PVC YAML ファイルの例

      kind: PersistentVolumeClaim
      apiVersion: v1
      metadata:
        name: <pvc_name> 
      1
      
      spec:
        accessModes:
          - ReadWriteMany
        resources:
          requests:
            storage: <storage_amount> 
      2
      
        storageClassName: <sc_name> 
      3

      2
      PVC の名前。
      3
      ストレージ要求の量。
      前の手順で作成した CIFS/SMB ストレージクラスの名前。
    2. 次のコマンドを実行して、PVC が作成され、"バインド" ステータスになっていることを確認します。

      $ oc describe pvc <pvc_name> 
      1
      1 1
      前の手順で作成した PVC の名前。

      出力例

      Name:          pvc-test
      Namespace:     default
      StorageClass:  samba
      Status:        Bound 
      1
      
      ...

      PVC のステータスは Bound です。
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

Red Hat ドキュメントについて

Legal Notice

Theme

© 2026 Red Hat
トップに戻る