Skip to content
Snippets Groups Projects
  1. May 29, 2018
  2. May 25, 2018
  3. May 24, 2018
  4. May 18, 2018
    • Max Leonard Inden's avatar
      prometheus: Introduce RuleFile Custom Resource Definition · 9e180452
      Max Leonard Inden authored
      This patch introduces a new Custom Resource Definition to the
      Prometheus Operator - the Rule CRD. It addresses two main
      needs:
      
      1. Prometheus (alerting and recording) Rule validation during creation time
      via Kubernetes Custom Resource Definition validation.
      
      2. Life-cycle management of Prometheus application Rules alongside the
      application itself, inside the applications Kubernetes namespace, not
      necessarily the namespace of the scraping Prometheus instance.
      
      A user defines Prometheus alerting and recording Rules via a Kubernetes
      Custom Resource Definition. These Custom Resource Definitions can be
      fully validated by the Kubernetes API server during creation time via
      automatically generated OpenAPI specifications. Instead of the
      restriction of a Prometheus instance to only select Rule definitions
      inside its own namespace, the Prometheus specification is extended to
      also specify namespaces to look for Rule Custom Resource Definitions
      outside its own namespace.
      
      ---
      
      Dependent technical changes:
      
      - prometheus: Use github.com/jimmidyson/configmap-reload to reload rules
      
      - prometheus: Remove Prometheus Statefulset deletion function. Starting
      with K8s >=1.8 this is handled via OwnerReferences.
      
      - prometheus: Do not add rule files checksum to Prometheus configuration
      secret
      
      - prometheus: Update StatefulSet only on relevant changes. Instead of
      updating the Prometheus StatefulSet on every `sync()` run, only update
      it if the input parameters to `makeStatefulSet` change.  Enforce this
      via a checksum of the parameters which is saved inside the annotations
      of the statefulset.
      
      - e2e/prometheus: Check how often resources (Secret, ConfigMap,
      Prometheus CRD, Service) are updated to enforce that Prometheus Operator
      only updated created resources if necessary.
      
      - contrib/prometheus-config-reloader: Remove logic to retriev K8s
      ConfigMaps. These are mounted into the pod right away now.
      9e180452
  5. May 10, 2018
  6. May 08, 2018
  7. May 06, 2018
  8. Apr 28, 2018
  9. Apr 26, 2018
  10. Apr 22, 2018
  11. Apr 18, 2018
  12. Apr 13, 2018
  13. Apr 10, 2018
  14. Apr 09, 2018
  15. Apr 05, 2018
    • Richard Maynard's avatar
      charts: Add Core DNS Support (#1176) · 889eca2c
      Richard Maynard authored
      * charts: Add Core DNS Support
      
      With CoreDNS becoming a first class citizen it should be an optional part
      of the kube-prometheus deployment.
      
      Fixes: #1174
      
      * added kube-prometheus service and service monitor
      
      In order to work directly with a cluster created by bootkube used port 9153,
      and created a service exposing metrics since bootkube does does not. Also in
      the helm chart changed the default port to 9153 since that is the coredns
      plugins default port and to be consistent throughout the repo.
      889eca2c
  16. Apr 04, 2018
  17. Mar 26, 2018
  18. Mar 23, 2018
  19. Mar 22, 2018
  20. Mar 21, 2018
  21. Mar 19, 2018
    • Max Leonard Inden's avatar
      contrib/kube: Add rbac role to discover prometheus · 310f471c
      Max Leonard Inden authored
      The current example-app setup in the kube-prometheus project is able to
      discover scraping targets in the default namespace. It is not able to
      discover the configured Alertmanager in the monitoring namespace.
      
      This patch adds an alertmanager-discovery rbac role, to permit the
      above described action. In addition it does the following cleanups:
      
      - Remove kubeconfig configuration in deploy and teardown script. kubectl
      chooses .kube/config whenever KUBECONFIG is not set by default
      
      - Remove namespace specification option via NAMESPACE env var. In most
      of the manifests the metadata/namespace was hardcoded anyways, in
      addition in the promtheus frontend role binding the service account
      namespace is hardcoded to default as well.
      
      - Instead of `kubectl {apply,delete}` individual manifests, the deploy
      and teardown shell scripts {apply,delete} on the entire folder.
      310f471c
    • Max Leonard Inden's avatar
      Unify rule file label accross repository · 2f302943
      Max Leonard Inden authored
      In some cases we have been using `alert-rules` in some cases
      `prometheus-rulefiles`. This led to confusion [1]. Instead, unify the
      Prometheus rules configmap labels to:
      
      ```yaml
      labels:
        role: alert-rules
      ```
      
      [1] https://github.com/coreos/prometheus-operator/issues/1102
      2f302943
    • Max Leonard Inden's avatar
      contrib/kube: Restrict example-app servicemonitor to default ns · 3a6d38ea
      Max Leonard Inden authored
      The `prometheus-frontend` role of the example app kubeprometheus section
      is scoped to the default namespace. Thereby the frontend Prometheus
      instance is not able to discover anything outside of the default
      namespace. We might as well restrict the front end service monitor to
      the default namespace too.
      3a6d38ea
  22. Mar 14, 2018
  23. Mar 08, 2018
  24. Mar 05, 2018
  25. Mar 01, 2018
  26. Feb 26, 2018
Loading