commit c70b422bef075a7d8d808c2bfcd5c26d23357b23 Author: ducoterra Date: Tue May 19 21:21:50 2020 -0400 init diff --git a/docker-compose.yaml b/docker-compose.yaml new file mode 100644 index 0000000..8b5f057 --- /dev/null +++ b/docker-compose.yaml @@ -0,0 +1,18 @@ +version: '3' + +services: + grafana: + image: grafana/grafana + ports: + - 3000:3000 + volumes: + - grafana-data:/var/lib/grafana + networks: + - graphite_data-net + +networks: + graphite_data-net: + external: true + +volumes: + grafana-data: \ No newline at end of file diff --git a/k8s/deploy.yaml b/k8s/deploy.yaml new file mode 100644 index 0000000..5af5723 --- /dev/null +++ b/k8s/deploy.yaml @@ -0,0 +1,33 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: grafana +spec: + replicas: 1 + selector: + matchLabels: + app: grafana + template: + metadata: + labels: + app: grafana + spec: + containers: + - name: grafana + image: grafana/grafana + resources: + requests: + memory: 256Mi + cpu: 100m + limits: + memory: 1Gi + cpu: '1' + ports: + - containerPort: 3000 + volumeMounts: + - mountPath: /var/lib/grafana + name: grafana-data + volumes: + - name: grafana-data + persistentVolumeClaim: + claimName: grafana-data \ No newline at end of file diff --git a/k8s/ingress.yaml b/k8s/ingress.yaml new file mode 100644 index 0000000..01429fb --- /dev/null +++ b/k8s/ingress.yaml @@ -0,0 +1,39 @@ +apiVersion: traefik.containo.us/v1alpha1 +kind: IngressRoute +metadata: + name: grafana-internal-tls + annotations: + kubernetes.io/ingress.class: traefik-internal +spec: + entryPoints: + - websecure + tls: + certResolver: myresolver + domains: + - main: "*.ducoterra.net" + routes: + - match: Host(`grafana.ducoterra.net`) + kind: Rule + services: + - name: grafana-web + port: 3000 + +--- + +apiVersion: traefik.containo.us/v1alpha1 +kind: IngressRoute +metadata: + name: grafana-internal-web + annotations: + kubernetes.io/ingress.class: traefik-internal +spec: + entryPoints: + - web + routes: + - match: Host(`grafana.ducoterra.net`) + kind: Rule + services: + - name: grafana-web + port: 3000 + middlewares: + - name: httpsredirect \ No newline at end of file diff --git a/k8s/pvc/pvc.yaml b/k8s/pvc/pvc.yaml new file mode 100644 index 0000000..1338b0b --- /dev/null +++ b/k8s/pvc/pvc.yaml @@ -0,0 +1,11 @@ +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: grafana-data +spec: + storageClassName: nfs-encrypted + accessModes: + - ReadWriteOnce + resources: + requests: + storage: 16Gi \ No newline at end of file diff --git a/k8s/service.yaml b/k8s/service.yaml new file mode 100644 index 0000000..1a172f5 --- /dev/null +++ b/k8s/service.yaml @@ -0,0 +1,11 @@ +apiVersion: v1 +kind: Service +metadata: + name: grafana-web +spec: + selector: + app: grafana + ports: + - port: 3000 + targetPort: 3000 + type: ClusterIP \ No newline at end of file