13
clusters/kairos/apps/fluxrepo.yaml
Normal file
13
clusters/kairos/apps/fluxrepo.yaml
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
apiVersion: kustomize.toolkit.fluxcd.io/v1
|
||||||
|
kind: Kustomization
|
||||||
|
metadata:
|
||||||
|
name: flux-apps
|
||||||
|
spec:
|
||||||
|
interval: 10m0s
|
||||||
|
path: ./apps
|
||||||
|
targetNamespace: apps
|
||||||
|
prune: true
|
||||||
|
sourceRef:
|
||||||
|
kind: GitRepository
|
||||||
|
name: flux-system
|
||||||
|
namespace: flux-system
|
||||||
6
clusters/kairos/apps/kustomization.yaml
Normal file
6
clusters/kairos/apps/kustomization.yaml
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
apiVersion: kustomize.config.k8s.io/v1beta1
|
||||||
|
kind: Kustomization
|
||||||
|
namespace: apps
|
||||||
|
resources:
|
||||||
|
- namespace.yaml
|
||||||
|
- fluxrepo.yaml
|
||||||
4
clusters/kairos/apps/namespace.yaml
Normal file
4
clusters/kairos/apps/namespace.yaml
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: Namespace
|
||||||
|
metadata:
|
||||||
|
name: apps
|
||||||
19
clusters/kairos/monitoring/grafana/helmrelease.yaml
Normal file
19
clusters/kairos/monitoring/grafana/helmrelease.yaml
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
apiVersion: helm.toolkit.fluxcd.io/v2
|
||||||
|
kind: HelmRelease
|
||||||
|
metadata:
|
||||||
|
name: grafana
|
||||||
|
spec:
|
||||||
|
chart:
|
||||||
|
spec:
|
||||||
|
chart: grafana
|
||||||
|
reconcileStrategy: ChartVersion
|
||||||
|
sourceRef:
|
||||||
|
kind: HelmRepository
|
||||||
|
name: grafana-repo
|
||||||
|
version: 8.4.1
|
||||||
|
interval: 1m0s
|
||||||
|
targetNamespace: monitoring
|
||||||
|
values:
|
||||||
|
persistence:
|
||||||
|
enabled: true
|
||||||
|
storageClassName: longhorn
|
||||||
16
clusters/kairos/monitoring/grafana/ingress.yaml
Normal file
16
clusters/kairos/monitoring/grafana/ingress.yaml
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
apiVersion: traefik.io/v1alpha1
|
||||||
|
kind: IngressRoute
|
||||||
|
metadata:
|
||||||
|
name: grafana
|
||||||
|
spec:
|
||||||
|
entryPoints:
|
||||||
|
- web
|
||||||
|
routes:
|
||||||
|
- match: Host(`grafana.k3s`)
|
||||||
|
kind: Rule
|
||||||
|
services:
|
||||||
|
- name: monitoring-grafana
|
||||||
|
namespace: monitoring
|
||||||
|
nativeLB: true
|
||||||
|
kind: Service
|
||||||
|
port: 80
|
||||||
5
clusters/kairos/monitoring/grafana/kustomization.yaml
Normal file
5
clusters/kairos/monitoring/grafana/kustomization.yaml
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
apiVersion: kustomize.config.k8s.io/v1beta1
|
||||||
|
kind: Kustomization
|
||||||
|
resources:
|
||||||
|
- helmrelease.yaml
|
||||||
|
- ingress.yaml
|
||||||
7
clusters/kairos/monitoring/helmrepo.yaml
Normal file
7
clusters/kairos/monitoring/helmrepo.yaml
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
apiVersion: source.toolkit.fluxcd.io/v1
|
||||||
|
kind: HelmRepository
|
||||||
|
metadata:
|
||||||
|
name: grafana-repo
|
||||||
|
spec:
|
||||||
|
interval: 1m0s
|
||||||
|
url: https://grafana.github.io/helm-charts
|
||||||
9
clusters/kairos/monitoring/kustomization.yaml
Normal file
9
clusters/kairos/monitoring/kustomization.yaml
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
apiVersion: kustomize.config.k8s.io/v1beta1
|
||||||
|
kind: Kustomization
|
||||||
|
namespace: monitoring
|
||||||
|
resources:
|
||||||
|
- namespace.yaml
|
||||||
|
- helmrepo.yaml
|
||||||
|
- ./loki
|
||||||
|
- ./promtail
|
||||||
|
- ./grafana
|
||||||
70
clusters/kairos/monitoring/loki/helmrelease.yaml
Normal file
70
clusters/kairos/monitoring/loki/helmrelease.yaml
Normal file
@@ -0,0 +1,70 @@
|
|||||||
|
apiVersion: helm.toolkit.fluxcd.io/v2
|
||||||
|
kind: HelmRelease
|
||||||
|
metadata:
|
||||||
|
name: loki
|
||||||
|
spec:
|
||||||
|
chart:
|
||||||
|
spec:
|
||||||
|
chart: loki
|
||||||
|
reconcileStrategy: ChartVersion
|
||||||
|
sourceRef:
|
||||||
|
kind: HelmRepository
|
||||||
|
name: grafana-repo
|
||||||
|
version: 6.7.4
|
||||||
|
interval: 1m0s
|
||||||
|
targetNamespace: monitoring
|
||||||
|
values:
|
||||||
|
loki:
|
||||||
|
auth_enabled: false
|
||||||
|
schemaConfig:
|
||||||
|
configs:
|
||||||
|
- from: "2024-04-01"
|
||||||
|
store: tsdb
|
||||||
|
object_store: s3
|
||||||
|
schema: v13
|
||||||
|
index:
|
||||||
|
prefix: loki_index_
|
||||||
|
period: 24h
|
||||||
|
ingester:
|
||||||
|
chunk_encoding: snappy
|
||||||
|
tracing:
|
||||||
|
enabled: true
|
||||||
|
querier:
|
||||||
|
max_concurrent: 2
|
||||||
|
|
||||||
|
deploymentMode: SimpleScalable
|
||||||
|
|
||||||
|
backend:
|
||||||
|
replicas: 1
|
||||||
|
read:
|
||||||
|
replicas: 1
|
||||||
|
write:
|
||||||
|
replicas: 1
|
||||||
|
|
||||||
|
# Enable minio for storage
|
||||||
|
minio:
|
||||||
|
enabled: true
|
||||||
|
persistence:
|
||||||
|
storageClass: longhorn
|
||||||
|
|
||||||
|
# Zero out replica counts of other deployment modes
|
||||||
|
singleBinary:
|
||||||
|
replicas: 0
|
||||||
|
ingester:
|
||||||
|
replicas: 0
|
||||||
|
querier:
|
||||||
|
replicas: 0
|
||||||
|
queryFrontend:
|
||||||
|
replicas: 0
|
||||||
|
queryScheduler:
|
||||||
|
replicas: 0
|
||||||
|
distributor:
|
||||||
|
replicas: 0
|
||||||
|
compactor:
|
||||||
|
replicas: 0
|
||||||
|
indexGateway:
|
||||||
|
replicas: 0
|
||||||
|
bloomCompactor:
|
||||||
|
replicas: 0
|
||||||
|
bloomGateway:
|
||||||
|
replicas: 0
|
||||||
4
clusters/kairos/monitoring/loki/kustomization.yaml
Normal file
4
clusters/kairos/monitoring/loki/kustomization.yaml
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
apiVersion: kustomize.config.k8s.io/v1beta1
|
||||||
|
kind: Kustomization
|
||||||
|
resources:
|
||||||
|
- helmrelease.yaml
|
||||||
4
clusters/kairos/monitoring/namespace.yaml
Normal file
4
clusters/kairos/monitoring/namespace.yaml
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: Namespace
|
||||||
|
metadata:
|
||||||
|
name: monitoring
|
||||||
20
clusters/kairos/monitoring/promtail/helmrelease.yaml
Normal file
20
clusters/kairos/monitoring/promtail/helmrelease.yaml
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
apiVersion: helm.toolkit.fluxcd.io/v2
|
||||||
|
kind: HelmRelease
|
||||||
|
metadata:
|
||||||
|
name: promtail
|
||||||
|
spec:
|
||||||
|
chart:
|
||||||
|
spec:
|
||||||
|
chart: promtail
|
||||||
|
reconcileStrategy: ChartVersion
|
||||||
|
sourceRef:
|
||||||
|
kind: HelmRepository
|
||||||
|
name: grafana-repo
|
||||||
|
version: 6.16.4
|
||||||
|
interval: 1m0s
|
||||||
|
targetNamespace: monitoring
|
||||||
|
values:
|
||||||
|
config:
|
||||||
|
clients:
|
||||||
|
- url: http://monitoring-loki-gateway.monitoring.svc.cluster.local:3100/loki/api/v1/push
|
||||||
|
tenant_id: 1
|
||||||
4
clusters/kairos/monitoring/promtail/kustomization.yaml
Normal file
4
clusters/kairos/monitoring/promtail/kustomization.yaml
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
apiVersion: kustomize.config.k8s.io/v1beta1
|
||||||
|
kind: Kustomization
|
||||||
|
resources:
|
||||||
|
- helmrelease.yaml
|
||||||
9
clusters/kairos/traefik/helmconfig.yaml
Normal file
9
clusters/kairos/traefik/helmconfig.yaml
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
apiVersion: helm.cattle.io/v1
|
||||||
|
kind: HelmChartConfig
|
||||||
|
metadata:
|
||||||
|
name: traefik
|
||||||
|
namespace: kube-system
|
||||||
|
spec:
|
||||||
|
valuesContent: |-
|
||||||
|
additionalArguments:
|
||||||
|
- "--api.insecure=true"
|
||||||
16
clusters/kairos/traefik/ingress.yaml
Normal file
16
clusters/kairos/traefik/ingress.yaml
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
apiVersion: traefik.io/v1alpha1
|
||||||
|
kind: IngressRoute
|
||||||
|
metadata:
|
||||||
|
name: traefik
|
||||||
|
spec:
|
||||||
|
entryPoints:
|
||||||
|
- web
|
||||||
|
routes:
|
||||||
|
- match: Host(`traefik.k3s`)
|
||||||
|
kind: Rule
|
||||||
|
services:
|
||||||
|
- name: traefik-dashboard
|
||||||
|
namespace: kube-system
|
||||||
|
nativeLB: true
|
||||||
|
kind: Service
|
||||||
|
port: 9000
|
||||||
7
clusters/kairos/traefik/kustomization.yaml
Normal file
7
clusters/kairos/traefik/kustomization.yaml
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
apiVersion: kustomize.config.k8s.io/v1beta1
|
||||||
|
kind: Kustomization
|
||||||
|
namespace: kube-system
|
||||||
|
resources:
|
||||||
|
- helmconfig.yaml
|
||||||
|
- service.yaml
|
||||||
|
- ingress.yaml
|
||||||
12
clusters/kairos/traefik/service.yaml
Normal file
12
clusters/kairos/traefik/service.yaml
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: traefik-dashboard
|
||||||
|
spec:
|
||||||
|
type: ClusterIP
|
||||||
|
selector:
|
||||||
|
app.kubernetes.io/name: traefik
|
||||||
|
ports:
|
||||||
|
- name: http
|
||||||
|
port: 9000
|
||||||
|
targetPort: 9000
|
||||||
Reference in New Issue
Block a user