From 6465c82db8156b070d55c2e9fe1b263f47b1c1d0 Mon Sep 17 00:00:00 2001 From: Matt Reeves <admin@mafyuh.io> Date: Tue, 25 Feb 2025 23:00:20 -0500 Subject: [PATCH 1/4] move flaresolverr to helmrelease --- README.md | 2 +- .../staging/flaresolverr/helmrelease.yaml | 85 +++++++++++++++++++ kubernetes/apps/staging/kustomization.yaml | 4 + .../production/flux-system/staging.yaml | 26 ++++++ 4 files changed, 116 insertions(+), 1 deletion(-) create mode 100644 kubernetes/apps/staging/flaresolverr/helmrelease.yaml create mode 100644 kubernetes/apps/staging/kustomization.yaml create mode 100644 kubernetes/cluster/production/flux-system/staging.yaml diff --git a/README.md b/README.md index 12c06c2..a8b8bae 100644 --- a/README.md +++ b/README.md @@ -76,7 +76,7 @@ Some good references for how I learned this stuff (other than RTM) |-------------|----------------|-----------------|--------------|----------------------------------------------|-----------|----------------------------------| | Arc-Ripper | Optiplex 3050 | Intel i5-6500 | 32 GB DDR4 | 1TB NVMe | Arc A310 | Jellyfin Server, Blu-ray Ripper | | PVE Node 1 | Custom | Intel i7-9700K | 64 GB DDR4 | NVMe for boot and VMs, 4x4TB HDD RaidZ10 | Nvidia 1660 6GB | Main node with most VMs, NAS | -| PVE Node 2 | Custom | Intel i7-8700K | 64 GB DDR4 | 1x2TB NVMe | Nvidia 1060 GB | More VMs | +| PVE Node 2 | Custom | Intel i7-8700K | 64 GB DDR4 | 1x2TB NVMe | Nvidia 1060 6GB | More VMs | ## 📌 **To-Do** diff --git a/kubernetes/apps/staging/flaresolverr/helmrelease.yaml b/kubernetes/apps/staging/flaresolverr/helmrelease.yaml new file mode 100644 index 0000000..2edc903 --- /dev/null +++ b/kubernetes/apps/staging/flaresolverr/helmrelease.yaml @@ -0,0 +1,85 @@ +apiVersion: helm.toolkit.fluxcd.io/v2 +kind: HelmRelease +metadata: + name: &app flaresolverr + namespace: arr +spec: + interval: 15m + chart: + spec: + chart: app-template + version: 3.7.1 + interval: 30m + sourceRef: + kind: HelmRepository + name: bjw-s + namespace: flux-system + + install: + remediation: + retries: 3 + upgrade: + remediation: + retries: 3 + + values: + global: + fullnameOverride: *app + namespace: arr + + controllers: + flaresolverr: + enabled: true + type: statefulset + annotations: + reloader.stakater.com/auto: "true" + + replicas: 1 + + pod: + securityContext: + runAsUser: &context 1000 + runAsGroup: *context + fsGroup: *context + fsGroupChangePolicy: "OnRootMismatch" + dnsPolicy: None + dnsConfig: + nameservers: + - 10.43.0.10 + - 1.1.1.1 + - 8.8.8.8 + + containers: + app: + image: + repository: ghcr.io/flaresolverr/flaresolverr + tag: 3.3.21 + pullPolicy: IfNotPresent + env: + TZ: "${TZ}" + LOG_LEVEL: info + + probes: + liveness: + enabled: false + + securityContext: + allowPrivilegeEscalation: false + capabilities: + drop: + - ALL + + resources: + requests: + cpu: 90m + memory: 128Mi + limits: + memory: 256Mi + + service: + app: + primary: true + controller: flaresolverr + ports: + http: + port: 8191 diff --git a/kubernetes/apps/staging/kustomization.yaml b/kubernetes/apps/staging/kustomization.yaml new file mode 100644 index 0000000..965b5f5 --- /dev/null +++ b/kubernetes/apps/staging/kustomization.yaml @@ -0,0 +1,4 @@ +apiVersion: kustomize.config.k8s.io/v1beta1 +kind: Kustomization +resources: + - flaresolverr/ \ No newline at end of file diff --git a/kubernetes/cluster/production/flux-system/staging.yaml b/kubernetes/cluster/production/flux-system/staging.yaml new file mode 100644 index 0000000..78bc580 --- /dev/null +++ b/kubernetes/cluster/production/flux-system/staging.yaml @@ -0,0 +1,26 @@ +apiVersion: source.toolkit.fluxcd.io/v1 +kind: GitRepository +metadata: + name: flux-staging + namespace: flux-system +spec: + interval: 1m0s + ref: + branch: staging + secretRef: + name: flux-system + url: https://git.mafyuh.dev/mafyuh/iac +--- +apiVersion: kustomize.toolkit.fluxcd.io/v1 +kind: Kustomization +metadata: + name: flux-staging + namespace: flux-system +spec: + interval: 10m0s + path: ./kubernetes/apps/staging + prune: true + sourceRef: + kind: GitRepository + name: flux-staging + -- 2.47.2 From c6ed29d289bfa729008b3102d29a151d3edb01cb Mon Sep 17 00:00:00 2001 From: Matt Reeves <admin@mafyuh.io> Date: Tue, 25 Feb 2025 23:03:56 -0500 Subject: [PATCH 2/4] fix kustomization --- kubernetes/apps/staging/flaresolverr/kustomization.yaml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 kubernetes/apps/staging/flaresolverr/kustomization.yaml diff --git a/kubernetes/apps/staging/flaresolverr/kustomization.yaml b/kubernetes/apps/staging/flaresolverr/kustomization.yaml new file mode 100644 index 0000000..4377f60 --- /dev/null +++ b/kubernetes/apps/staging/flaresolverr/kustomization.yaml @@ -0,0 +1,4 @@ +apiVersion: kustomize.config.k8s.io/v1beta1 +kind: Kustomization +resources: + - helmrelease.yaml \ No newline at end of file -- 2.47.2 From 0e5f1120661aa32fcb0debda54e3664e3b47fb12 Mon Sep 17 00:00:00 2001 From: Matt Reeves <admin@mafyuh.io> Date: Tue, 25 Feb 2025 23:04:43 -0500 Subject: [PATCH 3/4] update tag --- kubernetes/apps/staging/flaresolverr/helmrelease.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kubernetes/apps/staging/flaresolverr/helmrelease.yaml b/kubernetes/apps/staging/flaresolverr/helmrelease.yaml index 2edc903..e00d494 100644 --- a/kubernetes/apps/staging/flaresolverr/helmrelease.yaml +++ b/kubernetes/apps/staging/flaresolverr/helmrelease.yaml @@ -53,7 +53,7 @@ spec: app: image: repository: ghcr.io/flaresolverr/flaresolverr - tag: 3.3.21 + tag: v3.3.21 pullPolicy: IfNotPresent env: TZ: "${TZ}" -- 2.47.2 From 5690cda91c6256b64194cf7473315ff438090f86 Mon Sep 17 00:00:00 2001 From: Matt Reeves <admin@mafyuh.io> Date: Tue, 25 Feb 2025 23:08:39 -0500 Subject: [PATCH 4/4] migrate flaresolverr deployment to HelmRelease and update kustomization --- .../arr/flaresolverr/deployment.yaml | 39 ------------------- .../arr}/flaresolverr/helmrelease.yaml | 0 .../arr/flaresolverr/kustomization.yaml | 3 +- .../production/arr/flaresolverr/service.yaml | 12 ------ .../staging/flaresolverr/kustomization.yaml | 4 -- 5 files changed, 1 insertion(+), 57 deletions(-) delete mode 100644 kubernetes/apps/production/arr/flaresolverr/deployment.yaml rename kubernetes/apps/{staging => production/arr}/flaresolverr/helmrelease.yaml (100%) delete mode 100644 kubernetes/apps/production/arr/flaresolverr/service.yaml delete mode 100644 kubernetes/apps/staging/flaresolverr/kustomization.yaml diff --git a/kubernetes/apps/production/arr/flaresolverr/deployment.yaml b/kubernetes/apps/production/arr/flaresolverr/deployment.yaml deleted file mode 100644 index 94ada73..0000000 --- a/kubernetes/apps/production/arr/flaresolverr/deployment.yaml +++ /dev/null @@ -1,39 +0,0 @@ -apiVersion: apps/v1 -kind: Deployment -metadata: - name: flaresolverr - namespace: arr - labels: - app: flaresolverr -spec: - replicas: 1 - selector: - matchLabels: - app: flaresolverr - template: - metadata: - labels: - app: flaresolverr - spec: - containers: - - name: flaresolverr - image: ghcr.io/flaresolverr/flaresolverr:v3.3.21 - imagePullPolicy: IfNotPresent - ports: - - containerPort: 8191 - env: - - name: LOG_LEVEL - value: "info" - resources: - requests: - memory: "100Mi" - cpu: "100m" - limits: - memory: "300Mi" - cpu: "200m" - dnsPolicy: None - dnsConfig: - nameservers: - - 10.43.0.10 - - 1.1.1.1 - - 8.8.8.8 \ No newline at end of file diff --git a/kubernetes/apps/staging/flaresolverr/helmrelease.yaml b/kubernetes/apps/production/arr/flaresolverr/helmrelease.yaml similarity index 100% rename from kubernetes/apps/staging/flaresolverr/helmrelease.yaml rename to kubernetes/apps/production/arr/flaresolverr/helmrelease.yaml diff --git a/kubernetes/apps/production/arr/flaresolverr/kustomization.yaml b/kubernetes/apps/production/arr/flaresolverr/kustomization.yaml index ca1d88e..4377f60 100644 --- a/kubernetes/apps/production/arr/flaresolverr/kustomization.yaml +++ b/kubernetes/apps/production/arr/flaresolverr/kustomization.yaml @@ -1,5 +1,4 @@ apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization resources: - - deployment.yaml - - service.yaml \ No newline at end of file + - helmrelease.yaml \ No newline at end of file diff --git a/kubernetes/apps/production/arr/flaresolverr/service.yaml b/kubernetes/apps/production/arr/flaresolverr/service.yaml deleted file mode 100644 index a3c0d39..0000000 --- a/kubernetes/apps/production/arr/flaresolverr/service.yaml +++ /dev/null @@ -1,12 +0,0 @@ -apiVersion: v1 -kind: Service -metadata: - name: flaresolverr - namespace: arr -spec: - selector: - app: flaresolverr - ports: - - protocol: TCP - port: 8191 - targetPort: 8191 \ No newline at end of file diff --git a/kubernetes/apps/staging/flaresolverr/kustomization.yaml b/kubernetes/apps/staging/flaresolverr/kustomization.yaml deleted file mode 100644 index 4377f60..0000000 --- a/kubernetes/apps/staging/flaresolverr/kustomization.yaml +++ /dev/null @@ -1,4 +0,0 @@ -apiVersion: kustomize.config.k8s.io/v1beta1 -kind: Kustomization -resources: - - helmrelease.yaml \ No newline at end of file -- 2.47.2