在 Kubernetes 使用 Synology NAS 的 NFS 作 Persistent storage 可以參考這一篇:
https://benyoung.blog/persistent-storage-class-in-kubernetes-backed-by-synology-nfs/
實際測試時,在 Deploy WordPress 的測試 mysql 容器一直出現 Back-off restarting failed container 錯誤
# kubectl describe pod wordpress-mysql-79c87bbdf9-w8h22
查詢錯誤的時候發現 Entrypoint Script 無法變更目錄權限,導致容器一直無法正常啟動
# kubectl logs wordpress-mysql-79c87bbdf9-w8h22
2022-06-03 14:11:14+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 5.6.51-1debian9 started.
chown: changing ownership of ‘/var/lib/mysql/’: Operation not permitted
查詢網路文章,需要對 NFS 設定作一些修改
https://blog.csdn.net/m0_46090675/article/details/122276216
開啟 Synology NAS 的 SSH 登入,修改 /etc/exports
從:
/volume1/k8s 192.168.9.0/255.255.255.0(rw,async,no_wdelay,crossmnt,insecure,all_squash,insecure_locks,sec=sys,anonuid=1024,anongid=100)
修改為:
/volume1/k8s 192.168.9.0/255.255.255.0(rw,async,no_wdelay,crossmnt,insecure,no_root_squash,insecure_locks,sec=sys,anonuid=1024,anongid=100)
主要是修改 no_root_squash
NAS 重開機後測試可正常啟動了,不過 控制台 > 共用資料夾 > NFS 權限設定 的 Squash 欄位應該不要再從網頁設定去修改了,否則儲存後還需要手動 SSH 到機器上去修正。
update 2022-6-7
後來發現直接將 Squash 設定為 「不調整」也有這個結果,但 anonuid 會有不同,持續觀察測試中…