MinIo pour les plus petits

MinIO est une excellente solution lorsque vous avez besoin d'organiser facilement et simplement le stockage d'objets. Une configuration élémentaire, de nombreuses plateformes et de bonnes performances ont fait leur travail dans le domaine de l'amour populaire. Nous n'avions donc pas d'autre choix que de déclarer la compatibilité il y a un mois Veeam Sauvegarde et réplication et MinIO. Y compris une fonctionnalité aussi importante que l’immuabilité. En fait, MinIO a tout un section dans la documentation dédiée à notre intégration.

Par conséquent, aujourd’hui, nous parlerons de la manière dont :

  • La configuration de MinIO est très rapide.
  • La configuration de MinIO est un peu moins rapide, mais bien meilleure.
  • Utilisez-le comme niveau d’archive pour le référentiel évolutif Veeam SOBR.

MinIo pour les plus petits

Qu'es-tu?

Une brève introduction pour ceux qui n'ont pas rencontré MinIO. Il s'agit d'un stockage d'objets open source compatible avec l'API Amazon S3. Publié sous la licence Apache v2 et adhère à la philosophie du minimalisme spartiate.

Autrement dit, il ne dispose pas d’une interface graphique tentaculaire avec des tableaux de bord, des graphiques et de nombreux menus. MinIO lance simplement son serveur avec une seule commande, où vous pouvez simplement stocker des données en utilisant toute la puissance de l'API S3. Mais il faut savoir que cette simplicité peut s’avérer trompeuse quant aux ressources utilisées. La RAM et le CPU sont parfaitement absorbés, mais les raisons seront discutées ci-dessous. Et, en passant, des combinaisons telles que FreeNAS et TrueNAS utilisent MinIO sous le capot.

Cette introduction peut se terminer ici.

La configuration de MinIO est très rapide

Sa configuration est si rapide que nous l'examinerons pour Windows et Linux. Il existe des options pour Docker, pour Kubernetis et même pour MacOS, mais la signification sera la même partout.

Donc, dans le cas de Windows, rendez-vous sur le site officiel https://min.io/download#/windows et téléchargez la dernière version. Nous y voyons également des instructions pour démarrer :

 minio.exe server F:Data

Et il y a aussi un lien vers un lien légèrement plus détaillé Guide de démarrage rapide (English). Cela ne sert à rien de ne pas croire les instructions, alors nous l'exécutons et obtenons quelque chose comme cette réponse.

MinIo pour les plus petits
C'est tout! Le stockage fonctionne et vous pouvez commencer à travailler avec. Je ne plaisantais pas quand j'ai dit que MinIO était minimaliste et fonctionnait tout simplement. Si vous suivez le lien proposé lors du lancement, le maximum de fonctions disponibles sont pour créer un bucket. Et vous pouvez commencer à écrire des données.

Pour les amoureux de Linux, tout n’en reste pas moins simple. Les instructions les plus simples :


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

Le résultat sera impossible à distinguer de ce qui a été vu précédemment. 

La configuration de MinIO est un peu plus significative

Comme nous le comprenons, le paragraphe précédent est choyé à des fins de test. Et soyons honnêtes, nous utilisons très largement MinIO pour les tests, ce que nous n’avons pas du tout honte de l’admettre. Bien sûr, ça marche, mais c’est dommage de supporter ça au-delà des bancs d’essais. Par conséquent, nous prenons un fichier entre nos mains et commençons à y penser.

HTTPS

La première étape obligatoire sur le chemin de la production est le chiffrement. Il existe déjà un million et un millier de manuels sur le réseau pour ajouter des certificats à MiniIO, mais leur plan général est le suivant :

  • Créer un certificat
  • Dans le cas de Windows, placez-le dans C:Users%User%.miniocerts
  • Pour Linux dans ${HOME}/.minio/certs 
  • Redémarrage du serveur

Le banal Let's Encrypt est ennuyeux et est décrit partout, donc notre chemin est le chemin du samouraï, donc dans le cas de Windows nous téléchargeons Cygwin, et dans le cas de Linux, nous vérifions simplement que openssl est installé. Et on fait un peu de magie de console :

  • Créer des clés : openssl ecparam -genkey -name prime256v1 | openssl ec -out private.key
  • Nous créons un certificat en utilisant la clé : openssl req -new -x509 -days 3650 -key private.key -out public.crt
  • Copiez private.key et public.crt dans le dossier spécifié ci-dessus
  • Redémarrer MinIO

Si tout s'est déroulé comme il se doit, quelque chose comme ceci apparaîtra dans le statut.

MinIo pour les plus petits

Activer le codage d'effacement MinIO

Tout d’abord, quelques mots sur le sujet. En un mot : il s’agit d’une protection logicielle des données contre les dommages et les pertes. Comme un raid, mais en beaucoup plus fiable. Si le RAID6 classique peut se permettre de perdre deux disques, alors MinIO peut facilement gérer la perte de la moitié. La technologie est décrite plus en détail dans guide officiel. Mais si nous prenons l'essentiel, il s'agit alors d'une implémentation des codes de Reed-Solomon : toutes les informations sont stockées sous forme de blocs de données, qui ont des blocs de parité. Et il semble que tout cela ait déjà été fait à plusieurs reprises, mais il y a un « mais » important : nous pouvons indiquer explicitement le rapport entre les blocs de parité et les blocs de données pour les objets stockés.
Voulez-vous 1:1 ? S'il te plaît!
Voulez-vous 5:2 ? Aucun problème!

Une fonctionnalité très importante si vous utilisez plusieurs nœuds à la fois et que vous souhaitez trouver votre propre équilibre entre sécurité maximale des données et ressources dépensées. Prêt à l'emploi, MinIO utilise la formule N/2 (où N est le nombre total de disques), c'est-à-dire répartit vos données entre N/2 disques de données et N/2 disques de parité. Traduisant en termes humains : vous pouvez perdre la moitié des disques et récupérer les données. Cette relation est donnée par Classe de stockage, vous permettant de choisir vous-même ce qui est le plus important : la fiabilité ou la capacité.

Le guide donne l'exemple suivant : supposons que vous ayez une installation sur 16 disques et que vous deviez enregistrer un fichier de 100 Mo. Si les paramètres par défaut sont utilisés (8 disques pour les données, 8 pour les blocs de parité), alors le fichier finira par occuper presque le double du volume, c'est-à-dire 200 Mo. Si le ratio du disque est de 10/6, alors 160 Mo seront nécessaires. 14/2 - 114 Mo.

Autre différence importante avec les raids : en cas de panne de disque, MinIO fonctionnera au niveau des objets, en restaurant un par un, sans arrêter l'ensemble du système. Alors qu'un raid régulier sera obligé de restaurer l'intégralité du volume, ce qui prendra un temps imprévisible. L'auteur se souvient d'une étagère de disques qui, après la chute de deux disques, a mis une semaine et demie à recalculer. C'était assez désagréable.

Et une remarque importante : MinIO divise tous les disques pour le codage d'effacement en ensembles de 4 à 16 disques, en utilisant la taille d'ensemble maximale possible. Et à l'avenir, un élément d'information ne sera stocké que dans un seul ensemble.

Tout cela semble très cool, mais à quel point sera-ce difficile à mettre en place ? Jetons un coup d'oeil. Nous prenons la commande à exécuter et listons simplement les disques sur lesquels le stockage doit être créé. Si tout est fait correctement, nous verrons dans le rapport le nombre de disques impliqués. Et le conseil est qu'il n'est pas bon d'ajouter la moitié des disques à un hôte à la fois, car cela entraînerait une perte de données.

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

MinIo pour les plus petits
Ensuite, pour gérer et configurer le serveur MinIO, nous aurons besoin d'un agent, que vous pourrez télécharger ibid du site officiel.

Afin de ne pas vous fatiguer les doigts à chaque fois que vous tapez l'adresse et les touches d'accès (et ce n'est pas sûr), il est pratique de créer immédiatement un alias lorsque vous commencez à utiliser la formule mc alias set [VOTRE-CLÉ- D'ACCÈS] [VOTRE-CLÉ-SECRET]

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

Ou vous pouvez immédiatement ajouter votre hébergeur :

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

Et puis nous créerons un bucket immuable avec une belle équipe

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

--déboguer vous permet de voir non seulement le message final, mais aussi des informations plus détaillées. 

-l signifie —with-lock, ce qui signifie immuable

Si nous revenons maintenant à l'interface Web, notre nouveau bucket y apparaîtra.

MinIo pour les plus petits
C'est tout pour le moment. Nous avons créé un stockage sécurisé et sommes prêts à passer à l’intégration avec Veeam.

Vous pouvez également vous assurer que tout fonctionne parfaitement :

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

Attention! Si, pour une raison incroyable, vous souhaitez travailler via HTTP, alors dans HKEY_LOCAL_MACHINESOFTWAREVeeamVeeam Backup and Replication, créez une clé DWORD SOBRArchiveS3DisableTLS. Fixez sa valeur à 1 et rappelez-vous que nous n’approuvons pas du tout un tel comportement et ne le recommandons à personne.

Attention encore ! Si, en raison d'un malentendu, vous continuez à utiliser Windows 2008 R2, lorsque vous essayez de connecter MinIO à Veeam, vous recevrez probablement une erreur semblable à celle-ci : Échec de l'établissement de la connexion au point de terminaison Amazon S3. Cela peut être traité avec un patch officiel de Microsoft.

Eh bien, les préparatifs sont terminés, ouvrons l'interface VBR et allons dans l'onglet Infrastructure de sauvegarde, où nous appellerons l'assistant d'ajout d'un nouveau référentiel.

MinIo pour les plus petits
Bien entendu, nous nous intéressons au stockage Objet, à savoir Compatible S3. Dans l'assistant qui s'ouvre, définissez un nom et suivez les étapes indiquant l'adresse et le compte. Si nécessaire, n'oubliez pas de préciser la porte par laquelle les requêtes vers le stockage seront proxy.

MinIo pour les plus petits
Sélectionnez ensuite le bucket, le dossier et cochez la case Rendre les sauvegardes récentes immuables. Ou nous ne l'installons pas. Mais puisque nous avons réalisé un stockage qui prend en charge cette fonction, ce serait un péché de ne pas l'utiliser.

MinIo pour les plus petits
Suivant > Terminez et appréciez le résultat.

Nous devons maintenant l'ajouter au référentiel SOBR en tant que niveau de capacité. Pour ce faire, nous en créons un nouveau ou en modifions un existant. Nous sommes intéressés par l’étape du niveau de capacité.

MinIo pour les plus petits
Ici, nous devons choisir avec quel scénario nous allons travailler. Toutes les options sont assez bien décrites dans un autre article, donc je ne me répéterai pas

Et à la fin de l'assistant, les tâches de copie ou de transfert de sauvegardes seront automatiquement lancées. Mais si vos plans ne prévoient pas de placer immédiatement la charge sur tous les systèmes, assurez-vous de définir des intervalles acceptables pour travailler sur le bouton Fenêtre.

MinIo pour les plus petits
Et bien sûr, vous pouvez effectuer des tâches de copie de sauvegarde distinctes. Certains pensent que c'est encore plus pratique, car ils sont un peu plus transparents et prévisibles pour l'utilisateur qui ne souhaite pas se plonger dans les détails du fonctionnement du champ de tir. Et il y a suffisamment de détails là-bas, donc encore une fois je recommande l'article correspondant sur le lien ci-dessus.

Et enfin, la réponse à la question délicate : que se passera-t-il si vous essayez toujours de supprimer la sauvegarde du stockage Immuable ?

Voici la réponse:

MinIo pour les plus petits
C'est tout pour aujourd'hui. Dans la plus pure tradition, consultez une liste de sujets utiles sur le sujet :

Source: habr.com

Ajouter un commentaire