MinIo za najmlađe

MinIO je izvrsno rješenje kada trebate lako i jednostavno organizirati skladištenje objekata. Elementarna postavka, mnogo platformi i dobre performanse učinili su svoje na polju narodne ljubavi. Tako da nismo imali drugog izbora nego prije mjesec dana proglasiti kompatibilnost Veeam Backup & Replication i MinIO. Uključujući tako važnu značajku kao što je nepromjenjivost. Zapravo, MinIO ima cjelinu odjeljak u dokumentaciji posvećenoj našoj integraciji.

Stoga ćemo danas govoriti o tome kako:

  • Postavljanje MinIO je vrlo brzo.
  • Postavljanje MinIO je malo manje brzo, ali puno bolje.
  • Koristite ga kao arhivsku razinu za Veeam SOBR Scalable Repository.

MinIo za najmlađe

Što si ti?

Kratak uvod za one koji se nisu susreli s MinIO. Ovo je pohrana objekata otvorenog koda kompatibilna s Amazon S3 API-jem. Izdano pod licencom Apache v2 i pridržava se filozofije spartanskog minimalizma.

Odnosno, nema rasprostranjeno GUI s nadzornim pločama, grafikonima i brojnim izbornicima. MinIO jednostavno pokreće svoj poslužitelj jednom naredbom, gdje možete jednostavno pohraniti podatke koristeći punu snagu S3 API-ja. Ali treba napomenuti da ova jednostavnost može biti varljiva kada su u pitanju korišteni resursi. RAM i CPU apsorbiraju se savršeno, ali o razlozima će biti riječi u nastavku. I, usput, takve kombinacije kao što su FreeNAS i TrueNAS koriste MinIO ispod haube.

Ovaj uvod može završiti ovdje.

Postavljanje MinIO je vrlo brzo

Postavljanje je toliko brzo da ćemo ga pogledati za Windows i Linux. Postoje opcije za Docker, i za Kubernetis, pa čak i za MacOS, ali značenje će svugdje biti isto.

Dakle, u slučaju Windowsa, idite na službenu web stranicu https://min.io/download#/windows i preuzmite najnoviju verziju. Tu također vidimo upute za pokretanje:

 minio.exe server F:Data

A tu je i link na malo detaljniji Vodič za brzi početak. Nema smisla ne vjerovati uputama, pa ga pokrenemo i dobijemo otprilike ovaj odgovor.

MinIo za najmlađe
To je sve! Pohrana radi i možete početi raditi s njom. Nisam se šalio kad sam rekao da je MinIO minimalistički i jednostavno radi. Ako slijedite vezu ponuđenu tijekom pokretanja, maksimalne dostupne funkcije su stvaranje spremnika. I možete početi pisati podatke.

Za ljubitelje Linuxa sve ostaje ništa manje jednostavno. Najjednostavnije upute:


wget https://dl.min.io/server/minio/release/linux-amd64/minio
chmod +x minio
./minio server /data

Rezultat se neće razlikovati od prethodno viđenog. 

Postavljanje MinIO je malo smislenije

Kao što razumijemo, prethodni odlomak je maženje u svrhu testiranja. I, budimo iskreni, MinIO vrlo široko koristimo za testiranje, što se nimalo ne sramimo priznati. Naravno, radi, ali šteta je izdržati ovo izvan ispitnih stolova. Stoga uzimamo datoteku u ruke i počinjemo je prisjećati.

HTTPS

Prvi obvezni korak na putu do proizvodnje je enkripcija. Na mreži već postoji milijun i tisuću priručnika za dodavanje certifikata u MiniIO, ali njihov opći plan je sljedeći:

  • Izradite certifikat
  • U slučaju Windowsa, stavite ga u C:Users%User%.miniocerts
  • Za Linux u ${HOME}/.minio/certs 
  • Ponovno pokretanje poslužitelja

Banalni Let's Encrypt je dosadan i svugdje se opisuje, pa je naš put put samuraja, pa u slučaju Windowsa preuzimamo Cygwin, a u slučaju Linuxa jednostavno provjerimo imamo li instaliran openssl. I radimo malu konzolnu magiju:

  • Stvorite ključeve: openssl ecparam -genkey -name prime256v1 | openssl ec -out privatni.ključ
  • Izrađujemo certifikat koristeći ključ: openssl req -new -x509 -days 3650 -key private.key -out public.crt
  • Kopirajte private.key i public.crt u gore navedenu mapu
  • Ponovno pokrenite MinIO

Ako je sve prošlo kako treba, onda će se ovako nešto pojaviti u statusu.

MinIo za najmlađe

Omogući MinIO Erasure Coding

Prvo, nekoliko riječi o temi. Ukratko: ovo je softverska zaštita podataka od oštećenja i gubitka. Kao napad, samo mnogo pouzdaniji. Ako klasični RAID6 može priuštiti gubitak dva diska, onda se MinIO može lako nositi s gubitkom polovice. Tehnologija je detaljnije opisana u službeni vodič. Ali ako uzmemo suštinu, onda je ovo implementacija Reed-Solomonovih kodova: sve informacije su pohranjene u obliku podatkovnih blokova, koji imaju paritetne blokove. Čini se da je sve to već učinjeno mnogo puta, ali postoji važno "ali": možemo eksplicitno naznačiti omjer blokova pariteta i blokova podataka za pohranjene objekte.
Hoćeš 1:1? Molim!
Želite li 5:2? Nema problema!

Vrlo važna značajka ako koristite nekoliko čvorova odjednom i želite pronaći vlastitu ravnotežu između maksimalne sigurnosti podataka i utrošenih resursa. Izvan kutije, MinIO koristi formulu N/2 (gdje je N ukupan broj diskova), tj. dijeli vaše podatke između N/2 podatkovnih diskova i N/2 paritetnih diskova. Prevedeno na ljudske pojmove: možete izgubiti pola diskova i vratiti podatke. Ovaj odnos je dan kroz Klasa skladištenja, omogućujući vam da sami odaberete što je važnije: pouzdanost ili kapacitet.

Vodič daje sljedeći primjer: pretpostavimo da imate instalaciju na 16 diskova i trebate spremiti datoteku veličine 100 MB. Ako se koriste zadane postavke (8 diskova za podatke, 8 za paritetne blokove), tada će datoteka na kraju zauzeti gotovo dvostruki volumen, tj. 200 MB. Ako je omjer diska 10/6, tada će biti potrebno 160 MB. 14/2 - 114 MB.

Još jedna važna razlika od racija: u slučaju kvara diska, MinIO će raditi na razini objekta, obnavljajući jedan po jedan, bez zaustavljanja cijelog sustava. Dok će obični napad biti prisiljen obnoviti cijeli volumen, što će trajati nepredvidivo dugo. Autor se sjeća police za diskove za koju je, nakon što su joj ispala dva diska, trebalo tjedan i pol dana da se preračuna. Bilo je dosta neugodno.

I, važna napomena: MinIO dijeli sve diskove za Erasure Coding u skupove od 4 do 16 diskova, koristeći najveću moguću veličinu skupa. A u budućnosti će jedan element informacija biti pohranjen samo unutar jednog skupa.

Sve ovo zvuči jako cool, ali koliko će biti teško postaviti? Idemo pogledati. Uzimamo naredbu za pokretanje i jednostavno ispisujemo diskove na kojima treba stvoriti pohranu. Ako je sve učinjeno ispravno, tada ćemo u izvješću vidjeti broj uključenih diskova. I savjet je da nije dobro odjednom dodavati pola diskova na jedan host, jer to dovodi do gubitka podataka.

c:minio>minio.exe server F: G: H: I: J: K:

MinIo za najmlađe
Zatim, za upravljanje i konfiguriranje MinIO poslužitelja trebat će nam agent kojeg možete preuzeti tamo sa službene stranice.

Kako ne biste iscrpili prste svaki put kada upisujete adresu i pristupne tipke (a nije sigurno), zgodno je odmah stvoriti alias kada prvi put počnete koristiti formulu mc alias set [VAŠ-PRISTUPNI-KLJUČ] [VAŠ-TAJNI-KLJUČ]

mc alias set veeamS3 https://172.17.32.52:9000 YOURS3ACCESSKEY YOURSECERTKE

Ili možete odmah dodati svog domaćina:

mc config host add minio-veeam https://minio.jorgedelacruz.es YOURS3ACCESSKEY YOURSECERTKEY

A onda ćemo stvoriti nepromjenjivu kantu s prekrasnim timom

mc mb --debug -l veeamS3/immutable 

mc: <DEBUG> PUT /immutable/ HTTP/1.1
Host: 172.17.32.52:9000
User-Agent: MinIO (windows; amd64) minio-go/v7.0.5 mc/2020-08-08T02:33:58Z
Content-Length: 0
Authorization: AWS4-HMAC-SHA256 Credential=minioadmin/20200819/us-east-1/s3/aws4_request, SignedHeaders=host;x-amz-bucket-object-lock-enabled;x-amz-content-sha256;x-amz-date, Signature=**REDACTED**
X-Amz-Bucket-Object-Lock-Enabled: true
X-Amz-Content-Sha256: UNSIGNED-PAYLOAD
X-Amz-Date: 20200819T092241Z
Accept-Encoding: gzip
mc: <DEBUG> HTTP/1.1 200 OK
Content-Length: 0
Accept-Ranges: bytes
Content-Security-Policy: block-all-mixed-content
Date: Wed, 19 Aug 2020 09:22:42 GMT
Location: /immutable
Server: MinIO/RELEASE.2020-08-16T18-39-38Z
Vary: Origin
X-Amz-Request-Id: 162CA0F9A3A3AEA0
X-Xss-Protection: 1; mode=block
mc: <DEBUG> Response Time:  253.0017ms

--debug omogućuje vam da vidite ne samo konačnu poruku, već i detaljnije informacije. 

-l znači —sa zaključavanjem, što znači nepromjenjivo

Ako se sada vratimo na web sučelje, tamo će se pojaviti naša nova kanta.

MinIo za najmlađe
To je sve za sada. Stvorili smo sigurnu pohranu i spremni smo prijeći na integraciju s Veeamom.

Također se možete uvjeriti da sve savršeno radi:

c:minio>mc admin info veeamS3

●  172.17.32.52:9000
   Uptime: 32 minutes
   Version: 2020-08-16T18:39:38Z
   Network: 1/1 OK
   Drives: 6/6 OK
0 B Used, 1 Bucket, 0 Objects
6 drives online, 0 drives offline

MinIO i Veeam

Upozorenje! Ako iz nekog nevjerojatnog razloga želite raditi putem HTTP-a, tada na HKEY_LOCAL_MACHINESOFTWAREVeeamVeeam Backup and Replication stvorite DWORD ključ SOBRArchiveS3DisableTLS. Postavite njegovu vrijednost na 1 i upamtite da mi izričito ne odobravamo takvo ponašanje i ne preporučujemo ga nikome.

Opet pažnja! Ako zbog nekog nesporazuma nastavite koristiti Windows 2008 R2, tada kada pokušate povezati MinIO s Veeamom, najvjerojatnije ćete dobiti pogrešku otprilike ovu: Nije uspjelo uspostavljanje veze s krajnjom točkom Amazon S3. To se može riješiti službenom zakrpom od microsoft.

Pa, pripreme su gotove, otvorimo VBR sučelje i idemo na karticu Backup Infrastructure, gdje ćemo pozvati čarobnjaka za dodavanje novog repozitorija.

MinIo za najmlađe
Naravno, zainteresirani smo za Object storage, odnosno S3 Compatible. U čarobnjaku koji se otvori postavite ime i prođite kroz korake koji označavaju adresu i račun. Ako je potrebno, ne zaboravite navesti vrata kroz koja će se slati zahtjevi za pohranu.

MinIo za najmlađe
Zatim odaberite spremnik, mapu i potvrdite okvir Učini nedavne sigurnosne kopije nepromjenjivima. Ili ga ne instaliramo. Ali budući da smo napravili spremište koje podržava tu funkciju, bila bi šteta ne koristiti ga.

MinIo za najmlađe
Dalje > Završi i uživaj u rezultatu.

Sada ga moramo dodati u SOBR repozitorij kao nivo kapaciteta. Da bismo to učinili, kreiramo novi ili uredimo postojeći. Zanima nas korak razine kapaciteta.

MinIo za najmlađe
Ovdje trebamo odabrati s kojim scenarijem ćemo raditi. Sve opcije su prilično dobro opisane u drugom članak, pa se neću ponavljati

A po završetku čarobnjaka automatski će se pokrenuti zadaci za kopiranje ili prijenos sigurnosnih kopija. Ali ako vaši planovi ne uključuju trenutno stavljanje opterećenja na sve sustave, svakako postavite prihvatljive intervale za rad na gumbu Window.

MinIo za najmlađe
I, naravno, možete obavljati zasebne zadatke sigurnosne kopije. Neki smatraju da je to čak i zgodnije, jer su nešto transparentnije i predvidljivije za korisnika koji ne želi ulaziti u detalje rada streljane. I tamo ima dovoljno detalja, pa još jednom preporučujem odgovarajući članak na gornjoj poveznici.

I na kraju, odgovor na podmuklo pitanje: što će se dogoditi ako ipak pokušate izbrisati sigurnosnu kopiju iz nepromjenjive pohrane?

Evo odgovora:

MinIo za najmlađe
To je sve za danas. U pravoj tradiciji, uhvatite popis korisnih tema na temu:

Izvor: www.habr.com

Dodajte komentar