This commit is contained in:
2024-05-12 12:03:32 +02:00
parent 599d175f82
commit 2890064fd4
191 changed files with 893 additions and 1068 deletions

View File

@@ -0,0 +1,12 @@
locals {
common-labels = {
"vynil.solidite.fr/owner-name" = var.instance
"vynil.solidite.fr/owner-namespace" = var.namespace
"vynil.solidite.fr/owner-category" = var.category
"vynil.solidite.fr/owner-component" = var.component
"app.kubernetes.io/managed-by" = "vynil"
"app.kubernetes.io/name" = var.component
"app.kubernetes.io/instance" = var.instance
}
}

View File

@@ -0,0 +1,7 @@
const NS=config.namespace;
const SRC=src;
const DEST=dest;
fn pre_pack() {
shell("helm repo add prometheus-community https://prometheus-community.github.io/helm-charts");
shell(`helm template prometheus-community prometheus-community/kube-prometheus-stack --namespace=vynil-monitor --values values.yml >${global::SRC}/chart.yaml`);
}

View File

@@ -0,0 +1,83 @@
---
apiVersion: vinyl.solidite.fr/v1beta1
kind: Component
category: monitor
metadata:
name: thanos-ruler
description: null
options:
domain:
default: your-company
examples:
- your-company
type: string
domain_name:
default: your_company.com
examples:
- your_company.com
type: string
images:
default:
operator:
pull_policy: IfNotPresent
registry: docker.io
repository: to-be/defined
tag: v1.0.0
examples:
- operator:
pull_policy: IfNotPresent
registry: docker.io
repository: to-be/defined
tag: v1.0.0
properties:
operator:
default:
pull_policy: IfNotPresent
registry: docker.io
repository: to-be/defined
tag: v1.0.0
properties:
pull_policy:
default: IfNotPresent
enum:
- Always
- Never
- IfNotPresent
type: string
registry:
default: docker.io
type: string
repository:
default: to-be/defined
type: string
tag:
default: v1.0.0
type: string
type: object
type: object
ingress_class:
default: traefik
examples:
- traefik
type: string
issuer:
default: letsencrypt-prod
examples:
- letsencrypt-prod
type: string
sub_domain:
default: to-be-set
examples:
- to-be-set
type: string
dependencies: []
providers:
kubernetes: true
authentik: true
kubectl: true
postgresql: null
mysql: null
restapi: null
http: null
gitea: null
tfaddtype: null

View File

@@ -0,0 +1,29 @@
# Source: kube-prometheus-stack/templates/thanos-ruler/servicemonitor.yaml
apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
name: kube-prometheus-stack-thanos-ruler
namespace: vynil-monitor
labels:
app: kube-prometheus-stack-thanos-ruler
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: prometheus-community
app.kubernetes.io/version: "58.5.0"
app.kubernetes.io/part-of: kube-prometheus-stack
chart: kube-prometheus-stack-58.5.0
release: "prometheus-community"
heritage: "Helm"
spec:
selector:
matchLabels:
app: kube-prometheus-stack-thanos-ruler
release: "prometheus-community"
self-monitor: "true"
namespaceSelector:
matchNames:
- "vynil-monitor"
endpoints:
- port: web
path: "/metrics"

View File

@@ -0,0 +1,39 @@
# Source: kube-prometheus-stack/templates/thanos-ruler/ruler.yaml
apiVersion: monitoring.coreos.com/v1
kind: ThanosRuler
metadata:
name: prometheus-community-kube-thanos-ruler
namespace: vynil-monitor
labels:
app: kube-prometheus-stack-thanos-ruler
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: prometheus-community
app.kubernetes.io/version: "58.5.0"
app.kubernetes.io/part-of: kube-prometheus-stack
chart: kube-prometheus-stack-58.5.0
release: "prometheus-community"
heritage: "Helm"
spec:
image: "quay.io/thanos/thanos:v0.35.0"
replicas: 1
listenLocal: false
serviceAccountName: kube-prometheus-stack-thanos-ruler
externalPrefix: "http://kube-prometheus-stack-thanos-ruler.vynil-monitor:10902"
paused: false
logFormat: "logfmt"
logLevel: "info"
retention: "24h"
ruleNamespaceSelector: {}
ruleSelector:
matchLabels:
release: "prometheus-community"
routePrefix: "/"
securityContext:
fsGroup: 2000
runAsGroup: 2000
runAsNonRoot: true
runAsUser: 1000
seccompProfile:
type: RuntimeDefault
portName: web

View File

@@ -0,0 +1,17 @@
# Source: kube-prometheus-stack/templates/thanos-ruler/secret.yaml
apiVersion: v1
kind: Secret
metadata:
name: kube-prometheus-stack-thanos-ruler
namespace: vynil-monitor
labels:
app: kube-prometheus-stack-thanos-ruler
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: prometheus-community
app.kubernetes.io/version: "58.5.0"
app.kubernetes.io/part-of: kube-prometheus-stack
chart: kube-prometheus-stack-58.5.0
release: "prometheus-community"
heritage: "Helm"
data:

View File

@@ -0,0 +1,18 @@
---
# Source: kube-prometheus-stack/templates/thanos-ruler/serviceaccount.yaml
apiVersion: v1
kind: ServiceAccount
metadata:
name: kube-prometheus-stack-thanos-ruler
namespace: vynil-monitor
labels:
app: kube-prometheus-stack-thanos-ruler
app.kubernetes.io/name: kube-prometheus-stack-thanos-ruler
app.kubernetes.io/component: thanos-ruler
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: prometheus-community
app.kubernetes.io/version: "58.5.0"
app.kubernetes.io/part-of: kube-prometheus-stack
chart: kube-prometheus-stack-58.5.0
release: "prometheus-community"
heritage: "Helm"

View File

@@ -0,0 +1,26 @@
# Source: kube-prometheus-stack/templates/thanos-ruler/service.yaml
apiVersion: v1
kind: Service
metadata:
name: kube-prometheus-stack-thanos-ruler
namespace: vynil-monitor
labels:
app: kube-prometheus-stack-thanos-ruler
self-monitor: "true"
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: prometheus-community
app.kubernetes.io/version: "58.5.0"
app.kubernetes.io/part-of: kube-prometheus-stack
chart: kube-prometheus-stack-58.5.0
release: "prometheus-community"
heritage: "Helm"
spec:
ports:
- name: web
port: 10902
targetPort: 10902
protocol: TCP
selector:
app.kubernetes.io/name: thanos-ruler
thanos-ruler: prometheus-community-kube-thanos-ruler
type: "ClusterIP"