diff --git a/prometheus-operator/.gitignore b/prometheus-operator/.gitignore new file mode 100644 index 000000000..9fcb793f3 --- /dev/null +++ b/prometheus-operator/.gitignore @@ -0,0 +1 @@ +uninstall.sh diff --git a/prometheus-operator/install.sh b/prometheus-operator/install.sh new file mode 100644 index 000000000..58f38651c --- /dev/null +++ b/prometheus-operator/install.sh @@ -0,0 +1,23 @@ +#!/bin/bash + +NAMESPACE=monitoring + +# Create the namespace for prometheus-operator +kubectl create namespace ${NAMESPACE} + +# Create CRDs due to a bug. More information on https://github.com/helm/charts/tree/master/stable/prometheus-operator#helm-fails-to-create-crds +kubectl apply -f https://raw.githubusercontent.com/coreos/prometheus-operator/master/example/prometheus-operator-crd/alertmanager.crd.yaml +kubectl apply -f https://raw.githubusercontent.com/coreos/prometheus-operator/master/example/prometheus-operator-crd/prometheus.crd.yaml +kubectl apply -f https://raw.githubusercontent.com/coreos/prometheus-operator/master/example/prometheus-operator-crd/prometheusrule.crd.yaml +kubectl apply -f https://raw.githubusercontent.com/coreos/prometheus-operator/master/example/prometheus-operator-crd/servicemonitor.crd.yaml +kubectl apply -f https://raw.githubusercontent.com/coreos/prometheus-operator/master/example/prometheus-operator-crd/podmonitor.crd.yaml + +# Update your local Helm chart repository cache +helm repo update + +# Install the prometheus-operator Helm chart +helm install \ + --name prometheus-operator \ + --namespace ${NAMESPACE} \ + --set prometheusOperator.createCustomResource=false \ + stable/prometheus-operator diff --git a/prometheus-operator/logo.png b/prometheus-operator/logo.png new file mode 100644 index 000000000..a3a960138 Binary files /dev/null and b/prometheus-operator/logo.png differ diff --git a/prometheus-operator/manifest.yaml b/prometheus-operator/manifest.yaml new file mode 100644 index 000000000..3e0af4484 --- /dev/null +++ b/prometheus-operator/manifest.yaml @@ -0,0 +1,10 @@ +--- +name: prometheus-operator +title: "Prometheus Operator" +version: Stable +maintainer: "@puck" +description: Prometheus Operator App install prometheus, alertmanager, grafana and other tools to monitor your kubernetes cluster. +url: https://github.com/coreos/prometheus-operator +dependencies: + - Helm +category: monitoring diff --git a/prometheus-operator/post_install.md b/prometheus-operator/post_install.md new file mode 100644 index 000000000..85bf493c6 --- /dev/null +++ b/prometheus-operator/post_install.md @@ -0,0 +1,35 @@ +# Prometheus-Operator + +The [prometheus-operator](https://github.com/coreos/prometheus-operator) +creates/configures/manages Prometheus clusters atop Kubernetes. + +## Details + +The prometheus-operator stack is installed in the `monitoring` namespace, to check the pods/services installed use: +```sh +kubectl get pods -n monitoring +kubectl get services -n monitoring +``` + +The installed services are: +* prometheus-operator +* prometheus +* alertmanager +* node-exporter +* kube-state-metrics +* grafana + +Service monitors to scrape internal kubernetes components: +* kube-apiserver +* kube-scheduler +* kube-controller-manager +* etcd +* kube-dns/coredns +* kube-proxy + + +For further details on this specific installation please see the [Helm chart](https://github.com/helm/charts/tree/master/stable/prometheus-operator). + +## Configuration + +Visit [prometheus-operator](https://github.com/coreos/prometheus-operator) to learn how to configure Prometheus & Alertmanager.