Deploy SUSE Enterprise Storage on Kubernetes in just 7 easy steps
The technical preview for running SUSE Enterprise Storage on Rook using SUSE CaaSP Platform has been out for about a month now, but if you haven’t had time to give it a try, here’s how to do it quickly and easily.
One of the goals of the tech preview is to show the path forward for running Ceph software-defined storage in containers on Kubernetes, an innovation that allows users to focus on the storage they need, not the process of setting it up.
In this example, you’ll need a running CaaSP 4.0 cluster and registration codes for CaaSP and SUSE Enterprise Storage 6. You can get free 60-day trials when you download the products. You’ll also need kubectl running on your workstation with access to your CaaSP cluster.
Note that this is not a production setup. It’s for testing purposes only. Accessing the Ceph Dashboard is done via a transient node port, not a true ingress controller (such as metallb). If you want a more permanent solution, adding an ingress controller should be part of your plan.
1. On your CaaSP admin node, add the SES 6 product
# SUSEConnect --product ses/6/x86_64 -r YOUR-KEY-HERE
2. Install the rook-k8s-yaml package
# zypper in rook-k8s-yaml
3. Apply the YAML files, located in /usr/share/k8s-yaml/rook/ceph/
# cd /usr/share/k8s-yaml/rook/ceph/ # kubectl apply -f common.yaml -f operator.yaml
4. Wait for the pods to come up
# kubectl get pods -n rook-ceph -w
5. Deploy the cluster and wait for the pods to come up
# kubectl apply -f cluster.yaml # kubectl get pods -n rook-ceph -w
6. Expose the Ceph Dashboard by applying the dashboard and loadbalancer YAML files
# kubectl apply -f dashboard-external-https.yaml # kubectl apply -f dashboard-loadbalancer.yaml # kubectl apply -f dashboard-ingress-https.yaml
7. Get the node port for the dashboard and get the password for Ceph Manager by exposing the secret
# kubectl get service rook-ceph-mgr-dashboard-external-https -n rook-ceph -o wide NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE SELECTOR rook-ceph-mgr-dashboard-external-https NodePort 10.109.65.184 <none> 8443:31046/TCP 26m app=rook-ceph-mgr,rook_cluster=rook-ceph k # kubectl -n rook-ceph get secret rook-ceph-dashboard-password -o jsonpath="{['data']['password']}" | base64 --decode && echo
You can now access the Ceph Dashboard by pointing your browser to one of your CaaSP worker nodes and using the external port, 31046 in this case:
https://worker2.example.com:31046
Learn more about this tech preview and ways to customize it at https://www.suse.com/betaprogram/containerized-ses-on-caasp/.
No comments yet