Konfiguration
1
Buckets und Schlüssel
Erstellen Sie bei Ihrem S3-Dienst die drei Buckets
overleaf-template-files, overleaf-project-blobs und overleaf-chunks sowie die beiden eingeschränkten Benutzer wie unter S3 einrichten beschrieben, oder betreiben Sie Garage im Cluster wie unten gezeigt. Legen Sie die vier Schlüssel in einem Secret ab:2
ConfigMap
30-config.yaml (additions)
3
Das Secret zum Pod hinzufügen und neu starten
Fügen Sie das Secret im Deployment (oder StatefulSet) neben den anderen hinzu:
Garage im Cluster
Ohne einen S3-Dienst ist Garage ein kleiner S3-Server, der im Cluster läuft. Das Setup für die Horizontale Skalierung wurde damit getestet. Die folgenden Befehle erzeugen die Schlüssel und legen das Secretoverleaf-s3 selbst an; verwenden Sie sie daher anstelle des Secret-Befehls aus Schritt 1.
MinIO, das im Beispiel von Overleaf verwendet wird, veröffentlicht keine Container-Images mehr:
minio/minio ist von Docker Hub und quay.io verschwunden.50-garage.yaml
GK plus 24 Hexadezimalzeichen, Secrets aus 64 Hexadezimalzeichen:
garage, und OVERLEAF_*_S3_REGION muss identisch sein.
Setzen Sie mit Garage in der ConfigMap für beide Dienste den Endpunkt, PATH_STYLE: "true" und die Region garage, wie in 60-config.yaml unter Horizontale Skalierung.
Mehrere Replikate
Alle Replikate müssen dieselben Buckets und Schlüssel verwenden. Sichern Sie die Buckets mit den Werkzeugen Ihres S3-Anbieters; die eigenen Festplatten der Replikate enthalten dann keine Daten, die gesichert werden müssen.Auf Kubernetes getestet
Auf Kubernetes 1.37 mit drei Replikaten und Garage wie oben bestand jeder End-to-End-Test dieser Seiten, der Projekte anlegt, Dateien hochlädt, den Verlauf nutzt oder Vorlagen veröffentlicht, und anschließend enthielten die Bucketsoverleaf-project-blobs, overleaf-chunks und overleaf-template-files die Objekte, während das eigene /var/lib/overleaf/data/history der Replikate leer blieb.
