mirror of
https://github.com/auricom/home-cluster.git
synced 2025-09-17 18:24:14 +02:00
feat: tdarr multi-controllers
This commit is contained in:
@@ -29,29 +29,6 @@ spec:
|
|||||||
keepHistory: false
|
keepHistory: false
|
||||||
values:
|
values:
|
||||||
defaultPodOptions:
|
defaultPodOptions:
|
||||||
affinity:
|
|
||||||
nodeAffinity:
|
|
||||||
preferredDuringSchedulingIgnoredDuringExecution:
|
|
||||||
- weight: 1
|
|
||||||
preference:
|
|
||||||
matchExpressions:
|
|
||||||
# Intel N100
|
|
||||||
- key: feature.node.kubernetes.io/cpu-model.id
|
|
||||||
operator: In
|
|
||||||
values:
|
|
||||||
- "190"
|
|
||||||
requiredDuringSchedulingIgnoredDuringExecution:
|
|
||||||
nodeSelectorTerms:
|
|
||||||
- matchExpressions:
|
|
||||||
# Intel N100
|
|
||||||
- key: feature.node.kubernetes.io/cpu-model.id
|
|
||||||
operator: In
|
|
||||||
values:
|
|
||||||
- "190"
|
|
||||||
- key: intel.feature.node.kubernetes.io/gpu
|
|
||||||
operator: In
|
|
||||||
values:
|
|
||||||
- "true"
|
|
||||||
securityContext:
|
securityContext:
|
||||||
fsGroup: 1000
|
fsGroup: 1000
|
||||||
fsGroupChangePolicy: OnRootMismatch
|
fsGroupChangePolicy: OnRootMismatch
|
||||||
@@ -62,22 +39,12 @@ spec:
|
|||||||
image:
|
image:
|
||||||
repository: haveagitgat/tdarr
|
repository: haveagitgat/tdarr
|
||||||
tag: 2.24.04@sha256:b01fc64a885fe9976f07ff0673b5a0e62984068d4838b79dd47248c49e316ca1
|
tag: 2.24.04@sha256:b01fc64a885fe9976f07ff0673b5a0e62984068d4838b79dd47248c49e316ca1
|
||||||
node:
|
|
||||||
image:
|
|
||||||
repository: haveagitgat/tdarr_node
|
|
||||||
tag: 2.24.04@sha256:15cfc6f9bdf723c05cdea7d975376b724d8121af4dce939f0d47ff956da89a72
|
|
||||||
env:
|
|
||||||
- name: nodeID
|
|
||||||
value: node
|
|
||||||
- name: serverIP
|
|
||||||
value: localhost
|
|
||||||
- name: serverPort
|
|
||||||
value: 8266
|
|
||||||
resources:
|
resources:
|
||||||
requests:
|
requests:
|
||||||
cpu: 100m
|
cpu: 50m
|
||||||
|
memory: 256Mi
|
||||||
limits:
|
limits:
|
||||||
cpu: 2
|
memory: 512Mi
|
||||||
service:
|
service:
|
||||||
app:
|
app:
|
||||||
controller: *app
|
controller: *app
|
||||||
@@ -126,11 +93,6 @@ spec:
|
|||||||
subPath: config
|
subPath: config
|
||||||
- path: /app/server
|
- path: /app/server
|
||||||
subPath: server
|
subPath: server
|
||||||
node:
|
|
||||||
- path: /app/configs
|
|
||||||
subPath: config
|
|
||||||
- path: /app/server
|
|
||||||
subPath: server
|
|
||||||
movies:
|
movies:
|
||||||
type: nfs
|
type: nfs
|
||||||
server: 192.168.9.10
|
server: 192.168.9.10
|
||||||
|
@@ -28,3 +28,29 @@ spec:
|
|||||||
APP: *app
|
APP: *app
|
||||||
VOLSYNC_CACHE_CAPACITY: 20Gi
|
VOLSYNC_CACHE_CAPACITY: 20Gi
|
||||||
VOLSYNC_CAPACITY: 50Gi
|
VOLSYNC_CAPACITY: 50Gi
|
||||||
|
---
|
||||||
|
# yaml-language-server: $schema=https://raw.githubusercontent.com/fluxcd-community/flux2-schemas/main/kustomization-kustomize-v1.json
|
||||||
|
apiVersion: kustomize.toolkit.fluxcd.io/v1
|
||||||
|
kind: Kustomization
|
||||||
|
metadata:
|
||||||
|
name: &app tdarr-node
|
||||||
|
namespace: flux-system
|
||||||
|
spec:
|
||||||
|
targetNamespace: default
|
||||||
|
commonMetadata:
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: *app
|
||||||
|
dependsOn:
|
||||||
|
- name: tdarr
|
||||||
|
path: ./kubernetes/apps/default/tdarr/node
|
||||||
|
prune: true
|
||||||
|
sourceRef:
|
||||||
|
kind: GitRepository
|
||||||
|
name: home-ops-kubernetes
|
||||||
|
wait: false
|
||||||
|
interval: 30m
|
||||||
|
retryInterval: 1m
|
||||||
|
timeout: 5m
|
||||||
|
postBuild:
|
||||||
|
substitute:
|
||||||
|
APP: *app
|
||||||
|
99
kubernetes/apps/default/tdarr/node/helmrelease.yaml
Normal file
99
kubernetes/apps/default/tdarr/node/helmrelease.yaml
Normal file
@@ -0,0 +1,99 @@
|
|||||||
|
---
|
||||||
|
# yaml-language-server: $schema=https://raw.githubusercontent.com/bjw-s/helm-charts/main/charts/other/app-template/schemas/helmrelease-helm-v2.schema.json
|
||||||
|
apiVersion: helm.toolkit.fluxcd.io/v2
|
||||||
|
kind: HelmRelease
|
||||||
|
metadata:
|
||||||
|
name: &app tdarr-node
|
||||||
|
namespace: default
|
||||||
|
spec:
|
||||||
|
interval: 30m
|
||||||
|
chart:
|
||||||
|
spec:
|
||||||
|
chart: app-template
|
||||||
|
version: 3.3.2
|
||||||
|
sourceRef:
|
||||||
|
kind: HelmRepository
|
||||||
|
name: bjw-s
|
||||||
|
namespace: flux-system
|
||||||
|
maxHistory: 2
|
||||||
|
install:
|
||||||
|
createNamespace: true
|
||||||
|
remediation:
|
||||||
|
retries: 3
|
||||||
|
upgrade:
|
||||||
|
cleanupOnFail: true
|
||||||
|
remediation:
|
||||||
|
strategy: rollback
|
||||||
|
retries: 3
|
||||||
|
uninstall:
|
||||||
|
keepHistory: false
|
||||||
|
values:
|
||||||
|
defaultPodOptions:
|
||||||
|
affinity:
|
||||||
|
nodeAffinity:
|
||||||
|
preferredDuringSchedulingIgnoredDuringExecution:
|
||||||
|
- weight: 1
|
||||||
|
preference:
|
||||||
|
matchExpressions:
|
||||||
|
# Intel N100
|
||||||
|
- key: feature.node.kubernetes.io/cpu-model.id
|
||||||
|
operator: In
|
||||||
|
values:
|
||||||
|
- "190"
|
||||||
|
requiredDuringSchedulingIgnoredDuringExecution:
|
||||||
|
nodeSelectorTerms:
|
||||||
|
- matchExpressions:
|
||||||
|
# Intel N100
|
||||||
|
- key: feature.node.kubernetes.io/cpu-model.id
|
||||||
|
operator: In
|
||||||
|
values:
|
||||||
|
- "190"
|
||||||
|
- key: intel.feature.node.kubernetes.io/gpu
|
||||||
|
operator: In
|
||||||
|
values:
|
||||||
|
- "true"
|
||||||
|
securityContext:
|
||||||
|
fsGroup: 1000
|
||||||
|
fsGroupChangePolicy: OnRootMismatch
|
||||||
|
controllers:
|
||||||
|
tdarr-node:
|
||||||
|
containers:
|
||||||
|
node:
|
||||||
|
image:
|
||||||
|
repository: haveagitgat/tdarr_node
|
||||||
|
tag: 2.24.04@sha256:15cfc6f9bdf723c05cdea7d975376b724d8121af4dce939f0d47ff956da89a72
|
||||||
|
env:
|
||||||
|
- name: nodeID
|
||||||
|
value: kube-node
|
||||||
|
- name: serverIP
|
||||||
|
value: tdarr-server.default.svc.cluster.local.
|
||||||
|
- name: serverPort
|
||||||
|
value: 8266
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
cpu: 100m
|
||||||
|
limits:
|
||||||
|
cpu: 2
|
||||||
|
service:
|
||||||
|
app:
|
||||||
|
controller: *app
|
||||||
|
enabled: false
|
||||||
|
persistence:
|
||||||
|
movies:
|
||||||
|
type: nfs
|
||||||
|
server: 192.168.9.10
|
||||||
|
path: /var/mnt/vol1/video/movies
|
||||||
|
globalMounts:
|
||||||
|
- path: /mnt/movies
|
||||||
|
tv:
|
||||||
|
type: nfs
|
||||||
|
server: 192.168.9.10
|
||||||
|
path: /var/mnt/vol1/video/tv
|
||||||
|
globalMounts:
|
||||||
|
- path: /mnt/tv
|
||||||
|
shared:
|
||||||
|
type: nfs
|
||||||
|
server: 192.168.9.10
|
||||||
|
path: /var/mnt/vol1/video/.tdarr
|
||||||
|
globalMounts:
|
||||||
|
- path: /mnt/shared
|
7
kubernetes/apps/default/tdarr/node/kustomization.yaml
Normal file
7
kubernetes/apps/default/tdarr/node/kustomization.yaml
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
---
|
||||||
|
# yaml-language-server: $schema=https://raw.githubusercontent.com/SchemaStore/schemastore/master/src/schemas/json/kustomization.json
|
||||||
|
apiVersion: kustomize.config.k8s.io/v1beta1
|
||||||
|
kind: Kustomization
|
||||||
|
namespace: default
|
||||||
|
resources:
|
||||||
|
- ./helmrelease.yaml
|
Reference in New Issue
Block a user