Minio za mališane

MinIO je odlično rješenje kada trebate lako i jednostavno organizirati skladištenje objekata. Elementarna postavka, mnoge platforme i dobre performanse odradile su svoj posao na polju popularne ljubavi. Tako da nismo imali drugog izbora osim da proglasimo kompatibilnost prije mjesec dana Veeam Backup & Replication i MinIO. Uključujući tako važnu karakteristiku kao što je nepromjenjivost. U stvari, MinIO ima celinu odjeljak u dokumentaciji posvećenoj našoj integraciji.

Stoga ćemo danas pričati o tome kako:

  • Postavljanje MinIO-a je vrlo brzo.
  • Postavljanje MinIO-a je malo manje brzo, ali mnogo bolje.
  • Koristite ga kao nivo arhive za Veeam SOBR Scalable Repository.

Minio za mališane

Šta si ti?

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

Odnosno, nema veliki GUI sa kontrolnim tablama, grafikonima i brojnim menijima. MinIO jednostavno pokreće svoj server jednom komandom, 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 se apsorbiraju savršeno, ali o razlozima ćemo govoriti u nastavku. I, usput, kombinati kao što su FreeNAS i TrueNAS koriste MinIO ispod haube.

Ovaj uvod se ovdje može završiti.

Postavljanje MinIO-a 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 svuda 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 početak:

 minio.exe server F:Data

A tu je i link do malo detaljnijeg Vodič za brzi početak. Nema smisla ne vjerovati uputama, pa ga pokrenemo i dobijemo nešto poput ovog odgovora.

Minio za mališane
To je sve! Skladištenje radi i možete početi raditi s njim. Nisam se šalio kada sam rekao da je MinIO minimalistički i jednostavno radi. Ako pratite link koji se nudi tokom pokretanja, maksimalne funkcije dostupne su za kreiranje kante. 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 prethodnog viđenog. 

Postavljanje MinIO-a je malo značajnije

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

HTTPS

Prvi obavezni korak na putu proizvodnje je šifriranje. Na mreži već postoji milion i hiljadu priručnika za dodavanje sertifikata u MiniIO, ali njihov opšti plan je sledeći:

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

Banalni Let's Encrypt je dosadan i svuda je opisan, tako da je naš put put samuraja, pa u slučaju Windowsa preuzimamo Cygwin, au slučaju Linuxa jednostavno provjerimo da li imamo instaliran openssl. I radimo malu magiju konzole:

  • Kreirajte ključeve: openssl ecparam -genkey -name prime256v1 | openssl ec -out privatni.ključ
  • Kreiramo certifikat koristeći ključ: openssl req -new -x509 -days 3650 -key private.key -out public.crt
  • Kopirajte private.key i public.crt u mapu navedenu iznad
  • Ponovo pokrenite MinIO

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

Minio za mališane

Omogućite kodiranje MinIO Erasure

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 da izgubi dva diska, onda se MinIO može lako nositi s gubitkom polovine. Tehnologija je detaljnije opisana u službeni vodič. Ali ako uzmemo suštinu, onda je ovo implementacija Reed-Solomon kodova: sve informacije se pohranjuju u obliku blokova podataka, koji imaju paritetne blokove. I čini se da je sve ovo već učinjeno mnogo puta, ali postoji važno “ali”: možemo eksplicitno naznačiti omjer paritetnih blokova prema blokovima podataka za pohranjene objekte.
Hoćeš 1:1? Molim te!
Hoćeš 5:2? Nema problema!

Vrlo važna karakteristika ako koristite nekoliko čvorova odjednom i želite pronaći svoj balans 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 diskova s ​​podacima i N/2 paritetnih diskova. Prevedeno na ljudske termine: možete izgubiti polovinu diskova i oporaviti podatke. Ova relacija je data kroz Storage Class, što vam omogućava da sami odaberete šta je važnije: pouzdanost ili kapacitet.

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

Još jedna bitna razlika u odnosu na napade: u slučaju kvara diska, MinIO će raditi na nivou objekta, vraćajući se jedan po jedan, bez zaustavljanja cijelog sistema. Dok će redovan raid biti primoran da obnovi cijeli volumen, što će potrajati nepredvidivo vrijeme. Autor se sjeća police za diskove za koju je, nakon što su dva diska ispala, trebalo tjedan i po da se preračuna. Bilo je prilično neprijatno.

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

Sve ovo zvuči jako cool, ali koliko će to biti teško postaviti? Hajde da pogledamo. Preuzimamo naredbu za pokretanje i jednostavno navodimo diskove na kojima treba kreirati skladište. Ako je sve urađeno ispravno, tada ćemo u izvještaju vidjeti broj uključenih diskova. A savjet je da nije dobro dodavati pola diskova odjednom na jedan host, jer će to dovesti do gubitka podataka.

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

Minio za mališane
Zatim, za upravljanje i konfiguraciju MinIO servera, trebat će nam agent, kojeg možete preuzeti na istom mestu sa službene stranice.

Kako ne biste istrošili prste svaki put kada kucate adresu i pristupne ključeve (a nije sigurno), zgodno je odmah kreirati pseudonim kada prvi put počnete koristiti formulu mc pseudonim postavljen [VAŠ-KLJUČ ZA PRISTUP] [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 sa 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ćava 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 kutija.

Minio za mališane
To je sve za sada. Stvorili smo sigurnu pohranu i spremni smo za integraciju s Veeam-om.

Također možete biti sigurni da sve radi savršeno:

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

Oprez Ako iz nekog nevjerovatnog razloga želite raditi preko HTTP-a, onda na HKEY_LOCAL_MACHINESOFTWAREVeeamVeeam Backup and Replication kreirajte DWORD ključ SOBRArchiveS3DisableTLS. Postavite njegovu vrijednost na 1 i zapamtite da mi izričito ne odobravamo takvo ponašanje i nikome ga ne preporučujemo.

Ponovo pažnja! Ako zbog nekog nesporazuma nastavite da koristite Windows 2008 R2, onda kada pokušate da povežete MinIO sa Veeam-om, najverovatnije ćete dobiti grešku otprilike ovako: Nije uspelo uspostavljanje veze sa krajnjom tačkom Amazon S3. Ovo se može liječiti službenim zakrpom od Microsoft.

Pa, pripreme su završene, otvorimo VBR interfejs i idemo na karticu Backup Infrastructure, gde ćemo pozvati čarobnjaka za dodavanje novog spremišta.

Minio za mališane
Naravno, zanima nas Object storage, odnosno S3 Compatible. U čarobnjaku koji se otvori postavite ime i prođite kroz korake koji ukazuju na adresu i račun. Ako je potrebno, ne zaboravite navesti kapiju kroz koja će zahtjevi za skladište biti proksi.

Minio za mališane
Zatim odaberite kantu, mapu i potvrdite okvir Učini nedavne sigurnosne kopije nepromjenjivim. Ili ga ne instaliramo. Ali pošto smo napravili skladište koje podržava ovu funkciju, bio bi grijeh ne koristiti ga.

Minio za mališane
Dalje > Završi i uživajte u rezultatu.

Sada ga moramo dodati u SOBR spremište kao nivo kapaciteta. Da bismo to učinili, ili kreiramo novi ili uredimo postojeći. Zainteresovani smo za korak nivoa kapaciteta.

Minio za mališane
Ovdje moramo odabrati s kojim ćemo scenarijem 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 postavljanje opterećenja na sve sisteme, onda obavezno postavite prihvatljive intervale za rad na dugmetu Prozor.

Minio za mališane
I, naravno, možete raditi zasebne zadatke sigurnosne kopije. Neki smatraju da je to još zgodnije, jer su nešto transparentnije i predvidljivije za korisnika koji ne želi da ulazi u detalje rada streljane. A tu ima dovoljno detalja, pa još jednom preporučujem odgovarajući članak na linku iznad.

I na kraju, odgovor na izdajničko pitanje: šta će se dogoditi ako ipak pokušate da izbrišete rezervnu kopiju iz nepromjenjive memorije?

Evo odgovora:

Minio za mališane
To je sve za danas. U pravoj tradiciji, pogledajte listu korisnih tema na temu:

izvor: www.habr.com

Dodajte komentar