apiVersion: v1 kind: PersistentVolumeClaim metadata: name: data namespace: jitsi spec: accessModes: - ReadWriteMany resources: requests: storage: 512Mi storageClassName: cephfs-hyper --- apiVersion: apps/v1 kind: Deployment metadata: name: frontend namespace: jitsi labels: app: frontend spec: replicas: 1 selector: matchLabels: app: frontend template: metadata: annotations: #backup.velero.io/backup-volumes: html labels: app: frontend spec: dnsConfig: options: - name: ndots value: "1" #securityContext: # runAsUser: 1000 # runAsGroup: 1000 # fsGroup: 1000 containers: - name: frontend resources: #requests: # memory: "10Mi" # cpu: "250m" #limits: # memory: "256Mi" # cpu: "10m" image: jitsi/web:stable-10741 imagePullPolicy: IfNotPresent ports: - containerPort: 80 - containerPort: 443 env: - name: TZ value: "Europe/Berlin" - name: PUBLIC_URL value: "https://jitsi.apps.undercloud.dev" - name: JICOFO_AUTH_PASSWORD valueFrom: secretKeyRef: name: jitsi key: JICOFO_AUTH_PASSWORD - name: JVB_AUTH_PASSWORD valueFrom: secretKeyRef: name: jitsi key: JVB_AUTH_PASSWORD - name: JIGASI_XMPP_PASSWORD valueFrom: secretKeyRef: name: jitsi key: JIGASI_XMPP_PASSWORD - name: JIBRI_RECORDER_PASSWORD valueFrom: secretKeyRef: name: jitsi key: JIBRI_RECORDER_PASSWORD - name: JIBRI_XMPP_PASSWORD valueFrom: secretKeyRef: name: jitsi key: JIBRI_XMPP_PASSWORD - name: ENABLE_LETSENCRYPT value: "0" - name: XMPP_DOMAIN value: "xmpp.jitsi.svc.k8s.undercloud.local" - name: XMPP_BOSH_URL_BASE value: "http://xmpp.jitsi.svc.k8s.undercloud.local:5280" - name: XMPP_PORT value: "5222" - name: XMPP_SERVER value: "xmpp.jitsi.svc.k8s.undercloud.local" #- name: JVB_ADVERTISE_IPS # value: "2001:470:7116:f:1::31,10.0.91.31" - name: DEFAULT_LANGUAGE value: "de" - name: XMPP_AUTH_DOMAIN value: "auth.xmpp.jitsi.svc.k8s.undercloud.local" - name: XMPP_MUC_DOMAIN value: "muc.xmpp.jitsi.svc.k8s.undercloud.local" - name: XMPP_INTERNAL_MUC_DOMAIN value: "internal-muc.xmpp.jitsi.svc.k8s.undercloud.local" #- name: PUID # value: "1000" #- name: PGID # value: "1000" #lifecycle: # postStart: # exec: # command: ["/bin/sh", "-c", "cp -rf /opt/bastillion/jetty/bastillion/WEB-INF/classe/BastillionConfig.properties.tmp /opt/bastillion/jetty/bastillion/WEB-INF/classe/BastillionConfig.properties"] volumeMounts: - mountPath: /config name: data subPath: config - mountPath: /var/spool/cron/crontabs name: data subPath: crontabs - mountPath: /usr/share/jitsi-meet/transcripts name: data subPath: transcripts volumes: - name: data persistentVolumeClaim: claimName: data readOnly: false --- apiVersion: v1 kind: Service metadata: name: frontend namespace: jitsi spec: internalTrafficPolicy: Cluster ipFamilies: - IPv6 - IPv4 ipFamilyPolicy: PreferDualStack #ipFamilyPolicy: SingleStack ports: - name: http port: 80 targetPort: 80 - name: https port: 443 targetPort: 443 selector: app: frontend #sessionAffinity: None type: ClusterIP --- apiVersion: v1 kind: PersistentVolumeClaim metadata: name: xmpp-data namespace: jitsi spec: accessModes: - ReadWriteMany resources: requests: storage: 512Mi storageClassName: cephfs-hyper --- apiVersion: apps/v1 kind: Deployment metadata: name: xmpp namespace: jitsi labels: app: xmpp spec: replicas: 1 selector: matchLabels: app: xmpp template: metadata: annotations: #backup.velero.io/backup-volumes: html labels: app: xmpp spec: dnsConfig: options: - name: ndots value: "1" #securityContext: # runAsUser: 1000 # runAsGroup: 1000 # fsGroup: 1000 containers: - name: xmpp resources: #requests: # memory: "10Mi" # cpu: "250m" #limits: # memory: "256Mi" # cpu: "10m" image: jitsi/prosody:stable-10741 imagePullPolicy: IfNotPresent ports: - containerPort: 5222 - containerPort: 5347 - containerPort: 5280 env: - name: TZ value: "Europe/Berlin" - name: PUBLIC_URL value: "https://jitsi.apps.undercloud.dev" - name: JICOFO_AUTH_PASSWORD valueFrom: secretKeyRef: name: jitsi key: JICOFO_AUTH_PASSWORD - name: JVB_AUTH_PASSWORD valueFrom: secretKeyRef: name: jitsi key: JVB_AUTH_PASSWORD - name: JIGASI_XMPP_PASSWORD valueFrom: secretKeyRef: name: jitsi key: JIGASI_XMPP_PASSWORD - name: JIBRI_RECORDER_PASSWORD valueFrom: secretKeyRef: name: jitsi key: JIBRI_RECORDER_PASSWORD - name: JIBRI_XMPP_PASSWORD valueFrom: secretKeyRef: name: jitsi key: JIBRI_XMPP_PASSWORD - name: ENABLE_LETSENCRYPT value: "0" - name: ENABLE_IPV6 value: "1" - name: XMPP_DOMAIN value: "xmpp.jitsi.svc.k8s.undercloud.local" - name: XMPP_BOSH_URL_BASE value: "http://xmpp.jitsi.svc.k8s.undercloud.local:5280" - name: XMPP_PORT value: "5222" - name: XMPP_SERVER value: "xmpp.jitsi.svc.k8s.undercloud.local" #- name: JVB_ADVERTISE_IPS # value: "2001:470:7116:f:1::31,10.0.91.31" - name: XMPP_AUTH_DOMAIN value: "auth.xmpp.jitsi.svc.k8s.undercloud.local" - name: XMPP_MUC_DOMAIN value: "muc.xmpp.jitsi.svc.k8s.undercloud.local" - name: XMPP_INTERNAL_MUC_DOMAIN value: "internal-muc.xmpp.jitsi.svc.k8s.undercloud.local" #- RESET_APPLICATION_SSH_KEY=false # set to true to regenerate and import SSH keys #- SSH_KEY_TYPE=rsa # SSH key type 'dsa', 'rsa', or 'ecdsa' for generated keys #- SSH_KEY_LENGTH=2048 # SSH key length for generated keys 2048 => 'rsa','dsa'; 521 => 'ecdsa' #- name: PUID # value: "1000" #- name: PGID # value: "1000" #lifecycle: # postStart: # exec: # command: ["/bin/sh", "-c", "cp -rf /opt/bastillion/jetty/bastillion/WEB-INF/classe/BastillionConfig.properties.tmp /opt/bastillion/jetty/bastillion/WEB-INF/classe/BastillionConfig.properties"] volumeMounts: - mountPath: /config name: data subPath: config - mountPath: /prosody-plugins-custom name: data subPath: plugins volumes: - name: data persistentVolumeClaim: claimName: xmpp-data readOnly: false --- apiVersion: v1 kind: Service metadata: name: xmpp namespace: jitsi spec: internalTrafficPolicy: Cluster ipFamilies: - IPv6 - IPv4 ipFamilyPolicy: PreferDualStack #ipFamilyPolicy: SingleStack ports: - name: xmpp1 port: 5222 targetPort: 5222 - name: xmpp2 port: 5347 targetPort: 5347 - name: xmpp3 port: 5280 targetPort: 5280 selector: app: xmpp #sessionAffinity: None type: ClusterIP --- apiVersion: v1 kind: PersistentVolumeClaim metadata: name: focus-data namespace: jitsi spec: accessModes: - ReadWriteMany resources: requests: storage: 512Mi storageClassName: cephfs-hyper --- apiVersion: apps/v1 kind: Deployment metadata: name: focus namespace: jitsi labels: app: focus spec: replicas: 1 selector: matchLabels: app: focus template: metadata: annotations: #backup.velero.io/backup-volumes: html labels: app: focus spec: dnsConfig: options: - name: ndots value: "1" #securityContext: # runAsUser: 1000 # runAsGroup: 1000 # fsGroup: 1000 containers: - name: focus resources: #requests: # memory: "10Mi" # cpu: "250m" #limits: # memory: "256Mi" # cpu: "10m" image: jitsi/jicofo:stable-10741 imagePullPolicy: IfNotPresent ports: - containerPort: 8888 env: - name: JICOFO_AUTH_PASSWORD valueFrom: secretKeyRef: name: jitsi key: JICOFO_AUTH_PASSWORD - name: JVB_AUTH_PASSWORD valueFrom: secretKeyRef: name: jitsi key: JVB_AUTH_PASSWORD - name: JIGASI_XMPP_PASSWORD valueFrom: secretKeyRef: name: jitsi key: JIGASI_XMPP_PASSWORD - name: JIBRI_RECORDER_PASSWORD valueFrom: secretKeyRef: name: jitsi key: JIBRI_RECORDER_PASSWORD - name: JIBRI_XMPP_PASSWORD valueFrom: secretKeyRef: name: jitsi key: JIBRI_XMPP_PASSWORD - name: ENABLE_LETSENCRYPT value: "0" - name: ENABLE_IPV6 value: "1" - name: XMPP_DOMAIN value: "xmpp.jitsi.svc.k8s.undercloud.local" - name: XMPP_BOSH_URL_BASE value: "http://xmpp.jitsi.svc.k8s.undercloud.local:5280" - name: XMPP_PORT value: "5222" - name: XMPP_SERVER value: "xmpp.jitsi.svc.k8s.undercloud.local" #- name: JVB_ADVERTISE_IPS # value: "2001:470:7116:f:1::31,10.0.91.31" - name: XMPP_AUTH_DOMAIN value: "auth.xmpp.jitsi.svc.k8s.undercloud.local" - name: XMPP_MUC_DOMAIN value: "muc.xmpp.jitsi.svc.k8s.undercloud.local" - name: XMPP_INTERNAL_MUC_DOMAIN value: "internal-muc.xmpp.jitsi.svc.k8s.undercloud.local" #- RESET_APPLICATION_SSH_KEY=false # set to true to regenerate and import SSH keys #- SSH_KEY_TYPE=rsa # SSH key type 'dsa', 'rsa', or 'ecdsa' for generated keys #- SSH_KEY_LENGTH=2048 # SSH key length for generated keys 2048 => 'rsa','dsa'; 521 => 'ecdsa' #- name: PUID # value: "1000" #- name: PGID # value: "1000" #lifecycle: # postStart: # exec: # command: ["/bin/sh", "-c", "cp -rf /opt/bastillion/jetty/bastillion/WEB-INF/classe/BastillionConfig.properties.tmp /opt/bastillion/jetty/bastillion/WEB-INF/classe/BastillionConfig.properties"] volumeMounts: - mountPath: /config name: data subPath: config volumes: - name: data persistentVolumeClaim: claimName: focus-data readOnly: false --- apiVersion: v1 kind: Service metadata: name: focus namespace: jitsi spec: internalTrafficPolicy: Cluster ipFamilies: - IPv6 - IPv4 ipFamilyPolicy: PreferDualStack #ipFamilyPolicy: SingleStack ports: - name: focus port: 8888 targetPort: 8888 selector: app: focus #sessionAffinity: None type: ClusterIP --- apiVersion: v1 kind: PersistentVolumeClaim metadata: name: jvb-data namespace: jitsi spec: accessModes: - ReadWriteMany resources: requests: storage: 512Mi storageClassName: cephfs-hyper --- apiVersion: apps/v1 kind: Deployment metadata: name: jvb namespace: jitsi labels: app: jvb spec: replicas: 1 selector: matchLabels: app: jvb template: metadata: annotations: #backup.velero.io/backup-volumes: html labels: app: jvb spec: dnsConfig: options: - name: ndots value: "1" #securityContext: # runAsUser: 1000 # runAsGroup: 1000 # fsGroup: 1000 containers: - name: jvb resources: #requests: # memory: "10Mi" # cpu: "250m" #limits: # memory: "256Mi" # cpu: "10m" image: jitsi/jvb:stable-10741 imagePullPolicy: IfNotPresent ports: - name: media containerPort: 10000 protocol: UDP - name: colibri containerPort: 8080 protocol: TCP env: - name: TZ value: "Europe/Berlin" - name: PUBLIC_URL value: "https://jitsi.apps.undercloud.dev" - name: JICOFO_AUTH_PASSWORD valueFrom: secretKeyRef: name: jitsi key: JICOFO_AUTH_PASSWORD - name: JVB_AUTH_PASSWORD valueFrom: secretKeyRef: name: jitsi key: JVB_AUTH_PASSWORD - name: JIGASI_XMPP_PASSWORD valueFrom: secretKeyRef: name: jitsi key: JIGASI_XMPP_PASSWORD - name: JIBRI_RECORDER_PASSWORD valueFrom: secretKeyRef: name: jitsi key: JIBRI_RECORDER_PASSWORD - name: JIBRI_XMPP_PASSWORD valueFrom: secretKeyRef: name: jitsi key: JIBRI_XMPP_PASSWORD - name: ENABLE_LETSENCRYPT value: "0" - name: ENABLE_IPV6 value: "1" - name: JVB_PORT value: "10000" - name: XMPP_DOMAIN value: "xmpp.jitsi.svc.k8s.undercloud.local" - name: XMPP_BOSH_URL_BASE value: "http://xmpp.jitsi.svc.k8s.undercloud.local:5280" - name: XMPP_PORT value: "5222" - name: XMPP_SERVER value: "xmpp.jitsi.svc.k8s.undercloud.local" #- name: JVB_ADVERTISE_IPS # value: "2001:470:7116:f:1::31,10.0.91.31" #- name: JVB_DISABLE_STUN # value: "1" - name: JVB_STUN_SERVERS value: "stun.l.google.com:19302,stun1.l.google.com:19302,stun2.l.google.com:19302" - name: XMPP_AUTH_DOMAIN value: "auth.xmpp.jitsi.svc.k8s.undercloud.local" - name: XMPP_MUC_DOMAIN value: "muc.xmpp.jitsi.svc.k8s.undercloud.local" - name: XMPP_INTERNAL_MUC_DOMAIN value: "internal-muc.xmpp.jitsi.svc.k8s.undercloud.local" #- RESET_APPLICATION_SSH_KEY=false # set to true to regenerate and import SSH keys #- SSH_KEY_TYPE=rsa # SSH key type 'dsa', 'rsa', or 'ecdsa' for generated keys #- SSH_KEY_LENGTH=2048 # SSH key length for generated keys 2048 => 'rsa','dsa'; 521 => 'ecdsa' #- name: PUID # value: "1000" #- name: PGID # value: "1000" #lifecycle: # postStart: # exec: # command: ["/bin/sh", "-c", "cp -rf /opt/bastillion/jetty/bastillion/WEB-INF/classe/BastillionConfig.properties.tmp /opt/bastillion/jetty/bastillion/WEB-INF/classe/BastillionConfig.properties"] volumeMounts: - mountPath: /config name: data subPath: config volumes: - name: data persistentVolumeClaim: claimName: jvb-data readOnly: false --- apiVersion: v1 kind: Service metadata: name: jvb namespace: jitsi spec: type: ClusterIP internalTrafficPolicy: Cluster ipFamilyPolicy: PreferDualStack ipFamilies: - IPv6 - IPv4 clusterIPs: - 2001:470:7116:f:1::31 - 10.0.91.31 clusterIP: 2001:470:7116:f:1::31 ports: - name: media port: 10000 targetPort: 10000 protocol: UDP - name: colibri port: 8080 targetPort: 8080 protocol: TCP selector: app: jvb ---