Skip to content

Commit edb47f6

Browse files
committed
add deployment files for rook kubernetes
1 parent 0b25745 commit edb47f6

File tree

4 files changed

+67
-0
lines changed

4 files changed

+67
-0
lines changed

README.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ ceph-dash - a free ceph dashboard / monitoring api
33

44
- [ceph-dash - a free ceph dashboard / monitoring api](#user-content-ceph-dash---a-free-ceph-dashboard--monitoring-api)
55
- [Newest Feature](#user-content-newest-feature)
6+
- [Rook on Kubernetes](#user-content-root-on-kubernetes)
67
- [Docker Container](#user-content-docker-container)
78
- [InfluxDB support](#user-content-influxdb-support)
89
- [Old content warning](#user-content-old-content-warning)
@@ -28,6 +29,10 @@ You can find a blog entry regarding monitoring a Ceph cluster with ceph-dash on
2829
Newest Feature
2930
--------------
3031

32+
### Root on Kubernetes
33+
34+
I recently played around with [Rook](https://rook.io/) on [Kubernetes](https://kubernetes.io/). This was so far my fastest Ceph cluster to setup. Since Rook provides some secrets and config maps already, I made the docker container for Ceph-dash compatible with their format. I also added Kubernetes deployment files in the contrib folder (tested on [GKE](https://cloud.google.com/kubernetes-engine), but should work on any Kubernetes cluster). No need to configure anything, they should just work out of the box.
35+
3136
### Docker container
3237

3338
Since everybody recently seems to be hyped as hell about the container stuff, I've decided that I can contribute to that with a ready-to-use docker container. Available at [Docker Hub](https://hub.docker.com/r/crapworks/ceph-dash/) you can pull the ceph-dash container and configure it via the following environment variables:
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
apiVersion: extensions/v1beta1
2+
kind: Ingress
3+
metadata:
4+
name: ceph-dash
5+
namespace: rook-ceph
6+
spec:
7+
backend:
8+
serviceName: ceph-dash
9+
servicePort: 5000
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
apiVersion: v1
2+
kind: Service
3+
metadata:
4+
name: ceph-dash
5+
namespace: rook-ceph
6+
spec:
7+
type: NodePort
8+
selector:
9+
app: ceph-dash
10+
ports:
11+
- protocol: TCP
12+
port: 5000
13+
targetPort: 5000

contrib/rook/ceph-dash.yaml

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
apiVersion: apps/v1
2+
kind: Deployment
3+
metadata:
4+
name: ceph-dash
5+
namespace: rook-ceph
6+
labels:
7+
app: ceph-dash
8+
spec:
9+
selector:
10+
matchLabels:
11+
app: ceph-dash
12+
template:
13+
metadata:
14+
labels:
15+
app: ceph-dash
16+
spec:
17+
containers:
18+
- image: crapworks/ceph-dash:v1.5
19+
name: ceph-dash
20+
ports:
21+
- containerPort: 5000
22+
protocol: TCP
23+
resources:
24+
requests:
25+
memory: "300Mi"
26+
cpu: "100m"
27+
limits:
28+
memory: "500Mi"
29+
cpu: "200m"
30+
env:
31+
- name: CEPHMONS
32+
valueFrom:
33+
configMapKeyRef:
34+
name: rook-ceph-mon-endpoints
35+
key: data
36+
- name: KEYRING
37+
valueFrom:
38+
secretKeyRef:
39+
name: rook-ceph-mons-keyring
40+
key: keyring

0 commit comments

Comments
 (0)