MinIO është një zgjidhje e shkëlqyer kur ka nevojë për të organizuar me lehtësi dhe thjeshtë object storage. Konfigurimi elementar, shumë platforma dhe performanca e mirë kanë fituar dashurinë e publikut. Kështu që nuk kishim asnjë rrugë tjetër, përveçse një muaj më parë të shpallim përputhshmërinë. . Duke përfshirë një funksion kaq të rëndësishëm si Immutability. Në të vërtetë, MinIO ka një të tërë në dokumentacionin që i dedikohet integrimit tonë.
Prandaj sot do të flasim se si:
- Të konfigurosh MinIO shumë shpejt.
- Të konfigurosh MinIO pak më ngadalë, por ndjeshëm më cilësisht.
- Ta përdorësh atë si Archive Tier për një depo të shkallëzuar Veeam SOBR.

ĂfarĂ« je ti?
Një hyrje e shkurtër për ata që nuk kanë hasur në MinIO. Ky është një objekt storage open-source, i përputhshëm me Amazon S3 API. Publikohet nën licencën Apache v2 dhe ndjek filozofinë e minimalizmit spartan.
Pra ndaj, ai nuk ka një GUI të gjerë me panelet, grafikët dhe menutë e shumta. MinIO thjesht aktivizon serverin e tij me një komandë, ku mund të ruani të dhënat duke përdorur të gjithë fuqinë e S3 API. Por, duhet të theksohet se thjeshtësia mund të jetë mashtruese kur vjen fjala për burimet që përdoren. RAM-i dhe CPU-ja konsumojnë shumë, por arsyet do të shqyrtohen më poshtë. Dhe, për ta thënë ndryshe, pajisjet si FreeNAS dhe TrueNAS nën kapak përdorin pikërisht MinIO.
Kështu, mund të përfundojme këtëve hyrje.
Konfigurimi i MinIO është shumë i shpejtë.
Konfigurimi i tij është aq i shpejtë, saqë ne do ta shqyrtojmë atë për Windows dhe Linux. Ka mundësi për docker, kubernetes, dhe madje për macOS, por kuptimi do të jetë i njëjtë kudo.
Pra, në rastin e Windows, shkojmë në faqen zyrtare. dhe shkarkojmë versionin më të fundit. Atje gjithashtu shohim udhëzimet për aktivizimin:
minio.exe server F:Data
Dhe atje është lidhja për një udhëzues pak më të detajuar. . Nuk ka kuptim të mos besosh udhëzimet, prandaj e aktivizojmë dhe marrim një përgjigje të tillë.
Këtu është gjithçka! Ruajtja funksionon dhe mund të filloni të punoni me të. Nuk po shaka kur thashë se MinIO është minimalizmi dhe thjesht funksionon. Nëse ndiqni lidhjen e ofruar gjatë aktivizimit, maksimumi i funksioneve të disponueshme atje është krijimi i një bakalje. Dhe mund të filloni të shkruani të dhëna.
Për adhuruesit e Linux-it, gjithçka mbetet po aq e thjeshtë. Udhëzimi i thjeshtë:
wget https://dl.min.io/server/minio/release/linux-amd64/minio
chmod +x minio
./minio server /dataRezultati do tĂ« jetĂ« i padallueshĂ«m nga ajo qĂ« Ă«shtĂ« parĂ« mĂ« parĂ«.Â
Konfigurimi i MinIO është pak më i arsyeshëm.
Siç e kuptojmë, paragrafi i mëparshëm është thjesht një lojë për qëllime provuese. Dhe, le ta pranojmë sinqerisht, MinIO përdoret shumë për testim, për të cilin nuk ndjehemi aspak të turpëruar. Sigurisht, funksionon, por është disi turp që një gjë të tillë të dalë përtej skenave të testimit. Prandaj, e marrim një file dhe fillojmë ta përmirësojmë.
HTTPS
Hapi i parë i detyrueshëm në rrugën drejt prodhimit është enkriptimi. Në internet ka miliona e njëmijë manuale për shtimin e certifikatave në MinIO, por plani i tyre i përgjithshëm është si më poshtë:
- Krijojmë një certifikatë
- Në rastin e Windows, e vendosim atë në C:Users%User%.miniocerts
- NĂ« rastin e Linux-it, nĂ« ${HOME}/.minio/certsÂ
- Rinisemi serverin
Let's Encrypt është e zakonshme dhe përmendet kudo, kështu që rruga jonë është rruga e samurajëve, prandaj për Windows shkarko , ndërsa për Linux thjesht kontrollojmë që openssl të jetë i instaluar. Dhe bëjmë pak magji në konsolë:
- Krijojmë çelësa: openssl ecparam -genkey -name prime256v1 | openssl ec -out private.key
- Krijojmë një certifikatë sipas çelësit: openssl req -new -x509 -days 3650 -key private.key -out public.crt
- Kopjojmë private.key dhe public.crt në dosjen e përmendur më lart
- Rinisim MinIO
Nëse gjithçka shkoi siç duhet, atëherë statusi do të shfaqë rreth këtyre linjave.

Aktivizojmë MinIO Erasure Coding
Së pari disa fjalë për temën. Në dy fjalë: kjo është mbrojtja softuerike e të dhënave nga dëmtimi dhe humbja. Si RAID, por shumë më e besueshme. Ndryshe nga RAID6 klasik që mund të humbasë dy disqe, MinIO e përballon lehtësisht humbjen e gjysmës. Më në detaje teknologjia është përshkruar në . Por nëse e shqyrtojmë thelbin, kjo është një zbatim i kodave të Reed-Solomon: të gjitha informacionet ruhen në formën e blloqeve të dhënash, të cilave iu përputhen blloqet e paritetit. Duket se kjo është bërë shumë herë më parë, vetëm se ka një 'por' të rëndësishëm: ne mund të përcaktojmë qartë raportin e blloqeve të paritetit në blloqet e dhënave për objektet e ruajtura.
Dëshironi 1:1? Sigurisht!
Dëshironi 5:2? Pa problem!
Një funksion shumë i rëndësishëm, nëse përdorni disa nod dhe dëshironi të gjeni ekuilibrin tuaj midis maksimalit të sigurisë së të dhënave dhe burimeve të shpenzuara. Nga kutia, MinIO përdor formulën N/2 (ku N është numri total i diskëve), do të thotë se ndan të dhënat tuaja midis N/2 diskëve të të dhënave dhe N/2 diskëve të parave. Në terma më të thjeshtë: mund të humbni gjysmën e diskëve dhe të rindizni të dhënat. Ky raport përcaktohet përmes , duke ju lejuar të zgjidhni vetë se çfarë është më e rëndësishme: besueshmëria apo kapaciteti.
NĂ« manual Ă«shtĂ« dhĂ«nĂ« njĂ« shembull: le tĂ« supozojmĂ« qĂ« keni njĂ« instalim me 16 disqe dhe duhet tĂ« ruani njĂ« skedar me madhĂ«si 100 MB. NĂ«se pĂ«rdoren cilĂ«simet e parazgjedhura (8 disqe pĂ«r tĂ« dhĂ«na, 8 pĂ«r blloqet e parave), skedari do tĂ« marrĂ« praktikisht dyfishin e madhĂ«sisĂ«, pra 200 MB. NĂ«se raporti i diskĂ«ve Ă«shtĂ« 10/6, atĂ«herĂ« do tĂ« nevojiten 160 MB. 14/2 â 114 MB.
Një dallim tjetër i rëndësishëm nga RAID-et: në rastin e rënies së disqeve, MinIO do të funksionojë në nivelin e objekteve, duke e rikthyer një pas një, pa ndaluar funksionimin e tërë sistemit. Ndryshe nga RAID-i i zakonshëm, i cili do të ishte i detyruar të rikuperonte të gjithë volumin, çka do të merrte një kohë të paparashikueshme. Në kujtesën e autorit, rafti i disqeve që u rikuperua pas rënies së dy disqeve mori një tërë javë e gjysmë. Ishte mjaft e pakëndshme.
Dhe, një vërejtje e rëndësishme: MinIO ndan të gjithë disqet për Erasure Coding në sete nga 4 deri në 16 disqe, duke përdorur madhësinë maksimale të mundshme të setit. Më tej, një element informacioni do të ruhet vetëm brenda një seti.
Të gjitha këto duken mjaft mirë, por sa e komplikuar do të jetë konfigurimi? Le të shohim. Marrim komandën për të nisur dhe thjesht numërojmë disqet ku duam të krijojmë ruajtjen. Nëse gjithçka është bërë siç duhet, do të shohim në raportin e aktivizuar numrin e disqeve të angazhuar. Dhe një këshillë, nuk është e përshtatshme të shtoni menjëherë gjysmën e disqeve në një host, sepse kjo çon në humbje të të dhënave.
c:minio>minio.exe server F: G: H: I: J: K:
Më pas, për menaxhimin dhe konfigurimin e serverit MinIO, do të na nevojitet një agjent, i cili mund të shkarkohet gjithashtu nga faqeja zyrtare.
Për të mos fshirë gishtat tuaj çdo herë duke shkruar adresën dhe çelësat e aksesit (as që nuk është e sigurt), është e përshtatshme që në fillim të krijoni një alias me formulën mc alias set [YOUR-ACCESS-KEY] [YOUR-SECRET-KEY]
mc alias set veeamS3 https://172.17.32.52:9000 YOURS3ACCESSKEY YOURSECERTKEOse mund të shtoni menjëherë hostin tuaj:
mc config host add minio-veeam https://minio.jorgedelacruz.es YOURS3ACCESSKEY YOURSECERTKEYDhe pastaj do të krijojmë një baket të pandryshueshëm me një komandë të bukur
mc mb --debug -l veeamS3/immutable
mc: 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: 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: Response Time: 253.0017ms--debug lejon tĂ« shihni jo thjesht mesazhin pĂ«rfundimtar, por njĂ« informacion mĂ« tĂ« zgjeruar.Â
-l domethĂ«nĂ« âwith-lock, qĂ« do tĂ« thotĂ« immutĂ«ble
Nëse tani kthehemi në ndërfaqen e internetit, baketi ynë i ri do të shfaqet atje.

Në këtë moment, kjo është e gjitha. Kemi krijuar një depo të sigurt dhe jemi gati të kalojmë në integrimin me Veeam.
Mund të sigurohemi gjithashtu që gjithçka po funksionon në mënyrë të shkëlqyer:
c:minio>mc admin info veeamS3
â 172.17.32.52:9000
Koha e funksionimit: 32 minuta
Versioni: 2020-08-16T18:39:38Z
Rrjeti: 1/1 OK
Dyshemetë: 6/6 OK
0 B të përdorur, 1 bucket, 0 objekte
6 dysheme online, 0 dysheme offlineMinIO dhe Veeam
Kujdes! Nëse për ndonjë arsye të pabesueshme dëshironi të punoni përmes HTTP, atëherë në adresën HKEY_LOCAL_MACHINESOFTWAREVeeamVeeam Backup and Replication krijoni një çelës DWORD SOBRArchiveS3DisableTLS. Vendoseni vlerën e tij në 1 dhe mbani në mend se një sjellje të tillë ne e kundërshtojmë fuqishëm dhe nuk e rekomandojmë askujt.
Kujdes edhe një herë! Nëse për shkak të ndonjë keqkuptimi vazhdoni të përdorni Windows 2008 R2, atëherë gjatë përpjekjes për të lidhur MinIO me Veeam ndoshta do të merrni një mesazh gabimi të tillë: Dështoi lidhja me endpoint Amazon S3. Kjo mund të zgjidhet me një patch zyrtar nga .
Mirë, përgatitjet janë mbyllur, le të hapim ndërfaqen VBR dhe të kalojmë në skedën Backup Infrastructure, ku do të thërrasim ndihmësin për të shtuar një depo të re.

Sigurisht, na intereson Object storage, më konkretisht S3 Compatible. Në asistentin e hapur, vendosim emrin, kalojmë në hapat duke specifikuar adresën dhe llogarinë. Nëse është e nevojshme, mos harroni të tregoni portin, përmes të cilit do të proksohen kërkesat për ruajtjen.

Pasi të përfundojnë, zgjidhni bucket-in, dosjen dhe vendosni shenjën e kontrollit të 'Bëni backup-et e fundit të palëvizshëm'. Ose mos e vendosni. Por pasi e kemi krijuar ruajtjen me mbështetje për këtë funksion, do të ishte mëkat të mos e shfrytëzojmë.

Next > Finish dhe shijoni rezultatin.
Tani duhet ta shtojmë në repositorin e SOBR si Capacity Tier. Për këtë, mund të krijoni një të ri, ose të redaktoni atë ekzistues. Na intereson hapi Capacity Tier.

Këtu duhet të zgjedhim se me cilin skenar do të punojmë. Të gjitha opsionet janë përshkruar mjaft mirë në një tjetër , kështu që nuk do të përsërisem.
Dhe pas përfundimit të punës së asistentit, do të nisin automatikisht detyrat për kopjim ose transferim të backup-eve. Por nëse planet tuaja nuk përfshijnë të jepni ngarkesë të gjitha sistemeve menjëherë, sigurohuni të përcaktoni intervalet e pranueshme për punë përmes butonit Window.

Dhe, natyrisht, mund të bëni kopje rezervë të veçanta të detyrave. Disa e konsiderojnë këtë më të përshtatshëm, pasi ato janë më të qarta dhe më parashikueshme për përdoruesit që nuk duan të thellohen në detajet e funksionimit të kapasitit të tirës. Dhe ka mjaft detaje atje, prandaj rekomandoj përsëri artikullin përkatës në lidhjen e mësipërme.
Dhe nĂ« fund â pĂ«rgjigjja pĂ«r pyetjen e hidhur: çfarĂ« do tĂ« ndodhĂ« nĂ«se provoni tĂ« fshini njĂ« kopje rezervĂ« nga ruajtja Immutable?
Ja përgjigjja:

Kjo është gjithçka për sot. Sipas traditës, ja lista e temave të dobishme lidhur me temën:
- Manual
- Shembulli i përdorimit .
- Manuali i përgjithshëm për konfigurimin .
- Degë në tonë për ruajtjet S3.
Burimi: habr.com
