forked from Unicorn-K8s/UnicornTrancoder-chart
-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathvalues.yaml
247 lines (224 loc) · 9.81 KB
/
values.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
# Default values for unicorn-plex.
plex:
# plex.repository -- Repository hosting the Plex Media Server image
# Currently only Official PlexInc image is supported
repository: plexinc/pms-docker
# plex.tag -- Plex Sever Version
# Should be set to the current version supported by the UnicornTranscoder Project
tag: 1.19.1.2645-ccb6eb67e
# plex.pullPolicy -- Image pull policy
pullPolicy: IfNotPresent
plexDBBackup:
# plexDBBackup.repository -- Repository hosting Unicorn Plex SQLite Streamer image
repository: donicrosby/unicorn-plex-sqlite-streamer
# plexDBBackup.tag -- SQLite Streamer image tag
tag: 0.1.1
# plexDBBackup.pullPolicy -- Image pull policy
pullPolicy: IfNotPresent
unicornLoadbalancer:
# unicornLoadbalancer.repository -- Repository hosting UnicornLoadbalancer image
repository: donicrosby/unicorn-loadbalancer
# unicornLoadbalancer.tag -- UnicornLoadbalancer version
# Should be inline with most recent version of UnicornLoadbalancer version
tag: 2.4.3
# unicornLoadbalancer.pullPolicy -- Image pull policy
pullPolicy: IfNotPresent
unicornTranscoder:
# unicornTranscoder.repository -- Repository hosting UnicornTranscoder image
repository: donicrosby/unicorn-transcoder
# unicornTranscoder.tag -- UnicornTranscoder version
tag: 2.4.2
# unicornTranscoder.pullPolicy -- Image pull policy
pullPolicy: IfNotPresent
# Plex Environment Config
# timezone -- Timezone to be set for the server
# See: https://en.wikipedia.org/wiki/List_of_tz_database_time_zones for list
timezone: Etc/UTC
# XPlexToken -- X-Plex-Token for your server
# See: https://support.plex.tv/articles/204059436-finding-an-authentication-token-x-plex-token/
# for guide to find it after creating the server
XPlexToken:
# claimToken -- Generated token for automatically adding a server under your Plex account
# See: https://plex.tv/claim to generate one
# Note: Token is only valid for 4 minutes
claimToken:
# plexHostname -- Frendly name for your Plex Server
plexHostname: Unicorn-Plex-K8s
# plexAdvertiseIPs -- List of IPs or FQDNs with ports to be set in the Advertise IPs section of your server
plexAdvertiseIPs: []
# - https://plex.mydomain.tld:443
# - http://plex.mydomain.tld:80
# plexUID -- (int) UID to be set for the Plex Server and UnicornTranscoder for accessing media
plexUID: 1000
# plexGID -- (int) GID to be set for the Plex Server and UnicornTranscoder for accessing media
plexGID: 100
# Transcoding Pods Configuration
transcoding:
hpa:
# transcoding.hpa.enabled -- (bool) Determine if chart should deploy a Horizontal Pod Autoscaler for the UnicornTranscoders
enabled: true
# transcoding.hpa.CPUPercent -- (int) Percentage of requested CPUs over all UnicornTranscoder Pods for the to be utilized before a new UnicornTranscoder pod is created
CPUPercent: 50
# transcoding.maxReplicas -- (int) Maximum number of replicas to be created by the HPA
# Note: This is ignored if transcoding.hpa is set to false
maxReplicas: 16
# transcoding.replicas -- (int) Number of replicas to be created by the Transcoder StatefulSet
replicas: 2
# transcoding.port -- (int) Port to be exposed by the created transcoding services
port: 443
# transcode.transcodeDomain -- Domain to be used as the base for the FQDN of the transcoders
# EX: unicorn-transcoder-0.plex.mydomain.tld
domain: plex.mydomain.tld
data:
# Plex Configuration
plexConfig:
# data.plexConfig.claimName -- Name of already existing PVC used to store the configuration data for plex
# If claimName is defined then the storage class and size are ignored
claimName: plex-config-pvc
# data.plexConfig.storageClass -- Name of Storage Class to use to create the configuration PVC
# storageClass: nfs-client
# data.plexConfig.accessMode -- Access mode of the existing or to be created PVC
accessMode: ReadWriteOnce
# data.plexConfig.size -- Size of the created PVC
# If claimName is defined then this is ignored
size: 60Gi
# data.plexConfig.subPath -- The subpath on the PVC where the plex config is stored
# subPath:
plexDB:
# data.plexDB.claimName -- Name of already existing PVC used as long term storage for the Plex SQLite Database
# If claimName is defined then the storage class and size are ignored
claimName: plex-db-pvc
# data.plexDB.storageClass -- Name of Storage Class to use to create the database PVC
# storageClass: nfs-client
# data.plexDB.accessMode -- Access mode of the existing or to be created PVC
accessMode: ReadWriteOnce
# data.plexDB.size -- Size of the created PVC
# If claimName is defined then this is ignored
size: 10Gi
# data.plexDB.subPath -- The subpath on the PVC where the plex DB is stored
# subPath:
plexMedia:
# data.plexMedia.claimName -- Name of already existing PVC that holds all of the media for Plex
# If claimName is defined then the storage class and size are ignored
claimName: tv-movies-pvc
# data.plexMedia.storageClass -- Name of Storage Class to use to create the media PVC
# storageClass: nfs-client
# data.plexMedia.accessMode -- Access mode of the existing or to be created PVC
accessMode: ReadWriteOnce
# data.plexMedia.size -- Size of the created PVC
# If claimName is defined then this is ignored
size: 100Gi
# data.plexMedia.subPath -- The subpath on the PVC where the media is stored
# subPath:
transcode:
# data.transcoding.claimName -- Name of already existing PVC to be used by the transcoders to use while transcoding media
# If claimName is defined then the storage class and size are ignored
# Claim must be fore a ReadWriteMany PVC
claimName:
# data.transcoding.storageClass -- Name of Storage Class to use to create the transcoding PVC
storageClass: hostpath
# data.transcoding.size -- Size of the created PVC
# If claimName is defined then this is ignored
size: 120Gi
# data.transcoding.subPath -- The subpath on the PVC where transcoding is stored
# subPath:
imagePullSecrets: []
## nameOverride: ""
## fullnameOverride: ""
serviceAccount:
# Specifies whether a service account should be created
create: false
# The name of the service account to use.
# If not set and create is true, a name is generated using the fullname template
name:
podSecurityContext: {}
# fsGroup: 2000
securityContext: {}
# capabilities:
# drop:
# - ALL
# readOnlyRootFilesystem: true
# runAsNonRoot: true
# runAsUser: 1000
service:
# service.type -- Service type to be used to expose the UnicornLoadbalancer (and Plex)
# Currently only LoadBalancer is supported
type: LoadBalancer
# service.loadbalancerIP -- IP to be used by the loadbalancer (Recommended to be hardcoded)
loadbalancerIP: 172.16.4.5
# service.port -- Port to be used for Ingress of the LoadBalancer
port: 3001
# service.annotations -- Any annotations to be added to the LoadBalancer
annotations:
# For baremetal installs use MetalLB annotation and have the Ingress and Service IP under same IP space
metallb.universe.tf/allow-shared-ip: unicorn-plex
# service.advertiseWithService -- Add the LoadBalancer IP and port to the Advertise IPs List
advertiseWithService: false
ingress:
# ingress.enabled -- Use Kubernetes Ingress to access plex
enabled: true
# ingress.annotations -- Any annotations to add to the Plex Ingress
annotations: {}
#kubernetes.io/ingress.class: nginx
#kubernetes.io/tls-acme: "true"
#cert-manager.io/cluster-issuer: letsencrypt-prod
#nginx.ingress.kubernetes.io/proxy-http-version: "1.1"
#nginx.ingress.kubernetes.io/proxy-buffering: "off"
#nginx.ingress.kubernetes.io/upstream-vhost: "localhost"
#nginx.ingress.kubernetes.io/proxy-redirect-from: "http://localhost$request_uri"
#nginx.ingress.kubernetes.io/proxy-redirect-to: "$scheme://plex.mydomain.tld$request_uri"
#nginx.ingress.kubernetes.io/configuration-snippet: |
# more_set_input_headers "Referer: localhost" ;
# more_set_input_headers "Origin: localhost" ;
# ingress.host -- Domain name to use for ingress to plex
host: plex.jeansburger.net
tls:
# ingress.tls.host -- Domain name to use on the TLS Certifcate
host: plex.jeansburger.net
secret:
enabled: true
# ingress.tls.secret.name -- Name of secret to hold TLS Certifcate
name: plex-tls
# secretName:
# - secretName: chart-example-tls
# hosts:
# - chart-example.local
resources:
requests:
# resources.requests.cpu -- Number of CPU cores to allocate for the Plex Media Server
cpu: 2
# resources.requests.memory -- Amount of Memory to allocate for the Plex Media Server
memory: 2Gi
unicornLoadbalancer:
requests:
# resources.unicornLoadbalancer.requests.cpu -- Amount of CPU cores to allocate for the Unicorn LoadBalancer
cpu: 500m
# resources.unicornLoadbalancer.requests.memory -- Amount of memory to allocate for the Unicorn Loadbalancer
memory: 500Mi
unicornTranscoder:
requests:
# resources.unicornTranscoder.requests.cpu -- Amount of CPU cores to allocate for the Unicorn Transcoder
cpu: 4
# resources.unicornTranscoder.requests.memory -- Amount of memory to allocate for the Unicorn Transcoder
memory: 4Gi
# We usually recommend not to specify default resources and to leave this as a conscious
# choice for the user. This also increases chances charts run on environments with little
# resources, such as Minikube. If you do want to specify resources, uncomment the following
# lines, adjust them as necessary, and remove the curly braces after 'resources:'.
# limits:
# cpu: 100m
# memory: 128Mi
# requests:
# cpu: 100m
# memory: 128Mi
nodeSelector:
unicornLoadbalancer: {}
unicornTranscoder: {}
tolerations:
unicornLoadbalancer: []
unicornTranscoder: []
affinity:
unicornLoadbalancer: {}
unicornTranscoder: {}
networkingPolicy:
enabled: true