Konfiguracja
1
Buckety i klucze
Utwórz trzy buckety
overleaf-template-files, overleaf-project-blobs i overleaf-chunks oraz dwóch użytkowników z ograniczonymi uprawnieniami w swojej usłudze S3 zgodnie z opisem w sekcji Konfiguracja S3 lub uruchom Garage w klastrze, jak pokazano poniżej. Umieść cztery klucze w Secret:2
ConfigMap
30-config.yaml (additions)
3
Dodaj Secret do poda i uruchom ponownie
W Deployment (lub StatefulSet) dodaj Secret obok pozostałych:
Garage w klastrze
Jeśli nie masz usługi S3, Garage to niewielki serwer S3 działający w klastrze. Konfiguracja ze strony Skalowanie poziome została z nim przetestowana. Poniższe polecenia same generują klucze i tworzą Secretoverleaf-s3, więc użyj ich zamiast polecenia tworzącego Secret z kroku 1.
MinIO, używane w przykładzie Overleaf, nie publikuje już obrazów kontenerów:
minio/minio zniknęło z Docker Hub i quay.io.50-garage.yaml
GK plus 24 znaki szesnastkowe, a sekrety mają 64 znaki szesnastkowe:
garage, a OVERLEAF_*_S3_REGION musi mieć tę samą wartość.
W przypadku Garage ustaw w ConfigMap punkt końcowy, PATH_STYLE: "true" i region garage dla obu usług, tak jak w 60-config.yaml na stronie Skalowanie poziome.
Kilka replik
Wszystkie repliki muszą używać tych samych bucketów i kluczy. Twórz kopie zapasowe bucketów za pomocą narzędzi swojego dostawcy S3; własne dyski replik nie przechowują wtedy żadnych danych wymagających kopii zapasowej.Przetestowano na Kubernetes
Na Kubernetes 1.37 z trzema replikami i Garage jak powyżej każdy test end-to-end z tych stron, który tworzy projekty, przesyła pliki, korzysta z historii lub publikuje szablony, przeszedł pomyślnie, a następnie bucketyoverleaf-project-blobs, overleaf-chunks i overleaf-template-files zawierały obiekty, podczas gdy własny katalog /var/lib/overleaf/data/history replik pozostał pusty.
