MinIo za najmlajše

MinIO je odlična rešitev, ko morate enostavno in preprosto organizirati shranjevanje predmetov. Osnovna nastavitev, številne platforme in dobra zmogljivost so opravili svoje delo na polju ljudske ljubezni. Tako nismo imeli druge izbire, kot da pred mesecem dni razglasimo združljivost Veeam Backup & Replication in MinIO. Vključno s tako pomembno lastnostjo, kot je nespremenljivost. Pravzaprav ima MinIO celoto oddelek v dokumentaciji, namenjeni naši integraciji.

Zato bomo danes govorili o tem, kako:

  • Nastavitev MinIO je zelo hitra.
  • Nastavitev MinIO je nekoliko manj hitra, a veliko boljša.
  • Uporabite ga kot arhivsko raven za Veeam SOBR Scalable Repository.

MinIo za najmlajše

kaj si

Kratek uvod za tiste, ki se še niste srečali z MinIO. To je odprtokodno shranjevanje predmetov, združljivo z API-jem Amazon S3. Izdan pod licenco Apache v2 in se drži filozofije špartanskega minimalizma.

To pomeni, da nima obsežnega GUI z nadzornimi ploščami, grafi in številnimi meniji. MinIO preprosto zažene svoj strežnik z enim ukazom, kjer lahko preprosto shranjujete podatke s polno močjo API-ja S3. Vendar je treba opozoriti, da je ta preprostost lahko varljiva, ko gre za uporabljena sredstva. RAM in CPU sta popolnoma absorbirana, vendar bodo razlogi obravnavani spodaj. In, mimogrede, takšne kombinacije, kot sta FreeNAS in TrueNAS, uporabljajo MinIO pod pokrovom.

Ta uvod se lahko tukaj konča.

Nastavitev MinIO je zelo hitra

Nastavitev je tako hitra, da si jo bomo ogledali za Windows in Linux. Obstajajo možnosti za Docker, za Kubernetis in celo za MacOS, vendar bo pomen povsod enak.

Torej, v primeru Windows, pojdite na uradno spletno mesto https://min.io/download#/windows in prenesite najnovejšo različico. Tam vidimo tudi navodila za zagon:

 minio.exe server F:Data

In obstaja tudi povezava do malo podrobnejšega Vodnik za hiter začetek. Nima smisla ne verjeti navodilom, zato ga zaženemo in dobimo nekaj takega odgovora.

MinIo za najmlajše
To je vse! Shramba deluje in lahko začnete delati z njo. Nisem se šalil, ko sem rekel, da je MinIO minimalističen in preprosto deluje. Če sledite povezavi, ki je ponujena med zagonom, je največ razpoložljivih funkcij ustvarjanje vedra. In lahko začnete pisati podatke.

Za ljubitelje Linuxa vse ostaja nič manj preprosto. Najpreprostejša navodila:


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

Rezultat se ne bo razlikoval od prej videnega. 

Nastavitev MinIO je nekoliko bolj smiselna

Kot razumemo, je prejšnji odstavek razvajanje za namene testiranja. In, bodimo iskreni, MinIO zelo pogosto uporabljamo za testiranje, česar nas ni sram priznati. Seveda deluje, vendar je škoda prenašati to zunaj testnih miz. Zato vzamemo datoteko v roke in jo začnemo spominjati.

HTTPS

Prvi obvezni korak na poti do produkcije je šifriranje. V omrežju obstaja že milijon in tisoč priročnikov za dodajanje certifikatov v MiniIO, vendar je njihov splošni načrt tak:

  • Ustvarite potrdilo
  • V primeru sistema Windows ga postavite v C:Users%User%.miniocerts
  • Za Linux v ${HOME}/.minio/certs 
  • Ponovni zagon strežnika

Banalno Let's Encrypt je dolgočasno in je opisano povsod, zato je naša pot pot samurajev, zato v primeru Windows prenesemo Cygwin, v primeru Linuxa pa preprosto preverimo, ali imamo nameščen openssl. In naredimo malo konzolne čarovnije:

  • Ustvarite ključe: openssl ecparam -genkey -name prime256v1 | openssl ec -out zasebni.ključ
  • Potrdilo ustvarimo s ključem: openssl req -new -x509 -days 3650 -key private.key -out public.crt
  • Kopirajte private.key in public.crt v zgoraj navedeno mapo
  • Znova zaženite MinIO

Če je šlo vse tako, kot bi moralo, se bo v statusu pojavilo nekaj takega.

MinIo za najmlajše

Omogoči kodiranje za izbris MinIO

Najprej nekaj besed o temi. Na kratko: to je programska zaščita podatkov pred poškodbami in izgubo. Kot racija, le veliko bolj zanesljiva. Če si klasični RAID6 lahko privošči izgubo dveh diskov, potem se MinIO zlahka spopade z izgubo polovice. Tehnologija je podrobneje opisana v uradni vodnik. Če pa vzamemo bistvo, potem je to implementacija Reed-Solomonovih kod: vse informacije so shranjene v obliki podatkovnih blokov, ki imajo paritetne bloke. In zdi se, da je bilo vse to storjeno že večkrat, vendar obstaja pomemben "ampak": lahko eksplicitno navedemo razmerje med paritetnimi bloki in podatkovnimi bloki za shranjene predmete.
Želite 1:1? prosim!
Želite 5:2? Brez problema!

Zelo pomembna funkcija, če uporabljate več vozlišč hkrati in želite najti lastno ravnovesje med največjo varnostjo podatkov in porabljenimi viri. MinIO takoj po namestitvi uporablja formulo N/2 (kjer je N skupno število diskov), tj. razdeli vaše podatke med N/2 podatkovne diske in N/2 paritetne diske. Če prevedemo v človeški jezik: izgubite lahko polovico diskov in obnovite podatke. Ta odnos je podan skozi Razred shranjevanja, ki vam omogoča, da sami izberete, kaj je bolj pomembno: zanesljivost ali zmogljivost.

Vodič podaja naslednji primer: predpostavimo, da imate namestitev na 16 diskih in morate shraniti datoteko velikosti 100 MB. Če so uporabljene privzete nastavitve (8 diskov za podatke, 8 za paritetne bloke), bo datoteka sčasoma zavzela skoraj dvojni volumen, tj. 200 MB. Če je diskovno razmerje 10/6, bo potrebnih 160 MB. 14/2 - 114 MB.

Druga pomembna razlika od napadov: v primeru okvare diska bo MinIO deloval na ravni objekta in obnovil enega za drugim, ne da bi zaustavil celoten sistem. Medtem ko bo redni napad prisiljen obnoviti celotno količino, kar bo trajalo nepredvidljivo veliko časa. Avtor se spominja police za diske, ki so jo po dveh izpadlih diskih preračunavali teden in pol. Bilo je kar neprijetno.

In pomembna opomba: MinIO razdeli vse diske za Erasure Coding v nize od 4 do 16 diskov, pri čemer uporabi največjo možno nastavljeno velikost. In v prihodnosti bo en element informacije shranjen samo znotraj enega niza.

Vse to se sliši zelo kul, toda kako težko bo to nastaviti? Gremo pogledat. Vzamemo ukaz za zagon in preprosto navedemo diske, na katerih je treba ustvariti shrambo. Če je vse opravljeno pravilno, bomo v poročilu videli število vključenih diskov. In nasvet je, da ni dobro dodajati polovice diskov na en host naenkrat, ker s tem pride do izgube podatkov.

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

MinIo za najmlajše
Nato bomo za upravljanje in konfiguracijo strežnika MinIO potrebovali agenta, ki ga lahko prenesete tam z uradne strani.

Da ne bi izrabljali prstov vsakič, ko vnašate naslov in tipke za dostop (in to ni varno), je priročno, da takoj ustvarite vzdevek, ko prvič začnete uporabljati formulo mc alias set [VAŠ-DOSTOPNI-KLJUČ] [VAŠ-TAJNI-KLJUČ]

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

Lahko pa takoj dodate svojega gostitelja:

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

In potem bomo s čudovito ekipo ustvarili nespremenljivo vedro

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 omogoča ogled ne samo končnega sporočila, ampak tudi podrobnejše informacije. 

-l pomeni —with-lock, kar pomeni nespremenljivo

Če se zdaj vrnemo na spletni vmesnik, se bo tam pojavilo naše novo vedro.

MinIo za najmlajše
To je vse za zdaj. Ustvarili smo varno shranjevanje in smo pripravljeni na integracijo z Veeamom.

Lahko se tudi prepričate, da vse deluje brezhibno:

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 in Veeam

Opozorilo! Če iz nekega neverjetnega razloga želite delati prek HTTP, potem na HKEY_LOCAL_MACHINESOFTWAREVeeamVeeam Backup and Replication ustvarite ključ DWORD SOBRArchiveS3DisableTLS. Nastavite njegovo vrednost na 1 in ne pozabite, da takšnega vedenja močno ne odobravamo in ga ne priporočamo nikomur.

Ponovno pozor! Če zaradi nekega nesporazuma še naprej uporabljate Windows 2008 R2, potem ko poskusite povezati MinIO z Veeamom, boste najverjetneje prejeli napako nekako takole: Ni uspelo vzpostaviti povezave s končno točko Amazon S3. To je mogoče zdraviti z uradnim popravkom iz Microsoft.

No, priprave so končane, odprimo VBR vmesnik in pojdimo na zavihek Backup Infrastructure, kjer bomo priklicali čarovnika za dodajanje novega repozitorija.

MinIo za najmlajše
Seveda nas zanima Object storage, in sicer S3 Compatible. V čarovniku, ki se odpre, nastavite ime in pojdite skozi korake, ki označujejo naslov in račun. Po potrebi ne pozabite določiti vrat, skozi katera bodo poslane zahteve v shrambo.

MinIo za najmlajše
Nato izberite vedro, mapo in potrdite polje Naredi nedavne varnostne kopije nespremenljive. Ali pa ga ne namestimo. A ker smo naredili skladišče, ki podpira to funkcijo, bi bil greh, če ga ne bi uporabili.

MinIo za najmlajše
Naprej > Končaj in uživaj v rezultatu.

Zdaj ga moramo dodati v repozitorij SOBR kot stopnjo zmogljivosti. Da bi to naredili, ustvarimo novega ali uredimo obstoječega. Zanima nas korak Capacity Tier.

MinIo za najmlajše
Tukaj moramo izbrati, s katerim scenarijem bomo delali. Vse možnosti so precej dobro opisane v drugem članek, da se ne bom ponavljal

Po zaključku čarovnika se bodo samodejno zagnala opravila za kopiranje ali prenos varnostnih kopij. Če pa vaši načrti ne vključujejo takojšnje obremenitve vseh sistemov, potem ne pozabite nastaviti sprejemljivih intervalov za delo na gumbu Window.

MinIo za najmlajše
In seveda lahko izvajate ločena opravila varnostnega kopiranja. Nekateri menijo, da je to celo bolj priročno, saj so nekoliko bolj pregledni in predvidljivi za uporabnika, ki se ne želi poglabljati v podrobnosti delovanja strelišča. In tam je dovolj podrobnosti, zato še enkrat priporočam ustrezen članek na zgornji povezavi.

In končno, odgovor na zahrbtno vprašanje: kaj se bo zgodilo, če vseeno poskusite izbrisati varnostno kopijo iz nespremenljivega pomnilnika?

Tu je odgovor:

MinIo za najmlajše
To je vse za danes. V pravi tradiciji ujemite seznam uporabnih tem na temo:

Vir: www.habr.com

Dodaj komentar