環境
- Kubernetes 1.24
Kubernetesのデータ永続化にNFSを使ってみる。
NFSサーバーの構築
Kubernetesクラスタ以外のサーバーにインストールすること
sudo apt-get install -y nfs-kernel-server
/etc/exports に以下追記 *は流石に不味いので 172.16.0.0/24 とかCIDR指定すること
/data *(rw,sync,no_subtree_check,no_root_squash,no_all_squash)
反映
exportfs -ra
nfs-kernel-server起動
sudo systemctl enable nfs-kernel-server.service sudo systemctl start nfs-kernel-server.service
各クラスタサーバーにNFSクライアントのインストール
sudo apt install nfs-common
nfs-subdir-external-provisionerのインストール
手元のMacbookにて
helm repo add nfs-subdir-external-provisioner https://kubernetes-sigs.github.io/nfs-subdir-external-provisioner/
いざインストール
helm install nfs-test-provisioner nfs-subdir-external-provisioner/nfs-subdir-external-provisioner \ --set nfs.server=192.168.16.12 \ --set nfs.path=/data/kube \ --set storageClass.name=nfs-test
確認
❯ kubectl get storageclass NAME PROVISIONER RECLAIMPOLICY VOLUMEBINDINGMODE ALLOWVOLUMEEXPANSION AGE nfs-client cluster.local/nfs-subdir-external-provisioner Delete Immediate true 3m13s