1.29系の1.29.1+1がリリースされたのでアップグレードしてみた。
vultr-cli kubernetes list --summarize ✘ 1
ID LABEL STATUS REGION VERSION NODEPOOL# NODE#
8ba1a4b1-7a8b-4c2a-a5e2-4267afda0410 dok8s-vke1 active nrt v1.29.1+1 1 2
======================================
TOTAL NEXT PAGE PREV PAGE
1 --- ---
kubectl version
Client Version: v1.29.1
Kustomize Version: v5.0.4-0.20230601165947-6ce0bf390ce3
Server Version: v1.29.1
kubectl get node -o wide
NAME STATUS ROLES AGE VERSION INTERNAL-IP EXTERNAL-IP OS-IMAGE KERNEL-VERSION CONTAINER-RUNTIME
dok8s-vke1-np2-64a2430886ec Ready <none> 25h v1.29.1 10.25.96.5 45.77.8.35 Debian GNU/Linux 11 (bullseye) 6.1.0-0.deb11.13-amd64 containerd://1.7.12
dok8s-vke1-np2-85ef5c52932d Ready <none> 25h v1.29.1 10.25.96.8 45.76.55.86 Debian GNU/Linux 11 (bullseye) 6.1.0-0.deb11.13-amd64 containerd://1.7.12
vultr-csiがアップデートされた影響なのか、csi-vultr-nodeが正常に起動しない。下記エラーが発生してクラッシュする。
csi-vultr-plugin panic: runtime error: invalid memory address or nil pointer dereference
csi-vultr-plugin [signal SIGSEGV: segmentation violation code=0x1 addr=0x38 pc=0x8ff827]
csi-vultr-plugin
csi-vultr-plugin goroutine 14 [running]:
csi-vultr-plugin github.com/vultr/vultr-csi/driver.(*VultrNodeServer).NodeGetVolumeStats(0xc000012db8, {0xc0001bb828?, 0x89e8c0?}, 0xc00007b1d0)
csi-vultr-plugin github.com/vultr/vultr-csi/driver/node.go:199 +0x347
csi-vultr-plugin github.com/container-storage-interface/spec/lib/go/csi._Node_NodeGetVolumeStats_Handler.func1({0xb1a5a8, 0xc000298630}, {0xa120c0?, 0xc00007b1d0})
csi-vultr-plugin github.com/container-storage-interface/spec@v1.9.0/lib/go/csi/csi.pb.go:7295 +0x78
csi-vultr-plugin github.com/vultr/vultr-csi/driver.GRPCLogger({0xb1a5a8, 0xc000298630}, {0xa120c0, 0xc00007b1d0}, 0xc000076ae0, 0xc0000119b0)
csi-vultr-plugin github.com/vultr/vultr-csi/driver/server.go:130 +0x205
csi-vultr-plugin github.com/container-storage-interface/spec/lib/go/csi._Node_NodeGetVolumeStats_Handler({0x9f53c0?, 0xc000012db8}, {0xb1a5a8, 0xc000298630}, 0xc0000df380, 0xa
csi-vultr-plugin github.com/container-storage-interface/spec@v1.9.0/lib/go/csi/csi.pb.go:7297 +0x138
csi-vultr-plugin google.golang.org/grpc.(*Server).processUnaryRPC(0xc000114400, {0xb1a5a8, 0xc0002985a0}, {0xb1d858, 0xc00020e680}, 0xc0001ccb40, 0xc000117b90, 0xebb580, 0x0)
csi-vultr-plugin google.golang.org/grpc@v1.60.1/server.go:1372 +0xe49
csi-vultr-plugin google.golang.org/grpc.(*Server).handleStream(0xc000114400, {0xb1d858, 0xc00020e680}, 0xc0001ccb40)
csi-vultr-plugin google.golang.org/grpc@v1.60.1/server.go:1783 +0x1031
csi-vultr-plugin google.golang.org/grpc.(*Server).serveStreams.func2.1()
csi-vultr-plugin google.golang.org/grpc@v1.60.1/server.go:1016 +0x68
csi-vultr-plugin created by google.golang.org/grpc.(*Server).serveStreams.func2
csi-vultr-plugin google.golang.org/grpc@v1.60.1/server.go:1027 +0x12e
Stream closed EOF for kube-system/csi-vultr-node-hnzbd (csi-vultr-plugin)
この影響のせいか不明だが、PVCのマウントに時間がかかるような気がする。マウント出来ればread/write問題ない。
試しにVKE-1.28.6+1も使ってみたが、同事象が発生するのでvultr-csiの問題なのかな?と思う。
【2024/02/05追記】
2024/02/04 21:30(JST)頃からcsi-vultr-nodeのエラーが停止した。
vultr-csiが0.12.0->0.12.1にアップグレードされていたので、修正されたんだと思う。