From 8f06ef269a8999bd496215ab4e915f7c8ad02ce8 Mon Sep 17 00:00:00 2001 From: shockrah Date: Wed, 27 Aug 2025 18:13:39 -0700 Subject: [PATCH] Basic health setup --- infra/vultr-kubernetes/cert-manager.yaml | 14 +++++++++ infra/vultr-kubernetes/health.yaml | 36 ++++++++++++++++++++++++ infra/vultr-kubernetes/ingress.yaml | 20 +++++++++++++ infra/vultr-kubernetes/namespaces.yaml | 6 ++++ 4 files changed, 76 insertions(+) create mode 100644 infra/vultr-kubernetes/cert-manager.yaml create mode 100644 infra/vultr-kubernetes/health.yaml create mode 100644 infra/vultr-kubernetes/ingress.yaml create mode 100644 infra/vultr-kubernetes/namespaces.yaml diff --git a/infra/vultr-kubernetes/cert-manager.yaml b/infra/vultr-kubernetes/cert-manager.yaml new file mode 100644 index 0000000..1f0a40a --- /dev/null +++ b/infra/vultr-kubernetes/cert-manager.yaml @@ -0,0 +1,14 @@ +apiVersion: cert-manager.io/v1 +kind: Issuer +metadata: + name: letsencrypt-nginx +spec: + acme: + email: dev@shockrah.xyz + server: https://acme-v02.api.letsencrypt.org/directory + privateKeySecretRef: + name: example + solvers: + - http01: + ingress: + class: nginx \ No newline at end of file diff --git a/infra/vultr-kubernetes/health.yaml b/infra/vultr-kubernetes/health.yaml new file mode 100644 index 0000000..655d8c1 --- /dev/null +++ b/infra/vultr-kubernetes/health.yaml @@ -0,0 +1,36 @@ +apiVersion: apps/v1 +kind: Pod +metadata: + name: health-deployment + namespace: testing + labels: + app: health +spec: + replicas: 1 + selector: + matchLabels: + app: health + template: + metadata: + labels: + app: health + spec: + containers: + - name: hello-health + image: hashicorp/http-echo + args: [ "-text=Healthy" ] + ports: + - containerPort: 5678 +--- +apiVersion: v1 +kind: Service +metadata: + name: health + namespace: testing +spec: + ports: + - name: http + port: 80 + targetPort: 5678 + selector: + app: health \ No newline at end of file diff --git a/infra/vultr-kubernetes/ingress.yaml b/infra/vultr-kubernetes/ingress.yaml new file mode 100644 index 0000000..b8b8a5b --- /dev/null +++ b/infra/vultr-kubernetes/ingress.yaml @@ -0,0 +1,20 @@ +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: vaccum + namespace: testing + annotations: + cert-manager.io/issuer: letsencrypt-nginx +spec: + ingressClassName: nginx + rules: + - host: example.shockrah.xyz + http: + paths: + - pathType: Prefix + path: "/" + backend: + service: + name: health + port: + number: 80 \ No newline at end of file diff --git a/infra/vultr-kubernetes/namespaces.yaml b/infra/vultr-kubernetes/namespaces.yaml new file mode 100644 index 0000000..34c178d --- /dev/null +++ b/infra/vultr-kubernetes/namespaces.yaml @@ -0,0 +1,6 @@ +apiVersion: v1 +kind: Namespace +metadata: + name: testing + labels: + name: testing \ No newline at end of file