diff --git a/home/cluster/argocd/apps/tmobile-exporter.yaml b/home/cluster/argocd/apps/tmobile-exporter.yaml new file mode 100644 index 0000000..79924b0 --- /dev/null +++ b/home/cluster/argocd/apps/tmobile-exporter.yaml @@ -0,0 +1,23 @@ +apiVersion: argoproj.io/v1alpha1 +kind: Application +metadata: + name: tmobile-exporter + namespace: argocd + finalizers: + - resources-finalizer.argocd.argoproj.io +spec: + project: default + source: + repoURL: https://codeberg.org/gmcintire/infra.git + targetRevision: main + path: home/cluster/tmobile-exporter + destination: + server: https://kubernetes.default.svc + namespace: monitoring + syncPolicy: + automated: + prune: true + selfHeal: true + syncOptions: + - CreateNamespace=true + - ServerSideApply=true diff --git a/home/cluster/tmobile-exporter/deployment.yaml b/home/cluster/tmobile-exporter/deployment.yaml new file mode 100644 index 0000000..700d816 --- /dev/null +++ b/home/cluster/tmobile-exporter/deployment.yaml @@ -0,0 +1,44 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: tmobile-exporter + namespace: monitoring + labels: + app.kubernetes.io/name: tmobile-exporter +spec: + replicas: 1 + selector: + matchLabels: + app.kubernetes.io/name: tmobile-exporter + template: + metadata: + labels: + app.kubernetes.io/name: tmobile-exporter + spec: + containers: + - name: exporter + image: ghcr.io/tpaulus/tmobile-internet-exporter:main + imagePullPolicy: Always + args: + - -target=192.168.12.1 + - -listen=:9099 + ports: + - name: metrics + containerPort: 9099 + protocol: TCP + resources: + requests: + cpu: 10m + memory: 16Mi + limits: + memory: 64Mi + securityContext: + runAsNonRoot: true + runAsUser: 65532 + runAsGroup: 65532 + allowPrivilegeEscalation: false + readOnlyRootFilesystem: true + capabilities: + drop: ["ALL"] + seccompProfile: + type: RuntimeDefault diff --git a/home/cluster/tmobile-exporter/kustomization.yaml b/home/cluster/tmobile-exporter/kustomization.yaml new file mode 100644 index 0000000..a33121c --- /dev/null +++ b/home/cluster/tmobile-exporter/kustomization.yaml @@ -0,0 +1,5 @@ +apiVersion: kustomize.config.k8s.io/v1beta1 +kind: Kustomization +resources: + - deployment.yaml + - service.yaml diff --git a/home/cluster/tmobile-exporter/service.yaml b/home/cluster/tmobile-exporter/service.yaml new file mode 100644 index 0000000..9216f65 --- /dev/null +++ b/home/cluster/tmobile-exporter/service.yaml @@ -0,0 +1,19 @@ +apiVersion: v1 +kind: Service +metadata: + name: tmobile-exporter + namespace: monitoring + labels: + app.kubernetes.io/name: tmobile-exporter + annotations: + prometheus.io/scrape: "true" + prometheus.io/port: "9099" + prometheus.io/job: tmobile_gateway +spec: + selector: + app.kubernetes.io/name: tmobile-exporter + ports: + - name: metrics + port: 9099 + targetPort: metrics + protocol: TCP