--- title: "NFS Client Provisioner の設定" slug: "k8s-k8suse-nfs" tags: ["Kubernetes Service", "vpc"] updated: 2026-09-17T09:31:52Z published: 2026-09-17T09:31:52Z canonical: "guide.ncloud-docs.com/k8s-k8suse-nfs" --- > ## Documentation Index > Fetch the complete documentation index at: https://guide.ncloud-docs.com/llms.txt > Use this file to discover all available pages before exploring further. # NFS Client Provisioner の設定 VPC環境で利用できます。 NFS Client Provisionerは、PersistentVolumeClaimを用いて既に構成されている NFSサーバに、Persistent Volumeを自動で作成する Provisionerです。 Helm CLIを用いて NFS Client Provisionerをインストールし、NAVERクラウドプラットフォームの NASサービスに作成したボリュームと連携します。使用する前に以下をご参照ください。 - このガイドは Helm v3を基準に作成されました。 - Helmを使用するには、Kubectlのインストールと kubeconfigの設定を済ませておく必要があります。 - NFS Client Provisionerを用いて NASにマウントされたワーカーノードを停止する場合、停止失敗状態になります。これは OSのバグであり、マウントされた NASに対して I/Oが存在する場合に発生します。このような問題を防ぐには、[ワーカーノードから Podを退避](/docs/ja/k8s-k8suse-workernode#%EC%9B%8C%EC%BB%A4%EB%85%B8%EB%93%9C%EC%97%90%EC%84%9Cpod%EC%B6%95%EC%B6%9C)を参照して Podを退避してからノードを停止することをお勧めします。 - Kubernetes Service(VPC)は [NASボリューム CSI](/docs/ja/k8s-k8suse-nascsi)を通じて NFSベースのストレージソリューションを使用できます。NFS Client Provisionerのインストールは必須項目ではありませんが、ユーザーの便宜のために NFS Client Provisionerのガイドを提供しています。 ## NFS Client Provisionerのインストール Helmを用いて NFS Client Provisionerをインストールする方法は、次の通りです。 1. NAVERクラウドプラットフォームの NASサービスで NFSプロトコルでボリュームを作成します。 - [NASを利用する](/docs/ja/nas-start-vpc) 2. NASボリュームが作成されたら、マウント情報の IPアドレスと Path情報を確認します。 3. 以下のリンクを参照し、使用中の OSに適した方法で Helmをインストールします。 - [Helmのインストール](https://helm.sh/docs/ja/intro/install) 4. 以下のコマンドを実行して公式 Helm chart repositoryを CLIに追加します。 ``` $ helm repo add nfs-subdir-external-provisioner https://kubernetes-sigs.github.io/nfs-subdir-external-provisioner/ ``` 5. 以下のコマンドを実行して NFS Client Provisionerをインストールします。 ``` $ helm install --kubeconfig=$KUBE_CONFIG nfs-subdir-external-provisioner nfs-subdir-external-provisioner/nfs-subdir-external-provisioner \ --set nfs.server=__NAS_IP__ \ --set nfs.path=__NAS_PATH__ ``` - ユースケース - **NAS_IP** : 169.254.0.13 - **NAS_PATH** : /n000693_provisioner ## NFS Client Provisioner の設定 ### StorageClassを確認する NFS Client Provisionerのインストールが完了した後に StorageClassを確認するには、以下のコマンドを実行してください。 ``` kubectl --kubeconfig=$KUBE_CONFIG get storageclass ``` 実行結果は次の通りです。 ``` $ kubectl --kubeconfig=$KUBE_CONFIG get storageclass NAME PROVISIONER AGE nfs-client cluster.local/nfs-subdir-external-provisioner 5m49s nks-block-storage (default) blk.csi.ncloud.com 3h39m ``` ### StorageClassを変更する クラスタに基本的にブロックストレージ CSIがインストールされているので、StorageClassの照会時に nks-block-storageに defaultが表示されます。 PersistentVolumeClaimでボリュームを作成する時、その PersistentVolumeが作成される StorageClassを nfs-client-provisionerに変更するには、default設定を nfs-clientに変更します。 変更する方法に関する詳細は、以下のリンクをご参照ください。 - [Default StorageClassを変更する](https://kubernetes.io/docs/ja/tasks/administer-cluster/change-default-storage-class/#changing-the-default-storageclass) ## ボリューム作成のユースケース 以下は、Jenkinsをインストールして作成されたボリュームを確認するユースケースです。 1. 以下のコマンドを実行して Jenkinsをクラスタにインストールします。 ``` $ helm --kubeconfig=$KUBE_CONFIG install ci stable/jenkins ``` 2. インストールを完了した後、以下のコマンドを実行して `PersistentVolumeClaim`と `PersistentVolume`を確認します。 ``` $ kubectl --kubeconfig=$KUBE_CONFIG get pvc $ kubectl --kubeconfig=$KUBE_CONFIG get pv ```