Minio voor de kleintjes

MinIO is een uitstekende oplossing als u objectopslag eenvoudig en eenvoudig wilt organiseren. Elementaire opzet, veel platforms en goede prestaties hebben hun werk gedaan op het gebied van de volksliefde. We hadden dus geen andere keuze dan een maand geleden de compatibiliteit aan te geven Veeam Backup & Replicatie en MinIO. Inclusief zo'n belangrijk kenmerk als onveranderlijkheid. In feite heeft MinIO een geheel sectie in de documentatie gewijd aan onze integratie.

Daarom zullen we vandaag praten over hoe:

  • Het instellen van MinIO gaat erg snel.
  • Het instellen van MinIO gaat iets minder snel, maar veel beter.
  • Gebruik het als archieflaag voor Veeam SOBR Scalable Repository.

Minio voor de kleintjes

Wat ben jij?

Een korte introductie voor degenen die MinIO nog niet zijn tegengekomen. Dit is een open source objectopslag die compatibel is met de Amazon S3 API. Uitgebracht onder de Apache v2-licentie en houdt zich aan de filosofie van het Spartaanse minimalisme.

Dat wil zeggen, het heeft geen uitgebreide GUI met dashboards, grafieken en talloze menu's. MinIO lanceert eenvoudig zijn server met één commando, waar u eenvoudig gegevens kunt opslaan met behulp van de volledige kracht van de S3 API. Maar er moet worden opgemerkt dat deze eenvoud bedrieglijk kan zijn als het gaat om de gebruikte middelen. RAM en CPU worden perfect geabsorbeerd, maar de redenen zullen hieronder worden besproken. En trouwens, combinaties als FreeNAS en TrueNAS gebruiken MinIO onder de motorkap.

Deze introductie kan hier eindigen.

Het instellen van MinIO gaat erg snel

Het instellen gaat zo snel dat we er naar gaan kijken voor Windows en Linux. Er zijn opties voor Docker, en voor Kubernetis, en zelfs voor MacOS, maar de betekenis zal overal hetzelfde zijn.

Ga dus in het geval van Windows naar de officiële website https://min.io/download#/windows en download de nieuwste versie. Daar zien we ook instructies voor het starten:

 minio.exe server F:Data

En er is ook een link naar een iets gedetailleerdere Snelstartgids. Het heeft geen zin om de instructies niet te geloven, dus voeren we het uit en krijgen zoiets als dit antwoord.

Minio voor de kleintjes
Dat is alles! De opslag werkt en je kunt er mee aan de slag. Ik maakte geen grapje toen ik zei dat MinIO minimalistisch is en gewoon werkt. Als u de link volgt die tijdens de lancering wordt aangeboden, zijn de maximale beschikbare functies het maken van een bucket. En u kunt beginnen met het schrijven van gegevens.

Voor Linux-liefhebbers blijft alles niet minder eenvoudig. De eenvoudigste instructies:


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

Het resultaat zal niet te onderscheiden zijn van wat eerder werd gezien. 

Het instellen van MinIO is iets zinvoller

Zoals we begrijpen, is de vorige paragraaf verwennerij voor testdoeleinden. En laten we eerlijk zijn, we gebruiken MinIO op grote schaal voor het testen, en we schamen ons er helemaal niet voor om dat toe te geven. Natuurlijk werkt het, maar het is zonde om dit buiten de testbanken te moeten doorstaan. Daarom nemen we een bestand in onze handen en beginnen we eraan te denken.

HTTPS

De eerste verplichte stap op weg naar productie is encryptie. Er zijn al een miljoen en duizend handleidingen op het netwerk voor het toevoegen van certificaten aan MiniIO, maar hun algemene plan is dit:

  • Maak een certificaat
  • In het geval van Windows plaatst u het in C:Users%User%.miniocerts
  • Voor Linux in ${HOME}/.minio/certs 
  • De server opnieuw opstarten

Het banale Let's Encrypt is saai en wordt overal beschreven, dus ons pad is het pad van de samurai, dus in het geval van Windows downloaden we Cygwin, en in het geval van Linux controleren we eenvoudigweg of openssl is geïnstalleerd. En we doen een beetje consolemagie:

  • Sleutels maken: openssl ecparam -genkey -name prime256v1 | openssl ec -out privé.sleutel
  • We maken een certificaat aan met behulp van de sleutel: openssl req -new -x509 -days 3650 -key private.key -out public.crt
  • Kopieer private.key en public.crt naar de hierboven gespecificeerde map
  • Start MinIO opnieuw

Als alles naar wens is verlopen, verschijnt zoiets in de status.

Minio voor de kleintjes

Schakel MiniIO-wiscodering in

Eerst een paar woorden over het onderwerp. In een notendop: dit is softwarebescherming van gegevens tegen schade en verlies. Als een inval, maar dan veel betrouwbaarder. Als de klassieke RAID6 het zich kan veroorloven om twee schijven te verliezen, dan kan MinIO het verlies van de helft gemakkelijk aan. De technologie wordt in meer detail beschreven in officiële gids. Maar als we de essentie nemen, dan is dit een implementatie van Reed-Solomon-codes: alle informatie wordt opgeslagen in de vorm van datablokken, die pariteitsblokken hebben. En het lijkt erop dat dit allemaal al vele malen is gedaan, maar er is een belangrijke “maar”: we kunnen expliciet de verhouding aangeven van pariteitsblokken tot datablokken voor opgeslagen objecten.
Wil je 1:1? Alsjeblieft!
Wil je 5:2? Geen probleem!

Een zeer belangrijke functie als u meerdere knooppunten tegelijk gebruikt en uw eigen balans wilt vinden tussen maximale gegevensbeveiliging en verbruikte bronnen. Standaard gebruikt MinIO de formule N/2 (waarbij N het totale aantal schijven is), d.w.z. verdeelt uw gegevens tussen N/2 gegevensschijven en N/2 pariteitsschijven. In menselijke termen vertaald: u kunt de helft van de schijven kwijtraken en de gegevens herstellen. Deze relatie wordt gegeven door Opslag klasse, waardoor u zelf kunt kiezen wat belangrijker is: betrouwbaarheid of capaciteit.

De handleiding geeft het volgende voorbeeld: stel dat u een installatie op 16 schijven heeft en dat u een bestand van 100 MB groot moet opslaan. Als de standaardinstellingen worden gebruikt (8 schijven voor gegevens, 8 voor pariteitsblokken), zal het bestand uiteindelijk bijna het dubbele van het volume in beslag nemen, d.w.z. 200 MB. Als de schijfverhouding 10/6 is, is 160 MB nodig. 14/2 - 114 MB.

Nog een belangrijk verschil met raids: in het geval van een schijfstoring werkt MinIO op objectniveau en herstelt het één voor één, zonder het hele systeem te stoppen. Terwijl een reguliere raid gedwongen zal worden om het volledige volume te herstellen, wat een onvoorspelbare hoeveelheid tijd zal vergen. De auteur herinnert zich een schijfplank die, nadat twee schijven eruit waren gevallen, anderhalve week nodig had om opnieuw te berekenen. Het was behoorlijk onaangenaam.

En een belangrijke opmerking: MinIO verdeelt alle schijven voor Erasure Coding in sets van 4 tot 16 schijven, waarbij de maximaal mogelijke setgrootte wordt gebruikt. En in de toekomst zal één informatie-element slechts binnen één set worden opgeslagen.

Dit klinkt allemaal heel cool, maar hoe moeilijk zal het zijn om het op te zetten? Laten we eens kijken. We nemen de opdracht om uit te voeren en vermelden eenvoudigweg de schijven waarop de opslag moet worden gemaakt. Als alles correct is gedaan, zien we in het rapport het aantal betrokken schijven. En het advies is dat het niet goed is om de helft van de schijven tegelijk aan één host toe te voegen, omdat dit tot gegevensverlies leidt.

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

Minio voor de kleintjes
Vervolgens hebben we voor het beheren en configureren van de MinIO-server een agent nodig, die u kunt downloaden daar van de officiële site.

Om uw vingers niet te verslijten telkens wanneer u het adres en de toegangstoetsen typt (en het is niet veilig), is het handig om onmiddellijk een alias te maken wanneer u de formule mc aliasset voor het eerst gebruikt [UW-TOEGANGSSLEUTEL] [UW-GEHEIME-SLEUTEL]

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

Of u kunt uw host onmiddellijk toevoegen:

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

En dan gaan we met een mooi team een ​​onveranderlijke bucket creëren

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

--debuggen Hiermee kunt u niet alleen het definitieve bericht zien, maar ook meer gedetailleerde informatie. 

-l betekent —met slot, wat onveranderlijk betekent

Als we nu terugkeren naar de webinterface, verschijnt daar onze nieuwe bucket.

Minio voor de kleintjes
Dat is het voor nu. We hebben veilige opslag gecreëerd en zijn klaar om over te gaan tot integratie met Veeam.

U kunt er ook voor zorgen dat alles perfect werkt:

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

MiniIO en Veeam

Waarschuwing! Als u om een ​​of andere ongelooflijke reden via HTTP wilt werken, maak dan bij HKEY_LOCAL_MACHINESOFTWAREVeeamVeeam Backup and Replication een DWORD-sleutel aan SOBRArchiveS3DisableTLS. Stel de waarde in op 1 en onthoud dat wij dergelijk gedrag ten zeerste afkeuren en het aan niemand aanbevelen.

Nogmaals opgelet! Als u, als gevolg van een misverstand, Windows 2008 R2 blijft gebruiken, krijgt u hoogstwaarschijnlijk een foutmelding die er ongeveer als volgt uitziet: Kan geen verbinding maken met het Amazon S3-eindpunt wanneer u MinIO met Veeam probeert te verbinden. Dit kan worden behandeld met een officiële patch van Microsoft.

Welnu, de voorbereidingen zijn voltooid, laten we de VBR-interface openen en naar het tabblad Back-upinfrastructuur gaan, waar we de wizard zullen oproepen voor het toevoegen van een nieuwe repository.

Minio voor de kleintjes
Natuurlijk zijn we geïnteresseerd in objectopslag, namelijk S3-compatibel. In de wizard die opent, stelt u een naam in en doorloopt u de stappen met het opgeven van het adres en account. Vergeet indien nodig niet de poort op te geven waarlangs aanvragen voor de opslag worden verzonden.

Minio voor de kleintjes
Selecteer vervolgens de bucket en map en vink het vakje Recente back-ups onveranderlijk maken aan. Of we installeren het niet. Maar aangezien wij een opslagvoorziening hebben gemaakt die deze functie ondersteunt, zou het zonde zijn om daar geen gebruik van te maken.

Minio voor de kleintjes
Volgende > Maak het af en geniet van het resultaat.

Nu moeten we het toevoegen aan de SOBR-repository als een capaciteitslaag. Om dit te doen, maken we een nieuwe of bewerken we een bestaande. Wij zijn geïnteresseerd in de stap Capaciteitsniveau.

Minio voor de kleintjes
Hier moeten we kiezen met welk scenario we gaan werken. Alle opties worden vrij goed beschreven in een andere статье, dus ik zal mezelf niet herhalen

En na voltooiing van de wizard worden automatisch taken voor het kopiëren of overbrengen van back-ups gestart. Maar als uw plannen niet inhouden dat alle systemen onmiddellijk worden belast, zorg er dan voor dat u aanvaardbare intervallen instelt voor het werken aan de vensterknop.

Minio voor de kleintjes
En u kunt natuurlijk afzonderlijke back-upkopieertaken uitvoeren. Sommigen zijn van mening dat dit nog handiger is, omdat ze wat transparanter en voorspelbaarder zijn voor de gebruiker die zich niet wil verdiepen in de details van de werking van de schietbaan. En er zijn genoeg details, dus ik beveel nogmaals het overeenkomstige artikel aan via de bovenstaande link.

En tot slot het antwoord op de verraderlijke vraag: wat gebeurt er als u nog steeds probeert de back-up uit de onveranderlijke opslag te verwijderen?

Hier is het antwoord:

Minio voor de kleintjes
Dat is alles voor vandaag. Bekijk traditiegetrouw de lijst met nuttige onderwerpen over dit onderwerp:

Bron: www.habr.com

Voeg een reactie