基本
helmでデプロイされたバージョンの確認
helm list -n rook-ceph
クラスター HEALTH の確認
kubectl -n rook-ceph get cephcluster
rook-ceph-operator podの確認
kubectl -n rook-ceph get pods -l app=rook-ceph-operator
Deploymentのバージョン確認(単発)
kubectl -n rook-ceph get deployments \ -l rook_cluster=rook-ceph \ -o jsonpath='{range .items[*]}{.metadata.name}{" req/upd/avl: "}{.spec.replicas}{"/"}{.status.updatedReplicas}{"/"}{.status.readyReplicas}{" rook-version="}{.metadata.labels.rook-version}{"\n"}{end}'
Deploymentのバージョン確認(watch)
watch --exec kubectl -n rook-ceph get deployments \ -l rook_cluster=rook-ceph \ -o jsonpath='{range .items[*]}{.metadata.name}{" req/upd/avl: "}{.spec.replicas}{"/"}{.status.updatedReplicas}{"/"}{.status.readyReplicas}{" rook-version="}{.metadata.labels.rook-version}{"\n"}{end}'
Deploy(Upgrade)
helm upgrade rook-ceph rook-release/rook-ceph \ --namespace rook-ceph \ --version v1.x.y
helm upgrade rook-ceph-cluster rook-release/rook-ceph-cluster \ --namespace rook-ceph \ --set operatorNamespace=rook-ceph \ -f cluster-values.yaml \ --version v1.x.y
cluster-values.yaml
cephClusterSpec: storage: nodes: - devices: - name: /dev/nvme0n1p3 name: k8s-worker1 - devices: - name: /dev/nvme0n1p3 name: k8s-worker2 - devices: - name: /dev/nvme0n1p3 name: k8s-worker3 useAllDevices: false useAllNodes: false
Helm repo の更新
helm repo update
利用可能な v1.x チャートのバージョンを確認します。
curl -s https://charts.rook.io/release/index.yaml | grep "version: v1.x"
最新の v1.x.y をデプロイします。
Rook/Ceph v1.15 to v1.16
# 事前確認 kubectl -n rook-ceph get cephcluster kubectl -n rook-ceph get pods | grep holder # 何も出ないこと
# バージョン確認 helm repo update curl -s https://charts.rook.io/release/index.yaml | grep "version: v1.16"
helm upgrade rook-ceph rook-release/rook-ceph \ --namespace rook-ceph \ --reset-values \ --version v1.16.9
“Deploymentのバージョン確認(watch)”で全てバージョンが上がったことを確認して次に進む
helm upgrade rook-ceph-cluster rook-release/rook-ceph-cluster \ --namespace rook-ceph \ --set operatorNamespace=rook-ceph \ -f cluster-values.yaml \ --version v1.16.9
$ helm list -n rook-ceph NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION rook-ceph rook-ceph 7 2026-03-07 18:38:29.120698231 +0900 JST deployed rook-ceph-v1.16.9 v1.16.9 rook-ceph-cluster rook-ceph 5 2026-03-07 18:46:51.587038792 +0900 JST deployed rook-ceph-cluster-v1.16.9 v1.16.9 $ kubectl -n rook-ceph get cephcluster NAME DATADIRHOSTPATH MONCOUNT AGE PHASE MESSAGE HEALTH EXTERNAL FSID rook-ceph /var/lib/rook 3 608d Ready Cluster created successfully HEALTH_OK 18be74a6-d73c-4f2f-b5c6-267d7e2b43c9 $ kubectl -n rook-ceph get pods -l app=rook-ceph-operator NAME READY STATUS RESTARTS AGE rook-ceph-operator-8545c779d8-xg52s 1/1 Running 0 14m $ kubectl -n rook-ceph get deployments -l rook_cluster=rook-ceph -o jsonpath='{range .items[*]}{.metadata.name}{" req/upd/avl: "}{.spec.replicas}{"/"}{.status.updatedReplicas}{"/"}{.status.readyReplicas}{" rook-version="}{.metadata.labels.rook-version}{"\n"}{end}' rook-ceph-crashcollector-k8s-worker1 req/upd/avl: 1/1/1 rook-version=v1.16.9 rook-ceph-crashcollector-k8s-worker2 req/upd/avl: 1/1/1 rook-version=v1.16.9 rook-ceph-crashcollector-k8s-worker3 req/upd/avl: 1/1/1 rook-version=v1.16.9 rook-ceph-exporter-k8s-worker1 req/upd/avl: 1/1/1 rook-version=v1.16.9 rook-ceph-exporter-k8s-worker2 req/upd/avl: 1/1/1 rook-version=v1.16.9 rook-ceph-exporter-k8s-worker3 req/upd/avl: 1/1/1 rook-version=v1.16.9 rook-ceph-mds-ceph-filesystem-a req/upd/avl: 1/1/1 rook-version=v1.16.9 rook-ceph-mds-ceph-filesystem-b req/upd/avl: 1/1/1 rook-version=v1.16.9 rook-ceph-mgr-a req/upd/avl: 1/1/1 rook-version=v1.16.9 rook-ceph-mgr-b req/upd/avl: 1/1/1 rook-version=v1.16.9 rook-ceph-mon-a req/upd/avl: 1/1/1 rook-version=v1.16.9 rook-ceph-mon-b req/upd/avl: 1/1/1 rook-version=v1.16.9 rook-ceph-mon-c req/upd/avl: 1/1/1 rook-version=v1.16.9 rook-ceph-osd-0 req/upd/avl: 1/1/1 rook-version=v1.16.9 rook-ceph-osd-1 req/upd/avl: 1/1/1 rook-version=v1.16.9 rook-ceph-osd-2 req/upd/avl: 1/1/1 rook-version=v1.16.9 rook-ceph-rgw-ceph-objectstore-a req/upd/avl: 1/1/1 rook-version=v1.16.9
Rook/Ceph v1.16 to v1.17
K8Sはv1.27以上であること → OK
$ kubectl version Client Version: v1.33.9 Kustomize Version: v5.6.0 Server Version: v1.33.9
# 事前確認 kubectl -n rook-ceph get cephcluster kubectl -n rook-ceph get pods | grep holder # 何も出ないこと
# バージョン確認 helm repo update curl -s https://charts.rook.io/release/index.yaml | grep "version: v1.17"
helm upgrade rook-ceph rook-release/rook-ceph \ --namespace rook-ceph \ --reset-values \ --version v1.17.9
“Deploymentのバージョン確認(watch)”で全てバージョンが上がったことを確認して次に進む
helm upgrade rook-ceph-cluster rook-release/rook-ceph-cluster \ --namespace rook-ceph \ --set operatorNamespace=rook-ceph \ -f cluster-values.yaml \ --version v1.17.9
