MinIo pro nejmenší

MinIO je vynikající řešení, když potřebujete snadno a jednoduše organizovat úložiště objektů. Elementární nastavení, mnoho platforem a dobrý výkon udělaly své na poli populární lásky. Nezbylo nám tedy nic jiného, ​​než před měsícem deklarovat kompatibilitu Veeam Backup & Replication a MinIO. Včetně tak důležité vlastnosti, jako je Immutability. Ve skutečnosti má MinIO celek část v dokumentaci věnované naší integraci.

Proto si dnes povíme, jak:

  • Nastavení MinIO je velmi rychlé.
  • Nastavení MinIO je o něco méně rychlé, ale mnohem lepší.
  • Použijte jej jako archivní vrstvu pro škálovatelné úložiště Veeam SOBR.

MinIo pro nejmenší

Co jsi?

Krátký úvod pro ty, kteří se s MinIO nesetkali. Jedná se o open source objektové úložiště kompatibilní s Amazon S3 API. Vydáno pod licencí Apache v2 a drží se filozofie sparťanského minimalismu.

To znamená, že nemá rozlehlé GUI s řídicími panely, grafy a četnými nabídkami. MinIO jednoduše spustí svůj server jedním příkazem, kde můžete jednoduše ukládat data s využitím plné síly S3 API. Je však třeba poznamenat, že tato jednoduchost může být klamná, pokud jde o použité zdroje. RAM a CPU jsou absorbovány perfektně, ale důvody budou diskutovány níže. A mimochodem, takové kombajny jako FreeNAS a TrueNAS používají pod kapotou MinIO.

Zde může tento úvod skončit.

Nastavení MinIO je velmi rychlé

Nastavení je tak rychlé, že se na něj podíváme pro Windows a Linux. Existují možnosti pro Docker a pro Kubernetis a dokonce i pro MacOS, ale význam bude všude stejný.

V případě Windows tedy přejděte na oficiální web https://min.io/download#/windows a stáhněte si nejnovější verzi. Tam také vidíme pokyny pro spuštění:

 minio.exe server F:Data

A je tam i odkaz na trochu podrobnější Stručný návod k rychlému. Návodu nemá smysl nevěřit, tak to spustíme a dostaneme něco jako tato odpověď.

MinIo pro nejmenší
To je vše! Úložiště funguje a můžete s ním začít pracovat. Nedělal jsem si legraci, když jsem řekl, že MinIO je minimalistické a prostě funguje. Pokud budete následovat odkaz nabízený během spouštění, maximální množství dostupných funkcí je vytvořit bucket. A můžete začít zapisovat data.

Pro milovníky Linuxu zůstává vše neméně jednoduché. Nejjednodušší návod:


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

Výsledek bude k nerozeznání od toho, co bylo vidět dříve. 

Nastavení MinIO je trochu smysluplnější

Jak jsme pochopili, předchozí odstavec je hýčkání pro účely testování. A buďme upřímní, MinIO používáme k testování velmi široce, což se vůbec nestydíme přiznat. Samozřejmě to funguje, ale je škoda to vydržet mimo testovací lavice. Proto vezmeme soubor do rukou a začneme si ho připomínat.

HTTPS

Prvním povinným krokem na cestě k produkci je šifrování. V síti již existuje milion a tisíc manuálů pro přidávání certifikátů do MiniIO, ale jejich obecný plán je tento:

  • Vytvořte certifikát
  • V případě Windows jej vložte do C:Users%User%.miniocerts
  • Pro Linux v ${HOME}/.minio/certs 
  • Restartování serveru

Banální Let's Encrypt je nuda a všude se popisuje, takže naše cesta je cesta samurajů, takže v případě Windows stahujeme Cygwina v případě Linuxu jednoduše zkontrolujeme, že máme nainstalovaný openssl. A uděláme malou konzolovou magii:

  • Vytvořte klíče: openssl ecparam -genkey -name prime256v1 | openssl ec -out private.key
  • Certifikát vytvoříme pomocí klíče: openssl req -new -x509 -days 3650 -key private.key -out public.crt
  • Zkopírujte private.key a public.crt do výše uvedené složky
  • Restartujte MinIO

Pokud vše proběhlo jak má, tak se ve stavu objeví něco takového.

MinIo pro nejmenší

Povolit kódování MinIO Erasure Coding

Nejprve pár slov k tématu. V kostce: jedná se o softwarovou ochranu dat před poškozením a ztrátou. Jako nájezd, jen mnohem spolehlivější. Pokud si klasický RAID6 může dovolit přijít o dva disky, tak si MinIO hravě poradí i se ztrátou poloviny. Technologie je podrobněji popsána v oficiální průvodce. Ale pokud vezmeme podstatu, pak se jedná o implementaci Reed-Solomonových kódů: všechny informace jsou uloženy ve formě datových bloků, které mají paritní bloky. A zdá se, že to vše již bylo mnohokrát provedeno, ale je zde důležité „ale“: můžeme explicitně uvést poměr paritních bloků k datovým blokům pro uložené objekty.
Chcete 1:1? Prosím!
Chcete 5:2? Žádný problém!

Velmi důležitá funkce, pokud používáte více uzlů najednou a chcete najít vlastní rovnováhu mezi maximální bezpečností dat a vynaloženými prostředky. MinIO po vybalení používá vzorec N/2 (kde N je celkový počet disků), tzn. rozdělí vaše data mezi N/2 datové disky a N/2 paritní disky. Přeloženo do lidských termínů: můžete přijít o polovinu disků a obnovit data. Tento vztah je dán prostřednictvím Třída úložiště, což vám umožní vybrat si, co je důležitější: spolehlivost nebo kapacita.

Průvodce uvádí následující příklad: předpokládejme, že máte instalaci na 16 discích a potřebujete uložit soubor o velikosti 100 MB. Pokud se použije výchozí nastavení (8 disků pro data, 8 pro paritní bloky), pak soubor nakonec zabere téměř dvojnásobný objem, tzn. 200 MB. Pokud je poměr disku 10/6, bude potřeba 160 MB. 14/2 – 114 MB.

Další důležitý rozdíl oproti raidům: v případě selhání disku bude MinIO pracovat na úrovni objektů, obnovovat se jeden po druhém, aniž by se zastavil celý systém. Zatímco běžný raid bude nucen obnovit celý svazek, což zabere nepředvídatelně dlouho. Autor si pamatuje poličku na disky, která po vypadnutí dvou disků trvala týden a půl na přepočet. Bylo to dost nepříjemné.

A důležitá poznámka: MinIO rozděluje všechny disky pro Erasure Coding do sad od 4 do 16 disků s použitím maximální možné velikosti sady. A v budoucnu bude jeden prvek informace uložen pouze v rámci jedné sady.

To vše zní velmi cool, ale jak obtížné bude nastavení? Pojďme se podívat. Vezmeme příkaz ke spuštění a jednoduše vypíšeme disky, na kterých je potřeba úložiště vytvořit. Pokud je vše provedeno správně, pak ve zprávě uvidíme počet zapojených disků. A rada zní, že není dobré přidávat polovinu disků na jeden hostitel najednou, protože to povede ke ztrátě dat.

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

MinIo pro nejmenší
Dále pro správu a konfiguraci serveru MinIO budeme potřebovat agenta, kterého si můžete stáhnout na stejném místě z oficiálních stránek.

Abyste si neopotřebovali prsty při každém psaní adresy a přístupových kláves (a není to bezpečné), je vhodné okamžitě vytvořit alias, když poprvé začnete používat sadu aliasů vzorce mc [VÁŠ-PŘÍSTUPOVÝ-KLÍČ] [VÁŠ-TAJNÝ-KLÍČ]

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

Nebo můžete okamžitě přidat svého hostitele:

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

A pak s krásným týmem vytvoříme neměnný kbelík

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

--ladit umožňuje zobrazit nejen závěrečnou zprávu, ale i podrobnější informace. 

-l znamená —se zámkem, což znamená neměnný

Pokud se nyní vrátíme do webového rozhraní, objeví se tam náš nový bucket.

MinIo pro nejmenší
To je prozatím vše. Vytvořili jsme zabezpečené úložiště a jsme připraveni přejít k integraci se společností Veeam.

Můžete se také ujistit, že vše funguje perfektně:

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

Varování! Pokud z nějakého neuvěřitelného důvodu chcete pracovat přes HTTP, pak na HKEY_LOCAL_MACHINESOFTWAREVeeamVeeam Backup and Replication vytvořte klíč DWORD SOBRArchiveS3DisableTLS. Nastavte jeho hodnotu na 1 a pamatujte, že takové chování důrazně neschvalujeme a nikomu nedoporučujeme.

Znovu pozor! Pokud z důvodu nějakého nedorozumění budete i nadále používat Windows 2008 R2, pak se při pokusu o připojení MinIO k Veeam s největší pravděpodobností zobrazí chyba podobná této: Nepodařilo se navázat připojení ke koncovému bodu Amazon S3. To lze ošetřit oficiálním patchem od Microsoft.

No a přípravy jsou hotové, otevřeme rozhraní VBR a přejdeme na záložku Infrastruktura zálohování, kde zavoláme průvodce přidáním nového úložiště.

MinIo pro nejmenší
Nás samozřejmě zajímá Object storage, konkrétně S3 Compatible. V průvodci, který se otevře, nastavte název a projděte kroky s uvedením adresy a účtu. V případě potřeby nezapomeňte specifikovat bránu, přes kterou budou požadavky do úložiště zastupovány.

MinIo pro nejmenší
Poté vyberte kbelík, složku a zaškrtněte políčko Vytvořit neměnné poslední zálohy. Nebo to nenainstalujeme. Ale protože jsme vytvořili úložiště, které tuto funkci podporuje, byl by hřích to nevyužít.

MinIo pro nejmenší
Další > Dokončete a užijte si výsledek.

Nyní jej musíme přidat do úložiště SOBR jako kapacitní vrstvu. Za tímto účelem buď vytvoříme nový, nebo upravíme stávající. Zajímá nás krok Capacity Tier.

MinIo pro nejmenší
Zde si musíme vybrat, se kterým scénářem budeme pracovat. Všechny možnosti jsou docela dobře popsány v jiném článek, tak se nebudu opakovat

A po dokončení průvodce se automaticky spustí úlohy pro kopírování nebo přenos záloh. Ale pokud vaše plány nezahrnují okamžité umístění zátěže na všechny systémy, pak nezapomeňte nastavit přijatelné intervaly pro práci na tlačítku Okno.

MinIo pro nejmenší
A samozřejmě můžete provádět samostatné úlohy zálohování. Někteří se domnívají, že je to ještě pohodlnější, protože jsou poněkud průhlednější a předvídatelnější pro uživatele, který se nechce ponořit do detailů fungování střelnice. A je tam dost podrobností, takže ještě jednou doporučuji odpovídající článek na výše uvedeném odkazu.

A nakonec odpověď na zrádnou otázku: co se stane, když se přesto pokusíte smazat zálohu z Immutable úložiště?

Zde je odpověď:

MinIo pro nejmenší
To je pro dnešek vše. Ve skutečné tradici si přečtěte seznam užitečných témat na toto téma:

Zdroj: www.habr.com

Přidat komentář