# Deploy Rook-ceph via App Store This page will provide the operation steps and instructions for installing and deploying the Rook-ceph cloud native storage system on the graphical interface of Addon in the DCE 5.0 app store. ## Format conversion of Rook-ceph helm charts ### Add repo ``` [root@k8s-10-6-162-31 helm-test]# helm search repo rook NAME CHART VERSION APP VERSION DESCRIPTION rook-release/rook-ceph v1.10.5 v1.10.5 File, Block, and Object Storage Services for yo... rook-release/rook-ceph-cluster v1.10.5 v1.10.5 Manages a single Ceph cluster namespace for Rook stable/rookout 0.1.2 1.0 DEPRECATED - A Helm chart for Rookout agent on ... ``` ### Pull and unzip rook-ceph helm charts ``` [root@k8s-10-6-162-31 helm-test]# helm pull rook-release/rook-ceph [root@k8s-10-6-162-31 helm-test]# helm pull rook-release/rook-ceph-cluster [root@k8s-10-6-162-31 helm-test]# ls rook-ceph-cluster-v1.10.5.tgz rook-ceph-v1.10.5.tgz [root@k8s-10-6-162-31 helm-test]# tar xvfz rook-ceph-v1.10.5.tgz [root@k8s-10-6-162-31 helm-test]# ls rook-ceph rook-ceph-cluster-v1.10.5.tgz rook-ceph-v1.10.5.tgz ``` ### Convert rook-ceph values.yaml to json ``` [root@k8s-10-6-162-31 ~]# helm plugin install https://github.com/karuppiah7890/helm-schema-gen.git karuppiah7890/helm-schema-gen info checking GitHub for tag '0.0.4' karuppiah7890/helm-schema-gen info found version: 0.0.4 for 0.0.4/Linux/x86_64 karuppiah7890/helm-schema-gen info installed ./bin/helm-schema-gen Installed plugin: schema-gen [root@k8s-10-6-162-31 helm-test]# cd rook-ceph charts Chart.yaml README.md templates values.yaml [root@k8s-10-6-162-31 rook-ceph]# helm schema-gen values.yaml > values.schema.json [root@k8s-10-6-162-31 rook-ceph]# ls charts Chart.yaml prometheus README.md values.schema.json templates values.yaml [root@k8s-10-6-162-31 helm-test]# tar xvfz rook-ceph-cluster-v1.10.5.tgz [root@k8s-10-6-162-31 rook-ceph-cluster]# ls charts Chart.yaml prometheus README.md templates values.yaml [root@k8s-10-6-162-31 rook-ceph-cluster]# helm schema-gen values.yaml > values.schema.json [root@k8s-10-6-162-31 rook-ceph-cluster]# ls charts Chart.yaml prometheus README.md values.schema.json templates values.yaml ``` ### Pack and zip charts in json files ``` [root@k8s-10-6-162-31 helm-test]# tar zcvf rook-ceph-v1.10.5.tgz rook-ceph [root@k8s-10-6-162-31 helm-test]# tar zcvf rook-ceph-cluster-v1.10.5.tgz rook-ceph-cluster [root@k8s-10-6-162-31 helm-test]# ls rook-ceph-cluster-v1.10.5.tgz rook-ceph-v1.10.5.tgz rook-ceph rook-ceph-cluster rook-ceph-cluster-v1.10.5.tgz rook-ceph-v1.10.5.tgz ``` ## Operations in DaoCloud registry ### Upload the chart package with json format ## DCE 5.0 cluster installation Rook-ceph ### Connect the cluster to DCE 5.0 ### Install rook-ceph ## App Deployment Verification ``` [root@k8s-10-6-162-31 kubernetes]# pwd /root/rook/cluster/examples/kubernetes [root@k8s-10-6-162-31 kubernetes]# kubectl apply -f mysql.yaml service/wordpress-mysql created persistentvolumeclaim/mysql-pv-claim created deployment.apps/wordpress-mysql created [root@k8s-10-6-162-31 kubernetes]# kubectl get svc -A NAMESPACE NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE default kubernetes ClusterIP 10.96.0.1 443/TCP 31d default wordpress-mysql ClusterIP None 3306/TCP 19s kube-system kube-dns ClusterIP 10.96.0.10 53/UDP,53/TCP,9153/TCP 31d rook-ceph rook-ceph-mgr ClusterIP 10.100.204.145 9283/TCP 18h rook-ceph rook-ceph-mgr-dashboard ClusterIP 10.96.206.31 8443/TCP 18h rook-ceph rook-ceph-mon-a ClusterIP 10.101.168.203 6789/TCP,3300/TCP 18h rook-ceph rook-ceph-mon-b ClusterIP 10.102.39.21 6789/TCP,3300/TCP 18h rook-ceph rook-ceph-mon-c ClusterIP 10.109.128.35 6789/TCP,3300/TCP 18h rook-ceph rook-ceph-rgw-ceph-objectstore ClusterIP 10.108.107.0 80/TCP 18h [root@k8s-10-6-162-31 kubernetes]# kubectl get po -owide NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES wordpress-mysql-79966d6c5b-5v2r4 1/1 Running 0 12m 10.244.19.148 k8s-10-6-162-31 [root@k8s-10-6-162-31 kubernetes]# kubectl get pv -A NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS CLAIM STORAGECLASS REASON AGE pvc-9c7558cc-a152-4893-a88d-5054ab76e73e 20Gi RWO Delete Bound default/mysql-pv-claim ceph-block 36s [root@k8s-10-6-162-31 kubernetes]# kubectl get po -owide NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES wordpress-mysql-79966d6c5b-5v2r4 1/1 Running 0 12m 10.244.19.148 k8s-10-6-162-31 ``` So far, the deployment and installation verification test of Rook-ceph in the DCE 5.0 Add-on app store has been completed!