frigate: use coral for detect, nvidia gpu for transcode and longhorn for config storage

This commit is contained in:
Erki Aas 2025-01-02 20:19:39 +02:00
parent f9ad582136
commit 602b4a03f6
3 changed files with 41 additions and 36 deletions

View File

@ -22,22 +22,9 @@ data:
stats_interval: 60 stats_interval: 60
detectors: detectors:
# coral: coral:
# type: edgetpu type: edgetpu
# device: usb device: usb
#cpu1:
#type: cpu
ov:
type: openvino
device: CPU
model:
width: 300
height: 300
input_tensor: nhwc
input_pixel_format: bgr
path: /openvino-model/ssdlite_mobilenet_v2.xml
labelmap_path: /openvino-model/coco_91cl_bkgr.txt
record: record:
enabled: True enabled: True
@ -99,7 +86,7 @@ spec:
resources: resources:
requests: requests:
storage: "100Mi" storage: "100Mi"
storageClassName: "frigate-config" storageClassName: "longhorn"
--- ---
# Source: frigate/templates/service.yaml # Source: frigate/templates/service.yaml
apiVersion: v1 apiVersion: v1
@ -165,14 +152,23 @@ spec:
app.kubernetes.io/name: frigate app.kubernetes.io/name: frigate
app.kubernetes.io/instance: frigate app.kubernetes.io/instance: frigate
annotations: annotations:
checksum/configmap: 9de9e29d499af45a0e7392032d64d26d8e13e12211971a307f201c97ac91f173 checksum/configmap: e87f827cda067d3ff35d52fb3cef3286e9670da77c9b83a5518b35f14f6aaa19
spec: spec:
nodeSelector:
dedicated: nvr
tolerations:
- key: dedicated
operator: Equal
value: nvr
effect: NoSchedule
containers: containers:
- name: frigate - name: frigate
image: "ghcr.io/blakeblackshear/frigate:0.14.0" image: "ghcr.io/blakeblackshear/frigate:0.14.0"
imagePullPolicy: IfNotPresent imagePullPolicy: IfNotPresent
securityContext: securityContext:
{} privileged: true
capabilities:
add: ["SYS_RAWIO"]
ports: ports:
- name: http - name: http
containerPort: 5000 containerPort: 5000
@ -209,6 +205,8 @@ spec:
- secretRef: - secretRef:
name: frigate-mqtt-credentials name: frigate-mqtt-credentials
volumeMounts: volumeMounts:
- mountPath: /dev/bus/usb
name: coral-dev
- mountPath: /config/config.yml - mountPath: /config/config.yml
subPath: config.yml subPath: config.yml
name: configmap name: configmap
@ -228,6 +226,12 @@ spec:
- name: configmap - name: configmap
configMap: configMap:
name: frigate name: frigate
- name: coral-dev
hostPath:
path: /dev/bus/usb
- name: coral-dev
hostPath:
path: /dev/bus/usb
- name: config - name: config
persistentVolumeClaim: persistentVolumeClaim:
claimName: frigate-config claimName: frigate-config

View File

@ -27,15 +27,15 @@ spec:
- key: app.kubernetes.io/name - key: app.kubernetes.io/name
operator: In operator: In
values: values:
- frigate - go2rtc
topologyKey: "kubernetes.io/hostname" topologyKey: "kubernetes.io/hostname"
# nodeSelector: nodeSelector:
# dedicated: nvr dedicated: nvr
# tolerations: tolerations:
# - key: dedicated - key: dedicated
# operator: Equal operator: Equal
# value: nvr value: nvr
# effect: NoSchedule effect: NoSchedule
containers: containers:
- name: go2rtc - name: go2rtc
image: alexxit/go2rtc image: alexxit/go2rtc
@ -51,7 +51,8 @@ spec:
subPath: config.yml subPath: config.yml
name: config name: config
resources: resources:
{} limits:
nvidia.com/gpu: 1
volumes: volumes:
- name: config - name: config
secret: secret:

View File

@ -28,7 +28,7 @@ envFromSecrets:
coral: coral:
# -- enables the use of a Coral device # -- enables the use of a Coral device
enabled: false enabled: true
# -- path on the host to which to mount the Coral device # -- path on the host to which to mount the Coral device
hostPath: /dev/bus/usb hostPath: /dev/bus/usb
@ -60,14 +60,14 @@ config: |
stats_interval: 60 stats_interval: 60
detectors: detectors:
# coral: coral:
# type: edgetpu type: edgetpu
# device: usb device: usb
#cpu1: #cpu1:
#type: cpu #type: cpu
ov: #ov:
type: openvino # type: openvino
device: CPU # device: CPU
model: model:
width: 300 width: 300
@ -167,7 +167,7 @@ ingress:
persistence: persistence:
config: config:
enabled: true enabled: true
storageClass: "frigate-config" storageClass: "longhorn"
accessMode: ReadWriteOnce accessMode: ReadWriteOnce
size: 100Mi size: 100Mi
skipuninstall: false skipuninstall: false