구성
1
버킷 및 키
S3 설정에 설명된 대로 S3 서비스에서 세 개의 버킷
overleaf-template-files, overleaf-project-blobs, overleaf-chunks와 두 개의 제한된 사용자를 만들거나, 아래와 같이 클러스터에서 Garage를 실행하세요. 네 개의 키를 Secret에 넣으세요.2
ConfigMap
30-config.yaml (additions)
3
파드에 Secret 추가 및 재시작
Deployment(또는 StatefulSet)에서 다른 Secret 옆에 이 Secret을 추가하세요.
클러스터 내 Garage
S3 서비스가 없다면 Garage는 클러스터에서 실행되는 작은 S3 서버입니다. 수평 확장 구성은 Garage로 테스트되었습니다. 아래 명령은 키를 생성하고 Secretoverleaf-s3를 직접 만들므로, 1단계의 Secret 명령 대신 이 명령을 사용하세요.
Overleaf 샘플에서 사용하는 MinIO는 더 이상 컨테이너 이미지를 게시하지 않습니다.
minio/minio는 Docker Hub와 quay.io에서 사라졌습니다.50-garage.yaml
GK와 16진수 24자로, 시크릿은 16진수 64자로 구성됩니다.
garage이며, OVERLEAF_*_S3_REGION도 같아야 합니다.
Garage를 사용하는 경우 수평 확장의 60-config.yaml과 같이 ConfigMap에서 두 서비스 모두에 엔드포인트, PATH_STYLE: "true", 리전 garage를 설정하세요.
여러 레플리카
모든 레플리카는 같은 버킷과 키를 사용해야 합니다. 버킷은 S3 제공업체의 도구로 백업하세요. 그러면 레플리카 자체 디스크에는 백업이 필요한 데이터가 남지 않습니다.Kubernetes에서의 테스트
레플리카 세 개와 위와 같은 Garage를 둔 Kubernetes 1.37에서, 프로젝트를 만들거나 파일을 업로드하거나 기록을 사용하거나 템플릿을 게시하는 이 페이지들의 모든 엔드 투 엔드 테스트가 통과했습니다. 이후 버킷overleaf-project-blobs, overleaf-chunks, overleaf-template-files에는 객체가 저장되었고, 레플리카 자체의 /var/lib/overleaf/data/history는 비어 있었습니다.
