Skonfiguruj magazyn obiektów blob S3 dla usługi ownCloud Infinite Scale

Aby przechowywać zawartość plików użytkownika w usłudze S3 za pomocą ownCloud Infinite Scale (oCIS), skonfiguruj usługę Storage-Users tak, aby korzystała ze s3ngsterownika, wskaż jej wstępnie utworzony kontener i przechowuj katalog metadanych usługi w trwałej pamięci masowej POSIX. Usługa S3 przechowuje bloby plików; nie zastępuje ona każdej lokalnej ścieżki danych oCIS.

Poniższa konfiguracja jest zgodna z dokumentacją ownCloud Infinite Scale 8.2. Przed zmianą systemu produkcyjnego porównaj nazwy zmiennych i przykłady wdrożeń z dokumentacją zainstalowanej wersji.

Przed konfiguracją sprawdź układ pamięci masowej

W tym kontekście blob to zapisana zawartość pliku, a metadane to informacje wykorzystywane przez oCIS do organizowania i wyszukiwania plików. W przypadku S3NG blob trafia do magazynu obiektów zgodnego z S3, a metadane pozostają w systemie plików POSIX. System plików powinien być trwale zamontowany i uwzględniany w kopiach zapasowych. Sterownik pamięci masowej systemu powinien pozostać ocis.

Skorzystaj z tej krótkiej listy kontrolnej przed lotem:

  • Wybierz dostawcę S3 i sprawdź jego punkt końcowy, region, nazwę kontenera, obsługiwane operacje interfejsu API S3 i limity dotyczące wielu części.
  • Utwórz kontener przed uruchomieniem oCIS. Udokumentowana konfiguracja S3NG wymaga istniejącego kontenera.
  • Utwórz dedykowaną tożsamość dostępu dla oCIS i zapisz jej klucz oraz sekret w menedżerze sekretów swojego wdrożenia lub w ustawieniach chronionego środowiska.
  • Wybierz ścieżkę do trwałych lokalnych metadanych i sprawdź, czy proces oCIS może je odczytać i zapisać.
  • W przypadku istniejącej instalacji zaplanuj obsługiwaną migrację przed zmianą sterownika pamięci masowej. Zmiana ustawień zaplecza nie jest kopią ani migracją istniejących danych pliku.

W notatkach dotyczących układu pamięci masowej ownCloud opisano , które informacje pozostają poza kontenerem S3. Dlatego samo przywrócenie kontenera nie stanowi pełnego planu odzyskiwania.

Przykładowy edytor konfiguracji pokazujący sterownik pamięci masowej s3ng, katalog główny metadanych POSIX i sterownik pamięci masowej systemu ocis.
Przykład trzech podstawowych ustawień pamięci masowej: S3NG dla obiektów blob użytkownika, trwały katalog główny metadanych POSIX i sterownik systemowy oCIS.

Utwórz kontener i udziel wymaganego dostępu

Skonfiguruj kontener w konsoli dostawcy lub narzędziach infrastruktury, a następnie nadaj usłudze oCIS dostęp tylko do wymaganego kontenera. Strona ownCloud S3 dokumentuje podstawową politykę dla interfejsu API S3 w stylu AWS. Zastąp ją bucket-nameswoim kontenerem i dostosuj składnię polityki do swojego dostawcy, jeśli jest on zgodny z S3, a nie z Amazon S3.

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": ["s3:ListBucket"],
      "Resource": ["arn:aws:s3:::bucket-name"]
    },
    {
      "Effect": "Allow",
      "Action": [
        "s3:*Object",
        "s3:*MultipartUpload",
        "s3:ListMultipartUploadParts"
      ],
      "Resource": ["arn:aws:s3:::bucket-name/*"]
    }
  ]
}

Numery ARN na poziomie kontenera i na poziomie obiektu różnią się: pierwszy pozwala na wylistowanie kontenera, drugi stosuje akcje do obiektów w nim zawartych. Należy przestrzegać wymagań polityki kontenera ownCloud S3 oraz aktualnej dokumentacji polityki dostawcy. Nie należy wklejać danych uwierzytelniających do pliku polityki, repozytorium źródłowego ani zrzutu ekranu.

Przykładowy edytor zasad JSON wyświetlający listę uprawnień kontenera i uprawnień obiektu dla tymczasowego kontenera S3.
W przykładzie uprawnienia do listy kontenerów są oddzielone od uprawnień do obiektów i przesyłania wielu części; należy zastąpić tymczasowy ARN kontenera.

Ustaw zmienne Storage-Users S3NG

W przypadku środowiska usługi lub pliku Compose akceptującego standardowe zmienne środowiskowe oCIS należy ustawić następujące wartości. Te przykładowe wartości są symbolami zastępczymi; należy użyć punktu końcowego i regionu przypisanych przez dostawcę.

STORAGE_USERS_DRIVER: s3ng
STORAGE_USERS_S3NG_ROOT: /var/lib/ocis/storage/users
STORAGE_SYSTEM_DRIVER: ocis
STORAGE_USERS_S3NG_ENDPOINT: https://s3.example.com
STORAGE_USERS_S3NG_REGION: us-east-1
STORAGE_USERS_S3NG_ACCESS_KEY: ${OCIS_S3_ACCESS_KEY}
STORAGE_USERS_S3NG_SECRET_KEY: ${OCIS_S3_SECRET_KEY}
STORAGE_USERS_S3NG_BUCKET: ocis-user-blobs

Zamontuj /var/lib/ocis/storage/users(lub wybierz katalog główny) na trwałym nośniku POSIX. Nie kieruj tej ścieżki metadanych na kontener S3. Wstrzyknij klucz dostępu i klucz tajny w bezpieczny sposób; powyższe odwołania do zmiennych zakładają, że wdrożenie zapewnia te wartości klucza tajnego. Punkt końcowy musi być osiągalny z usługi oCIS, a nazwa kontenera, region i dane uwierzytelniające muszą odnosić się do tego samego konta dostawcy i kontenera.

Jeśli korzystasz z modułowego ocis_fullprzykładu Compose w ownCloud, opcjonalna nakładka S3 korzysta z S3NGustawienia specyficznego dla przykładu i oddzielnego s3ng.ymlpliku konfiguracyjnego. Postępuj zgodnie z tym przykładem jako kompletnym wzorcem wdrożenia, zamiast ślepo mieszać go z innym plikiem Compose. Zobacz oficjalny przykład wdrożenia oCIS Compose oraz dokumentację środowiska Storage-Users .

Przykładowy plik środowiska z punktem końcowym S3, regionem, nazwą kontenera oraz zamaskowanym kluczem dostępu i kluczem tajnym.
Wprowadź punkt końcowy, region i kontener dla swojego dostawcy; nie umieszczaj kluczy dostępu ani kluczy tajnych w zatwierdzonej konfiguracji.

Rozmiar przesyłanych plików w częściach jest taki sam, jak oczekiwałeś

Duże pliki są przesyłane w wieloczęściowych fragmentach. Amazon S3 dokumentuje maksymalny rozmiar obiektu 5 TiB i limit 10 000 części; rozmiar części musi mieścić się w przedziale od 5 MiB do 5 GiB. Domyślny rozmiar części w dokumentacji S3NG wynosi 16 MiB. Przy tej wartości domyślnej limit liczby części może stać się praktycznym limitem przed maksymalnym rozmiarem obiektu określonym przez dostawcę. Strona 8.2 ownCloud szacuje domyślny limit na 160 GiB; użyj skonfigurowanego rozmiaru części i reguł dostawcy, aby obliczyć bezpieczne maksimum i pozostawić margines.

Jedynym parametrem multipart, który ownCloud dokumentuje jako konfigurowalny, jest STORAGE_USERS_S3NG_PUT_OBJECT_PART_SIZE. Zwiększ rozmiar części, jeśli obsługiwany rozmiar pliku wymagałby więcej niż 10 000 części. Wartość to a uint64(liczba całkowita bez znaku), więc skonfiguruj ją jako liczbę bajtów, a nie ciąg z dodaną wartością „MiB”. Utrzymuj ją w udokumentowanym zakresie 5 MiB–5 GiB i upewnij się, że Twój dostawca S3 obsługuje wybraną wartość. Dla obiektu 5 TiB w 10 000 części, średnia wielkość części musiałaby wynosić 500 MiB.

Zarezerwuj również tymczasową przestrzeń dyskową na hoście lub kontenerze oCIS: ownCloud zaznacza, że ​​potrzebuje co najmniej tyle samo tymczasowej pojemności, co największy oczekiwany plik, aby buforować przychodzące dane. Prawidłowy kontener i dane uwierzytelniające nie zapobiegną awariom spowodowanym zbyt małym limitem części lub zapełnieniem dysku tymczasowego. Zobacz limity przesyłania danych w usłudze S3 w ownCloud i referencje dotyczące typów zmiennych środowiskowych .

Zastosuj, zweryfikuj i chroń dane

Po zapisaniu konfiguracji uruchom ponownie lub ponownie wdróż oCIS, postępując zgodnie z procedurą instalacji. Sprawdź logi usług pod kątem błędów konfiguracji, punktów końcowych, uprawnień lub połączenia. Następnie uruchom sprawdzanie magazynu obiektów blob w tym samym skonfigurowanym środowisku wykonawczym, co oCIS:

ocis storage-users blobstore check

To polecenie konserwacyjne korzysta ze skonfigurowanego magazynu blobów i wykonuje cykliczne przesyłanie, pobieranie i usuwanie danych z losowym ładunkiem testowym. Jest to ukierunkowane sprawdzenie pamięci masowej, a nie dowód na to, że każdy przepływ pracy skierowany do użytkownika lub bardzo duże przesyłanie danych zakończy się sukcesem. Dokumentacja polecenia blobstore dokumentuje jego opcje, w tym konfigurowalny rozmiar ładunku testowego.

Okno terminala z poleceniem ocis storage-users blobstore check i brakiem wyświetlonego wyniku.
Uruchom to polecenie z tą samą konfiguracją oCIS, aby sprawdzić skonfigurowany blobstore. Obraz nie zawiera wyników testu.

Na koniec prześlij mały plik testowy przez klienta lub interfejs internetowy i sprawdź, czy się wyświetla i otwiera. W przypadku wdrożenia z dużym plikiem, przetestuj również reprezentatywny rozmiar pliku, zanim zaczniesz polegać na konfiguracji. Pomyślna krótka próba nie weryfikuje pojemności multipart ani dostępności dysku tymczasowego.

Utwórz kopię zapasową obiektów S3 oraz metadanych POSIX, konfiguracji i innych wymaganych danych oCIS jako skoordynowany zestaw. Wskazówki dotyczące tworzenia kopii zapasowych ownCloud zalecają zatrzymanie instancji w celu utworzenia kopii zapasowej i oddzielne przetwarzanie zewnętrznie przechowywanych obiektów blob S3. Zachowaj odzyskiwalne kopie obu warstw pamięci masowej i przetestuj procedurę przywracania przed traktowaniem wdrożenia jako chronionego: uwagi dotyczące tworzenia kopii zapasowych ownCloud .

Lista kontrolna szybkiej walidacji

  • STORAGE_USERS_DRIVERjest s3ng; pamięć systemowa pozostaje ocis.
  • Głównym źródłem metadanych jest trwały magazyn POSIX, a kontener S3 już istnieje.
  • Punkt końcowy, region, kontener, dane uwierzytelniające i zasady odpowiadają temu samemu kontu dostawcy.
  • Rozmiar części wieloczęściowych, pojemność 10 000 części i tymczasowe miejsce przechowywania pokrywają największy planowany plik.
  • Sprawdzenie magazynu obiektów blob kończy się pomyślnie, rzeczywisty plik przesłany przez klienta otwiera się poprawnie, a metadane i zawartość zasobnika są uwzględniane w planach tworzenia kopii zapasowych i przywracania.

Zostaw komentarz

Napraw błędy certyfikatu synchronizacji ownCloud w źródle TLS

Napraw błędy certyfikatu synchronizacji ownCloud w źródle TLS

Przywróć synchronizację pulpitu ownCloud, sprawdzając nazwę hosta serwera, łańcuch certyfikatów, zaufanie prywatnego urzędu certyfikacji i problemy z portalem uwierzytelniającym bez wyłączania weryfikacji TLS.

Wyczyść ostrzeżenie o integralności ownCloud po aktualizacji

Użyj raportu o nieprawidłowych plikach, aby zidentyfikować niezgodne pliki główne lub podpisy aplikacji, przywrócić prawidłowe pliki wydania i bezpiecznie zweryfikować kontrolę integralności.

Zainstaluj ownCloud Infinite Scale z Docker Compose

Wdróż ownCloud Infinite Scale z oficjalnego przykładu Compose, skonfiguruj domeny i trwałą pamięć masową, a następnie zweryfikuj protokół TLS, kontenery i pierwsze logowanie.

Skonfiguruj magazyn obiektów blob S3 dla usługi ownCloud Infinite Scale

Skonfiguruj magazyn obiektów blob S3 dla usługi ownCloud Infinite Scale

Skonfiguruj sterownik S3NG, uprawnienia kontenera, trwałe przechowywanie metadanych i rozmiar przesyłanych danych, aby ownCloud Infinite Scale mógł niezawodnie przechowywać zawartość plików.

Gdy przesyłanie danych przez ownCloud zatrzymuje się na poziomie 99%, sprawdź te limity

Gdy przesyłanie danych przez ownCloud zatrzymuje się na poziomie 99%, sprawdź te limity

Dowiedz się, dlaczego przesyłanie danych na serwer ownCloud zatrzymuje się przed ukończeniem, sprawdzając status pliku, limit, tymczasową przestrzeń na dysku, limity PHP i limity czasu serwera proxy.

Bezpiecznie wyczyść ostrzeżenie ownCloud Apache .htaccess

Bezpiecznie wyczyść ostrzeżenie ownCloud Apache .htaccess

Ustaw opcję AllowOverride All tylko dla głównego katalogu internetowego ownCloud, sprawdź aktywny vhost Apache i bezpiecznie przeładuj, aby przywrócić reguły .htaccess.

Skonfiguruj audyt przedsiębiorstwa ownCloud i zweryfikuj dzienniki

Włącz aplikację Enterprise Auditing firmy ownCloud, kieruj zdarzenia admin_audit do chronionego pliku dziennika i upewnij się, że rejestrowane są rzeczywiste działania użytkowników.

Połącz ownCloud Infinite Scale z Keycloak za pomocą OIDC

Połącz ownCloud Infinite Scale z Keycloak za pomocą OIDC

Wydawca domeny, klient sieciowy i użytkownik Keycloak są zgodne z oświadczeniami, dzięki którym ownCloud Infinite Scale może niezawodnie logować użytkowników za pośrednictwem klientów sieciowych i mobilnych.

Przenieś pliki ownCloud do nowego właściciela bez utraty udziałów

Przenieś swoje pliki i udziały wychodzące za pomocą polecenia occ usługi ownCloud, sprawdź, co pozostaje, i zweryfikuj dostęp przed usunięciem starego konta.

Przyspiesz zapytania ownCloud 10, bezpiecznie zarządzając indeksami

Dowiedz się, kiedy indeksy bazy danych ownCloud 10 wymagają uwagi, jak bezpiecznie stosować obsługiwane aktualizacje schematu oraz kiedy lepszym rozwiązaniem jest dostrojenie zapytań lub zmiana bazy danych.