Skip to content

Commit ba55a66

Browse files
committed
feat(graphite-exporter): add graphite exporter, remove old nas vm
1 parent b707073 commit ba55a66

7 files changed

Lines changed: 134 additions & 97 deletions

File tree

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
apiVersion: v1
2+
kind: ConfigMap
3+
metadata:
4+
name: graphite-mapping
5+
namespace: monitoring
6+
data:
7+
graphite_mapping.conf: |
8+
mappings:
9+
- match: 'scale\.monitoring\.(.*)'
10+
match_type: regex
11+
name: '${1}'
12+
labels:
13+
job: truenas
14+
source: scale_monitoring
Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
---
2+
apiVersion: helm.toolkit.fluxcd.io/v2
3+
kind: HelmRelease
4+
metadata:
5+
name: graphite-exporter
6+
spec:
7+
interval: 15m
8+
chartRef:
9+
kind: OCIRepository
10+
name: graphite-exporter
11+
values:
12+
controllers:
13+
graphite-exporter:
14+
enabled: true
15+
type: deployment
16+
annotations:
17+
reloader.stakater.com/auto: "true"
18+
replicas: 1
19+
20+
containers:
21+
app:
22+
image:
23+
repository: prom/graphite-exporter
24+
tag: v0.16.0
25+
pullPolicy: IfNotPresent
26+
args:
27+
- "--graphite.mapping-config=/tmp/graphite_mapping.conf"
28+
probes:
29+
liveness:
30+
enabled: false
31+
securityContext:
32+
allowPrivilegeEscalation: false
33+
capabilities:
34+
drop: ["ALL"]
35+
resources:
36+
requests:
37+
cpu: 100m
38+
memory: 128Mi
39+
limits:
40+
cpu: 200m
41+
memory: 256Mi
42+
43+
service:
44+
graphite-exporter:
45+
primary: true
46+
controller: graphite-exporter
47+
type: LoadBalancer
48+
ports:
49+
metrics:
50+
port: 9108
51+
graphite:
52+
port: 9109
53+
protocol: TCP
54+
graphite-udp:
55+
port: 9109
56+
protocol: UDP
57+
58+
serviceMonitor:
59+
main:
60+
enabled: true
61+
serviceName: "graphite-exporter"
62+
endpoints:
63+
- port: metrics
64+
scheme: http
65+
path: /metrics
66+
interval: 1m
67+
68+
persistence:
69+
graphite-mapping:
70+
enabled: true
71+
type: configMap
72+
name: graphite-mapping
73+
globalMounts:
74+
- path: /tmp/graphite_mapping.conf
75+
subPath: graphite_mapping.conf
76+
readOnly: true
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
---
2+
# yaml-language-server: $schema=https://www.schemastore.org/kustomization.json
3+
apiVersion: kustomize.config.k8s.io/v1beta1
4+
kind: Kustomization
5+
resources:
6+
- helmrelease.yaml
7+
- source.yaml
8+
- graphite_mapping.yaml
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
---
2+
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/source.toolkit.fluxcd.io/ocirepository_v1.json
3+
apiVersion: source.toolkit.fluxcd.io/v1
4+
kind: OCIRepository
5+
metadata:
6+
name: graphite-exporter
7+
spec:
8+
interval: 15m
9+
layerSelector:
10+
mediaType: application/vnd.cncf.helm.chart.content.v1.tar+gzip
11+
operation: copy
12+
ref:
13+
tag: 4.6.2
14+
url: oci://ghcr.io/bjw-s-labs/helm/app-template
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
---
2+
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/kustomize.toolkit.fluxcd.io/kustomization_v1.json
3+
apiVersion: kustomize.toolkit.fluxcd.io/v1
4+
kind: Kustomization
5+
metadata:
6+
name: &app graphite-exporter
7+
namespace: &ns monitoring
8+
spec:
9+
targetNamespace: *ns
10+
commonMetadata:
11+
labels:
12+
app.kubernetes.io/name: *app
13+
interval: 30m
14+
timeout: 5m
15+
path: ./kubernetes/apps/monitoring/graphite-exporter/app
16+
prune: true
17+
sourceRef:
18+
kind: GitRepository
19+
name: iac
20+
namespace: flux-system
21+
wait: false

kubernetes/apps/monitoring/kustomization.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ resources:
77
- fluent-bit/ks.yaml
88
- gatus/ks.yaml
99
- grafana/ks.yaml
10+
- graphite-exporter/ks.yaml
1011
- headlamp/ks.yaml
1112
- keda/ks.yaml
1213
- kromgo/ks.yaml

terraform/proxmox/NAS.tf

Lines changed: 0 additions & 97 deletions
This file was deleted.

0 commit comments

Comments
 (0)