MinIo per als més petits

MinIO és una solució excel·lent quan necessiteu organitzar fàcilment i simplement l'emmagatzematge d'objectes. Una configuració elemental, moltes plataformes i un bon rendiment han fet la seva feina en el camp de l'amor popular. Així que no teníem altra manera que declarar la compatibilitat fa un mes Veeam Backup & Replication i MinIO. Incloent una característica tan important com la Immutabilitat. De fet, MinIO té un tot secció a la documentació dedicada a la nostra integració.

Per tant, avui parlarem de com:

  • La configuració de MinIO és molt ràpida.
  • La configuració de MinIO és una mica menys ràpida, però molt millor.
  • Utilitzeu-lo com a nivell d'arxiu per al dipòsit escalable de Veeam SOBR.

MinIo per als més petits

Que ets?

Una breu introducció per a aquells que no s'han trobat amb MinIO. Aquest és un emmagatzematge d'objectes de codi obert compatible amb l'API d'Amazon S3. Publicat sota la llicència Apache v2 i s'adhereix a la filosofia del minimalisme espartano.

És a dir, no té una GUI extensa amb taulers, gràfics i nombrosos menús. MinIO simplement llança el seu servidor amb una ordre, on simplement podeu emmagatzemar dades utilitzant tota la potència de l'API S3. Però cal tenir en compte que aquesta senzillesa pot resultar enganyosa pel que fa als recursos utilitzats. La memòria RAM i la CPU s'absorbeixen perfectament, però les raons es discutiran a continuació. I, per cert, combinacions com FreeNAS i TrueNAS utilitzen MinIO sota el capó.

Aquesta introducció pot acabar aquí.

La configuració de MinIO és molt ràpida

La configuració és tan ràpida que la mirarem per a Windows i Linux. Hi ha opcions per a Docker, i per a Kubernetis, i fins i tot per a MacOS, però el significat serà el mateix a tot arreu.

Per tant, en el cas de Windows, aneu al lloc web oficial https://min.io/download#/windows i descarregueu la darrera versió. Allà també veiem instruccions per començar:

 minio.exe server F:Data

I també hi ha un enllaç a un una mica més detallat Guia d'inici ràpid. No té sentit no creure'ns les instruccions, així que l'executem i obtenim una resposta com aquesta.

MinIo per als més petits
Això és tot! L'emmagatzematge funciona i podeu començar a treballar-hi. No estava fent broma quan vaig dir que MinIO és minimalista i només funciona. Si seguiu l'enllaç que s'ofereix durant el llançament, les màximes funcions disponibles són crear un cub. I podeu començar a escriure dades.

Per als amants de Linux, tot no és menys senzill. Les instruccions més senzilles:


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

El resultat serà indistinguible del que s'havia vist anteriorment. 

Configurar MinIO és una mica més significatiu

Com entenem, el paràgraf anterior és mimar amb finalitats de prova. I, siguem sincers, fem servir MinIO molt àmpliament per fer proves, cosa que no ens fa vergonya admetre. Per descomptat, funciona, però és una llàstima suportar això més enllà dels bancs de proves. Per tant, agafem un fitxer a les mans i comencem a recordar-lo.

HTTPS

El primer pas obligatori en el camí cap a la producció és el xifratge. Ja hi ha un milió i mil manuals a la xarxa per afegir certificats a MiniIO, però el seu pla general és el següent:

  • Crear un certificat
  • En el cas de Windows, poseu-lo a C:Users%User%.miniocerts
  • Per a Linux a ${HOME}/.minio/certs 
  • Reiniciant el servidor

El banal Let's Encrypt és avorrit i es descriu a tot arreu, així que el nostre camí és el camí del samurai, així que en el cas de Windows descarreguem Cygwin, i en el cas de Linux simplement comprovem que tenim openssl instal·lat. I fem una mica de màgia de consola:

  • Creeu claus: openssl ecparam -genkey -name prime256v1 | openssl ec -out private.key
  • Creem un certificat amb la clau: openssl req -new -x509 -days 3650 -key private.key -out public.crt
  • Copieu private.key i public.crt a la carpeta especificada anteriorment
  • Reinicieu MinIO

Si tot ha anat com hauria de ser, apareixerà alguna cosa com aquesta a l'estat.

MinIo per als més petits

Activa la codificació d'esborrat de MiniIO

Primer, unes paraules sobre el tema. En poques paraules: es tracta de la protecció del programari de les dades contra danys i pèrdues. Com una incursió, només que molt més fiable. Si el RAID6 clàssic es pot permetre el luxe de perdre dos discs, llavors MiniIO pot fer front fàcilment a la pèrdua de la meitat. La tecnologia es descriu amb més detall a guia oficial. Però si prenem l'essència, aleshores es tracta d'una implementació dels codis Reed-Solomon: tota la informació s'emmagatzema en forma de blocs de dades, que tenen blocs de paritat. I sembla que tot això ja s'ha fet moltes vegades, però hi ha un "però" important: podem indicar explícitament la proporció de blocs de paritat i blocs de dades per als objectes emmagatzemats.
Vols 1:1? Si us plau!
Vols 5:2? Cap problema!

Una característica molt important si utilitzeu diversos nodes alhora i voleu trobar el vostre propi equilibri entre la màxima seguretat de les dades i els recursos gastats. Fora de la caixa, MinIO utilitza la fórmula N/2 (on N és el nombre total de discos), és a dir. divideix les vostres dades entre N/2 discos de dades i N/2 discos de paritat. Traduint en termes humans: pots perdre la meitat dels discs i recuperar les dades. Aquesta relació es dóna a través Classe d'emmagatzematge, que us permet triar el que és més important: la fiabilitat o la capacitat.

La guia dóna l'exemple següent: suposem que teniu una instal·lació en 16 discs i necessiteu desar un fitxer de 100 MB de mida. Si s'utilitzen la configuració predeterminada (8 discos per a dades, 8 per a blocs de paritat), aleshores el fitxer ocuparà gairebé el doble del volum, és a dir. 200 MB. Si la proporció de disc és 10/6, es necessitaran 160 MB. 14/2 - 114 MB.

Una altra diferència important amb els raids: en cas de fallada del disc, MinIO funcionarà a nivell d'objecte, restaurant-se un per un, sense aturar tot el sistema. Mentre que una incursió regular es veurà obligada a restaurar tot el volum, cosa que trigarà un temps impredictible. L'autor recorda un prestatge de discs que, després de caure dos discos, va trigar una setmana i mitja a tornar a calcular. Va ser força desagradable.

I, una nota important: MinIO divideix tots els discos per a la codificació d'esborrat en conjunts de 4 a 16 discos, utilitzant la mida màxima de conjunt possible. I en el futur, un element d'informació només s'emmagatzemarà dins d'un conjunt.

Tot això sona molt bé, però com de difícil serà configurar-lo? Fem una ullada. Prenem l'ordre per executar-se i simplement enumerem els discs en els quals cal crear l'emmagatzematge. Si tot es fa correctament, a l'informe veurem el nombre de discs implicats. I el consell és que no és bo afegir la meitat dels discs a un host alhora, perquè això comportarà la pèrdua de dades.

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

MinIo per als més petits
A continuació, per gestionar i configurar el servidor MinIO, necessitarem un agent, que podeu descarregar allà des del lloc oficial.

Per no desgastar els dits cada vegada que escriviu l'adreça i les claus d'accés (i no és segur), és convenient crear immediatament un àlies quan comenceu a utilitzar la fórmula mc alias set [LA TEVA CLAU D'ACCÉS] [LA TEVA CLAU SECRETA]

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

O podeu afegir immediatament el vostre amfitrió:

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

I després crearem una galleda immutable amb un equip preciós

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

--depurar us permet veure no només el missatge final, sinó informació més detallada. 

-l significa —amb bloqueig, que vol dir immutable

Si ara tornem a la interfície web, hi apareixerà el nostre nou cub.

MinIo per als més petits
Això és tot per ara. Hem creat emmagatzematge segur i estem preparats per passar a la integració amb Veeam.

També podeu assegurar-vos que tot funciona perfectament:

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

Atenció! Si per alguna raó increïble voleu treballar mitjançant HTTP, a HKEY_LOCAL_MACHINESOFTWAREVeeamVeeam Còpia de seguretat i replicació creeu una clau DWORD SOBRArchiveS3DisableTLS. Establiu el seu valor a 1 i recordeu que no aprovam aquest comportament i no el recomanem a ningú.

Atenció de nou! Si, a causa d'algun malentès, continueu utilitzant Windows 2008 R2, aleshores quan intenteu connectar MinIO a Veeam, probablement rebeu un error com aquest: No s'ha pogut establir la connexió amb el punt final d'Amazon S3. Això es pot tractar amb un pegat oficial de Microsoft.

Bé, els preparatius s'han completat, obrim la interfície VBR i anem a la pestanya Infraestructura de còpia de seguretat, on cridarem a l'assistent per afegir un nou repositori.

MinIo per als més petits
Per descomptat, ens interessa l'emmagatzematge d'objectes, és a dir, compatible amb S3. A l'assistent que s'obre, estableix un nom i segueix els passos indicant l'adreça i el compte. Si cal, no us oblideu d'especificar la porta a través de la qual s'enviaran les peticions a l'emmagatzematge.

MinIo per als més petits
A continuació, seleccioneu el cub, la carpeta i marqueu la casella Fer que les còpies de seguretat recents siguin immutables. O no l'instal·lem. Però com que hem fet un magatzem que admeti aquesta funció, seria un pecat no utilitzar-lo.

MinIo per als més petits
Següent > Acabeu i gaudiu del resultat.

Ara hem d'afegir-lo al dipòsit SOBR com a nivell de capacitat. Per fer-ho, creem un de nou o editem un d'existent. Ens interessa el pas del nivell de capacitat.

MinIo per als més petits
Aquí hem de triar amb quin escenari treballarem. Totes les opcions es descriuen força bé en un altre article, així que no em repetiré

I un cop finalitzat l'assistent, les tasques per copiar o transferir còpies de seguretat s'iniciaran automàticament. Però si els vostres plans no inclouen col·locar immediatament la càrrega a tots els sistemes, assegureu-vos d'establir intervals acceptables per treballar amb el botó Finestra.

MinIo per als més petits
I, per descomptat, podeu fer tasques de còpia de seguretat per separat. Alguns creuen que això és encara més convenient, ja que són una mica més transparents i previsibles per a l'usuari que no vol aprofundir en els detalls del funcionament del camp de tir. I hi ha prou detalls, així que un cop més recomano l'article corresponent a l'enllaç anterior.

I finalment, la resposta a la pregunta traïdora: què passarà si encara intenteu eliminar la còpia de seguretat de l'emmagatzematge immutable?

Aquí teniu la resposta:

MinIo per als més petits
Això és tot per avui. En la veritable tradició, consulteu la llista de temes útils sobre el tema:

Font: www.habr.com