From 97780e8c048d5fe8afa8d3688ffeecac64793d4d Mon Sep 17 00:00:00 2001 From: Edward Cheng Date: Sat, 13 Jul 2024 11:09:22 +1000 Subject: [PATCH] add new-relic monitoring --- kubernetes/infrastructure/kustomization.yaml | 1 + .../namespaces/namespaces/new-relic.yaml | 4 ++ .../infrastructure/new-relic/app/release.yaml | 39 ++++++++++++++ .../infrastructure/new-relic/new-relic.yaml | 52 +++++++++++++++++++ .../repositories/repos/new-relic.yaml | 8 +++ 5 files changed, 104 insertions(+) create mode 100644 kubernetes/infrastructure/namespaces/namespaces/new-relic.yaml create mode 100644 kubernetes/infrastructure/new-relic/app/release.yaml create mode 100644 kubernetes/infrastructure/new-relic/new-relic.yaml create mode 100644 kubernetes/infrastructure/repositories/repos/new-relic.yaml diff --git a/kubernetes/infrastructure/kustomization.yaml b/kubernetes/infrastructure/kustomization.yaml index 12834b8..f55d706 100644 --- a/kubernetes/infrastructure/kustomization.yaml +++ b/kubernetes/infrastructure/kustomization.yaml @@ -12,6 +12,7 @@ resources: - ./minio/minio.yaml # - ./mongodb/mongodb.yaml - ./namespaces/namespaces.yaml + - ./new-relic/new-relic.yaml - ./postgresql/postgresql.yaml - ./prometheus/prometheus.yaml - ./prometheus-alertmanager/prometheus-alertmanager.yaml diff --git a/kubernetes/infrastructure/namespaces/namespaces/new-relic.yaml b/kubernetes/infrastructure/namespaces/namespaces/new-relic.yaml new file mode 100644 index 0000000..f42334d --- /dev/null +++ b/kubernetes/infrastructure/namespaces/namespaces/new-relic.yaml @@ -0,0 +1,4 @@ +apiVersion: v1 +kind: Namespace +metadata: + name: new-relic diff --git a/kubernetes/infrastructure/new-relic/app/release.yaml b/kubernetes/infrastructure/new-relic/app/release.yaml new file mode 100644 index 0000000..ae7e9a7 --- /dev/null +++ b/kubernetes/infrastructure/new-relic/app/release.yaml @@ -0,0 +1,39 @@ +apiVersion: helm.toolkit.fluxcd.io/v2 +kind: HelmRelease +metadata: + name: new-relic + namespace: new-relic +spec: + releaseName: new-relic + chart: + spec: + chart: new-relic + sourceRef: + kind: HelmRepository + name: new-relic + namespace: flux-system + interval: 1h + values: + global: + cluster: RPi5 Cluster + licenseKey: ${nr_license_key} + lowDataMode: true + newrelic-infrastructure: + privileged: true + kube-state-metrics: + enabled: true + image: + tag: v2.10.0 + kubeEvents: + enabled: true + newrelic-prometheus-agent: + enabled: true + lowDataMode: true + config: + kubernetes: + integrations_filter: + enabled: false + logging: + enabled: true + newrelic-logging: + lowDataMode: true diff --git a/kubernetes/infrastructure/new-relic/new-relic.yaml b/kubernetes/infrastructure/new-relic/new-relic.yaml new file mode 100644 index 0000000..dc300d9 --- /dev/null +++ b/kubernetes/infrastructure/new-relic/new-relic.yaml @@ -0,0 +1,52 @@ +apiVersion: kustomize.toolkit.fluxcd.io/v1 +kind: Kustomization +metadata: + name: new-relic-secrets + namespace: flux-system +spec: + interval: 10m + timeout: 1m30s + retryInterval: 30s + targetNamespace: new-relic + path: ./new-relic + prune: true + sourceRef: + kind: GitRepository + namespace: flux-system + name: home-cluster-ops-secrets + dependsOn: + - name: repositories + namespace: flux-system + decryption: + provider: sops + secretRef: + name: sops-age +--- +apiVersion: kustomize.toolkit.fluxcd.io/v1 +kind: Kustomization +metadata: + name: new-relic + namespace: new-relic +spec: + interval: 10m + timeout: 1m30s + retryInterval: 30s + path: ./kubernetes/infrastructure/new-relic/app + prune: true + sourceRef: + kind: GitRepository + namespace: flux-system + name: flux-system + dependsOn: + - name: namespaces + namespace: flux-system + - name: repositories + namespace: flux-system + - name: new-relic-secrets + namespace: flux-system + - name: local-path-provisioner + namespace: local-path-storage + postBuild: + substituteFrom: + - kind: Secret + name: new-relic-secrets \ No newline at end of file diff --git a/kubernetes/infrastructure/repositories/repos/new-relic.yaml b/kubernetes/infrastructure/repositories/repos/new-relic.yaml new file mode 100644 index 0000000..df24e90 --- /dev/null +++ b/kubernetes/infrastructure/repositories/repos/new-relic.yaml @@ -0,0 +1,8 @@ +apiVersion: source.toolkit.fluxcd.io/v1beta2 +kind: HelmRepository +metadata: + name: new-relic + namespace: flux-system +spec: + interval: 6h + url: https://helm-charts.newrelic.com