Skip to content

Commit

Permalink
Merge branch 'master' into patch-1
Browse files Browse the repository at this point in the history
  • Loading branch information
paulfantom authored Apr 12, 2021
2 parents 2e0394e + 4b7918c commit afba052
Show file tree
Hide file tree
Showing 75 changed files with 1,071 additions and 508 deletions.
1 change: 1 addition & 0 deletions .github/ISSUE_TEMPLATE/bug.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@ Note: This repository is about prometheus-operator itself, if you have questions

`Insert image tag or Git SHA here`
<!-- Try kubectl -n monitoring describe deployment prometheus-operator -->
<!-- Note: please provide operator version and not kube-prometheus/helm chart version -->

* Kubernetes version information:

Expand Down
5 changes: 5 additions & 0 deletions .github/ISSUE_TEMPLATE/feature.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,10 @@ labels: kind/feature
Feel free to ask questions in #prometheus-operator on Kubernetes Slack!
Note: This repository is about prometheus-operator itself, if you have questions about:
- helm installation, go to https://github.com/prometheus-community/helm-charts repository
- kube-prometheus setup, go to https://github.com/prometheus-operator/kube-prometheus
-->

**What is missing?**
Expand All @@ -20,5 +24,6 @@ Feel free to ask questions in #prometheus-operator on Kubernetes Slack!

`Insert image tag or Git SHA here`
<!-- Try kubectl -n monitoring describe deployment prometheus-operator -->
<!-- Note: please provide operator version and not kube-prometheus/helm chart version -->

**Anything else we need to know?**:
1 change: 1 addition & 0 deletions .github/ISSUE_TEMPLATE/support.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ Note: This repository is about prometheus-operator itself, if you have questions

`Insert image tag or Git SHA here`
<!-- Try: kubectl -n monitoring describe deployment prometheus-operator -->
<!-- Note: please provide operator version and not kube-prometheus/helm chart version -->

* Kubernetes version information:

Expand Down
13 changes: 11 additions & 2 deletions .golangci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,15 @@ run:
deadline: 10m

linters:
disable-all: true
enable:
- unused
- golint

issues:
exclude-rules:
- path: _test.go
linters:
- errcheck

linters-settings:
errcheck:
exclude: scripts/errcheck_excludes.txt
45 changes: 37 additions & 8 deletions ADOPTERS.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,14 @@
# Adopters
---
title: "Adopters"
date: 2021-03-08T23:50:39+01:00
draft: false
---

This document tracks people and use cases for the Prometheus Operator in production. By creating a list of production use cases we hope to build a community of advisors that we can reach out to with experience using various the Prometheus Operator applications, operation environments, and cluster sizes. The Prometheus Operator development team may reach out periodically to check-in on how the Prometheus Operator is working in the field and update this list.

## Giant Swarm

https://www.giantswarm.io/
[giantswarm.io](https://www.giantswarm.io/)

Environments: AWS, Azure, Bare Metal

Expand All @@ -16,6 +20,19 @@ Details:
- 760000 samples/s
- 35M active series

## Gitpod

[gitpod.io](https://www.gitpod.io/)

Environments: Google Cloud

Uses [kube-prometheus](https://github.com/prometheus-operator/kube-prometheus): Yes (with additional Gitpod mixins)

Details:
- One prometheus instance per cluster (8 so far)
- 20000 samples/s
- 1M active series

## Kinvolk Lokomotive Kubernetes

https://kinvolk.io/lokomotive-kubernetes/
Expand All @@ -31,7 +48,7 @@ Details:

## Lunar

https://lunar.app/
[lunar.app](https://lunar.app/)

Environments: AWS

Expand All @@ -44,7 +61,7 @@ Details:

## OpenShift

https://www.openshift.com/
[openshift.com](https://www.openshift.com/)

Environments: AWS, Azure, Google Cloud, Bare Metal

Expand All @@ -54,9 +71,19 @@ This is a meta user; please feel free to document specific OpenShift users!

All OpenShift clusters use the Prometheus Operator to manage the cluster monitoring stack as well as user workload monitoring. This means the Prometheus Operator's users include all OpenShift customers.

## Opstrace

[https://opstrace.com](https://opstrace.com)

Environments: AWS, Google Cloud

Uses [kube-prometheus](https://github.com/prometheus-operator/kube-prometheus): No

Opstrace installations use the Prometheus Operator internally to collect metrics and to alert. Opstrace users also often use the Prometheus Operator to scrape their own aplications and remote_write those metrics to Opstrace.

## Polar Signals

https://polarsignals.com/
[polarsignals.com](https://polarsignals.com/)

Environment: Google Cloud

Expand All @@ -69,7 +96,7 @@ Details:

## Skyscanner

https://skyscanner.net/
[skyscanner.net](https://skyscanner.net/)

Environment: AWS

Expand All @@ -82,7 +109,7 @@ Details (optional):

## Veepee

https://www.veepee.com
[veepee.com](https://www.veepee.com)

Environments: Bare Metal

Expand All @@ -95,7 +122,7 @@ Details (optional):

## VSHN AG

https://www.vshn.ch/
[vshn.ch](https://www.vshn.ch/)

Environments: AWS, Azure, Google Cloud, cloudscale.ch, Exoscale, Swisscom

Expand All @@ -105,6 +132,8 @@ Details (optional):
- A huge fleet of OpenShift and Kubernetes clusters, each using Prometheus Operator
- All managed by [Project Syn](https://syn.tools/), leveraging Commodore Components like [component-rancher-monitoring](https://github.com/projectsyn/component-rancher-monitoring) which re-uses Prometheus Operator

---

## <Insert Company/Organization Name>

https://our-link.com/
Expand Down
15 changes: 14 additions & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,17 @@
# How to Contribute
---
title: "Contributing"
description: "How can I contribute to the Prometheus Operator and kube-prometheus?"
lead: ""
date: 2021-03-08T08:48:57+00:00
lastmod: 2021-03-08T08:48:57+00:00
draft: false
images: []
menu:
docs:
parent: "prologue"
weight: 200
toc: true
---

This project is licensed under the [Apache 2.0 license](LICENSE) and accept
contributions via GitHub pull requests. This document outlines some of the
Expand Down
36 changes: 28 additions & 8 deletions Documentation/api.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,16 @@
<br>
<div class="alert alert-info" role="alert">
<i class="fa fa-exclamation-triangle"></i><b> Note:</b> Starting with v0.39.0, Prometheus Operator requires use of Kubernetes v1.16.x and up.
</div>

# API Docs
---
title: "API"
description: "Generated API docs for the Prometheus Operator"
lead: ""
date: 2021-03-08T08:49:31+00:00
draft: false
images: []
menu:
docs:
parent: "operator"
weight: 1000
toc: true
---

This Document documents the types introduced by the Prometheus Operator to be consumed by users.

Expand All @@ -22,6 +29,7 @@ This Document documents the types introduced by the Prometheus Operator to be co
* [EmbeddedObjectMetadata](#embeddedobjectmetadata)
* [EmbeddedPersistentVolumeClaim](#embeddedpersistentvolumeclaim)
* [Endpoint](#endpoint)
* [MetadataConfig](#metadataconfig)
* [NamespaceSelector](#namespaceselector)
* [PodMetricsEndpoint](#podmetricsendpoint)
* [PodMetricsEndpointTLSConfig](#podmetricsendpointtlsconfig)
Expand Down Expand Up @@ -281,11 +289,22 @@ Endpoint defines a scrapeable endpoint serving Prometheus metrics.
| honorTimestamps | HonorTimestamps controls whether Prometheus respects the timestamps present in scraped data. | *bool | false |
| basicAuth | BasicAuth allow an endpoint to authenticate over basic authentication More info: https://prometheus.io/docs/operating/configuration/#endpoints | *[BasicAuth](#basicauth) | false |
| metricRelabelings | MetricRelabelConfigs to apply to samples before ingestion. | []*[RelabelConfig](#relabelconfig) | false |
| relabelings | RelabelConfigs to apply to samples before scraping. More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config | []*[RelabelConfig](#relabelconfig) | false |
| relabelings | RelabelConfigs to apply to samples before scraping. Prometheus Operator automatically adds relabelings for a few standard Kubernetes fields and replaces original scrape job name with __tmp_prometheus_job_name. More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config | []*[RelabelConfig](#relabelconfig) | false |
| proxyUrl | ProxyURL eg http://proxyserver:2195 Directs scrapes to proxy through this endpoint. | *string | false |

[Back to TOC](#table-of-contents)

## MetadataConfig

Configures the sending of series metadata to remote storage.

| Field | Description | Scheme | Required |
| ----- | ----------- | ------ | -------- |
| send | Whether metric metadata is sent to remote storage or not. | bool | false |
| sendInterval | How frequently metric metadata is sent to remote storage. | string | false |

[Back to TOC](#table-of-contents)

## NamespaceSelector

NamespaceSelector is a selector for selecting either all namespaces or a list of namespaces.
Expand Down Expand Up @@ -316,7 +335,7 @@ PodMetricsEndpoint defines a scrapeable endpoint of a Kubernetes Pod serving Pro
| honorTimestamps | HonorTimestamps controls whether Prometheus respects the timestamps present in scraped data. | *bool | false |
| basicAuth | BasicAuth allow an endpoint to authenticate over basic authentication. More info: https://prometheus.io/docs/operating/configuration/#endpoint | *[BasicAuth](#basicauth) | false |
| metricRelabelings | MetricRelabelConfigs to apply to samples before ingestion. | []*[RelabelConfig](#relabelconfig) | false |
| relabelings | RelabelConfigs to apply to samples before ingestion. More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config | []*[RelabelConfig](#relabelconfig) | false |
| relabelings | RelabelConfigs to apply to samples before scraping. Prometheus Operator automatically adds relabelings for a few standard Kubernetes fields and replaces original scrape job name with __tmp_prometheus_job_name. More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config | []*[RelabelConfig](#relabelconfig) | false |
| proxyUrl | ProxyURL eg http://proxyserver:2195 Directs scrapes to proxy through this endpoint. | *string | false |

[Back to TOC](#table-of-contents)
Expand Down Expand Up @@ -717,6 +736,7 @@ RemoteWriteSpec defines the remote_write configuration for prometheus.
| tlsConfig | TLS Config to use for remote write. | *[TLSConfig](#tlsconfig) | false |
| proxyUrl | Optional ProxyURL | string | false |
| queueConfig | QueueConfig allows tuning of the remote write queue parameters. | *[QueueConfig](#queueconfig) | false |
| metadataConfig | MetadataConfig configures the sending of series metadata to remote storage. | *[MetadataConfig](#metadataconfig) | false |

[Back to TOC](#table-of-contents)

Expand Down
23 changes: 17 additions & 6 deletions Documentation/compatibility.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,16 @@
<br>
<div class="alert alert-info" role="alert">
<i class="fa fa-exclamation-triangle"></i><b> Note:</b> Starting with v0.39.0, Prometheus Operator requires use of Kubernetes v1.16.x and up.
</div>

# Compatibility
---
title: "Compatibility"
description: "The Prometheus Operator supports a number of Kubernetes and Prometheus releases."
lead: ""
date: 2021-03-08T08:49:31+00:00
draft: false
images: []
menu:
docs:
parent: "operator"
weight: 200
toc: true
---

The Prometheus Operator supports a number of Kubernetes and Prometheus releases.

Expand Down Expand Up @@ -57,6 +64,10 @@ The versions of Prometheus compatible to be run with the Prometheus Operator are
* v2.23.0
* v2.24.0
* v2.24.1
* v2.25.0
* v2.25.1
* v2.25.2
* v2.26.0

## Alertmanager

Expand Down
35 changes: 21 additions & 14 deletions Documentation/design.md
Original file line number Diff line number Diff line change
@@ -1,22 +1,29 @@
<br>
<div class="alert alert-info" role="alert">
<i class="fa fa-exclamation-triangle"></i><b> Note:</b> Starting with v0.39.0, Prometheus Operator requires use of Kubernetes v1.16.x and up.
</div>

# Design
---
title: "Design"
description: "This document describes the design and interaction between the custom resource definitions that the Prometheus Operator introduces."
lead: ""
date: 2021-03-08T08:49:31+00:00
draft: false
images: []
menu:
docs:
parent: "operator"
weight: 100
toc: true
---

This document describes the design and interaction between the custom resource definitions that the Prometheus Operator introduces.

The custom resources that the Prometheus Operator introduces are:

* `Prometheus`
* `Alertmanager`
* `ThanosRuler`
* `ServiceMonitor`
* `PodMonitor`
* `Probe`
* `PrometheusRule`
* `AlertmanagerConfig`
* [Prometheus](#prometheus)
* [Alertmanager](#alertmanager)
* [ThanosRuler](#thanosruler)
* [ServiceMonitor](#servicemonitor)
* [PodMonitor](#podmonitor)
* [Probe](#probe)
* [PrometheusRule](#prometheusrule)
* [AlertmanagerConfig](#alertmanagerconfig)

## Prometheus

Expand Down
19 changes: 13 additions & 6 deletions Documentation/high-availability.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,16 @@
<br>
<div class="alert alert-info" role="alert">
<i class="fa fa-exclamation-triangle"></i><b> Note:</b> Starting with v0.39.0, Prometheus Operator requires use of Kubernetes v1.16.x and up.
</div>

# High Availability
---
title: "High Availability"
description: "High Availability is a must for the monitoring infrastructure."
lead: ""
date: 2021-03-08T08:49:31+00:00
draft: false
images: []
menu:
docs:
parent: "operator"
weight: 300
toc: true
---

High availability is not only important for customer facing software, but if the monitoring infrastructure is not highly available, then there is a risk that operations people are not notified for alerts of the customer facing software. Therefore high availability must be just as thought through for the monitoring stack, as for anything else.

Expand Down
14 changes: 13 additions & 1 deletion Documentation/rbac-crd.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,16 @@
# RBAC for Prometheus Operator CRDs
---
title: "RBAC for CRDs"
description: "Aggregate permissions on the Prometheus Operator CustomResourceDefinitions."
lead: ""
date: 2021-03-08T08:49:31+00:00
draft: false
images: []
menu:
docs:
parent: "operator"
weight: 420 # nice
toc: true
---

## Aggregated ClusterRoles

Expand Down
Loading

0 comments on commit afba052

Please sign in to comment.