Prvi prototip skladišta objekata svijet je vidio 1996. godine. Za 10 godina Amazon Web Services će pokrenuti Amazon S3, a svijet će početi sistematski da luduje za ravnim adresnim prostorom. Zahvaljujući radu s metapodacima i njegovoj mogućnosti skaliranja bez pada pod opterećenjem, pohrana objekata je brzo postala standard za većinu usluga pohrane podataka u oblaku, i ne samo to. Još jedna važna karakteristika je da je veoma pogodan za skladištenje arhiva i sličnih datoteka koje se rijetko koriste. Svi koji su uključeni u pohranu podataka radovali su se i nosili novu tehnologiju u rukama.
Ali glasine su bile pune glasina da je skladištenje objekata samo o velikim oblacima, i ako vam ne trebaju rješenja od prokletih kapitalista, onda će biti vrlo teško napraviti svoja. Mnogo je već napisano o postavljanju vlastitog oblaka, ali nema dovoljno informacija o kreiranju takozvanih S3-kompatibilnih rješenja.
Stoga ćemo danas shvatiti koje opcije postoje "Da bude kao odrasli, a ne CEPH i veći fajl", implementiraćemo jednu od njih i provjeriti radi li sve pomoću Veeam Backup & Replication. Tvrdi se da podržava rad sa S3 kompatibilnim skladištima, a mi ćemo testirati ovu tvrdnju.
Šta je sa drugima?
Predlažem da počnete s malim pregledom tržišta i mogućnosti skladištenja objekata. Općepriznati lider i standard je Amazon S3. Dva najbliža progonitelja su Microsoft Azure Blob Storage i IBM Cloud Object Storage.
Da li je to sve? Zar zaista nema drugih konkurenata? Naravno, postoje konkurenti, ali neki idu svojim putem, poput Google Clouda ili Oracle Cloud Object Storagea, s nekompletnom podrškom za S3 API. Neki koriste starije verzije API-ja, kao što je Baidu Cloud. A neki, poput Hitachi Clouda, zahtijevaju posebnu logiku, što će sigurno uzrokovati svoje poteškoće. U svakom slučaju, svi se uspoređuju s Amazonom, što se može smatrati industrijskim standardom.
Ali u lokalnim rješenjima postoji mnogo veći izbor, pa hajde da iznesemo kriterije koji su nam važni. U principu, dovoljna su samo dva: podrška za S3 API i upotreba v4 potpisivanja. Ruku na srce, nas, kao budućeg klijenta, zanimaju samo interfejsi za interakciju, a unutrašnja kuhinja samog skladišta nas ne zanima toliko.
Mnogo rješenja odgovara ovim jednostavnim uvjetima. Na primjer, klasični korporativni teškaši:
- DellEMC ECS
- NetApp S3 StorageGrid
- Nutanix Buckets
- Pure Storage FlashBlade i StorReduce
- Huawei FusionStorage
Postoji niz čisto softverskih rješenja koja rade izvan kutije:
- Red Hat Ceph
- SUSE Enterprise Storage
- Cloudian
Pa čak ni oni koji vole pažljivo arhivirati nakon skupštine nisu se uvrijedili:
- CEPH u svom najčistijem obliku
- Minio (Linux verzija, jer ima mnogo pitanja o verziji za Windows)
Lista je daleko od potpune; o njoj se može raspravljati u komentarima. Samo ne zaboravite provjeriti performanse sistema uz API kompatibilnost prije implementacije. Posljednja stvar koju želite je izgubiti terabajte podataka zbog zaglavljenih upita. Stoga se nemojte stidjeti sa testovima opterećenja. Općenito, sav softver za odrasle koji radi s velikim količinama podataka ima barem izvještaje o kompatibilnosti. U slučaju da Veeam je
Sastavljanje našeg štanda
Želio bih malo popričati o odabiru predmeta za testiranje.
Prvo, želio sam pronaći opciju koja će raditi odmah iz kutije. Pa, ili barem s maksimalnom vjerovatnoćom da će raditi bez potrebe za nepotrebnim pokretima. Ples uz tamburicu i petljanje po konzoli u noći je veoma uzbudljivo, ali ponekad želite da to odmah proradi. A ukupna pouzdanost takvih rješenja je obično veća. I da, duh avanturizma je nestao u nama, prestali smo da se penjemo na prozore naših voljenih žena itd. (c).
Drugo, da budemo iskreni, potreba za radom sa pohranom objekata javlja se u prilično velikim kompanijama, pa je to upravo slučaj kada se gledanje ka rješenjima na nivou preduzeća ne samo da nije sramotno, već čak i ohrabruje. U svakom slučaju, još ne znam za primjer da je neko dobio otkaz zbog kupovine takvih rješenja.
Na osnovu svega navedenog, moj izbor je pao Dell EMC ECS Community Edition. Ovo je veoma interesantan projekat i smatram potrebnim da vam o njemu ispričam.
Prva stvar koja vam padne na pamet kada vidite dodatak Community Edition - da je ovo samo kopija punopravnog ECS-a sa nekim ograničenjima koja se uklanjaju kupovinom licence. Dakle, ne!
Zapamtite:
!!!Community Edition je poseban projekat kreiran za testiranje, i bez tehničke podrške kompanije Dell!!
I ne može se pretvoriti u punopravni ECS, čak i ako to zaista želite.
Hajde da to shvatimo
Mnogi ljudi vjeruju da je Dell EMC ECS gotovo najbolje rješenje ako imate potrebu za skladištenjem objekata. Svi projekti pod brendom ECS, uključujući komercijalne i korporativne, zasnovani su na
Samo DELL ECS Community Edition je mini verzija potpunog softvera koji radi na brendiranim Dell EMC ECS serverima.
Identificirao sam četiri glavne razlike:
- Nema podrške za šifriranje. Šteta, ali nije kritično.
- Nedostaje sloj tkanine. Ova stvar je odgovorna za izgradnju klastera, upravljanje resursima, ažuriranja, praćenje i pohranjivanje Docker slika. Ovdje je već vrlo uvredljivo, ali i Dell se može razumjeti.
- Najodvratnija posljedica prethodne točke: veličina čvora se ne može proširiti nakon završetka instalacije.
- Bez tehničke podrške. Ovo je proizvod za testiranje, koji nije zabranjeno koristiti u malim instalacijama, ali ja se lično ne bih usudio da tu postavljam petabajte važnih podataka. Ali tehnički vas niko ne može spriječiti u tome.
Šta je u velikoj verziji?
Hajdemo galopirati po Europi i proći kroz željezna rješenja kako bismo imali potpunije razumijevanje ekosistema.
Neću nekako potvrditi ili opovrgnuti izjavu da je DELL ECS najbolja on-prem objektna pohrana, ali ako imate nešto za reći na ovu temu, rado ću to pročitati u komentarima. Barem prema verziji
Sa tehničke tačke gledišta, ECS je objektno skladište koje omogućava pristup podacima koristeći protokole za skladištenje u oblaku. Podržava AWS S3 i OpenStack Swift. Za kante sa omogućenim datotekama, ECS podržava NFSv3 za izvoz fajl po fajl.
Proces snimanja informacija je prilično neobičan, posebno nakon klasičnih blokovnih sistema za skladištenje podataka.
- Kada stignu novi podaci, kreira se novi objekat koji ima ime, same podatke i metapodatke.
- Objekti su podijeljeni u dijelove od 128 MB, a svaki dio se upisuje u tri čvora odjednom.
- Indeksna datoteka se ažurira, gdje se evidentiraju identifikatori i lokacije pohrane.
- Datoteka evidencije (log unos) se ažurira i također upisuje u tri čvora.
- Klijentu se šalje poruka o uspješnom snimanju
Sve tri kopije podataka pišu se paralelno. Upis se smatra uspješnim samo ako su sve tri kopije uspješno napisane.
Čitanje je lakše:
- Klijent traži podatke.
- Indeks traži gdje su podaci pohranjeni.
- Podaci se čitaju sa jednog čvora i šalju klijentu.
Samih servera ima dosta, pa pogledajmo najmanji Dell EMC ECS EX300. Počinje od 60TB, sa mogućnošću povećanja do 1,5PB. A njegov stariji brat, Dell EMC ECS EX3000, omogućava vam da pohranite čak 8,6 PB po stalak.
Razviti
Tehnički gledano, Dell ECS CE može biti postavljen koliko god želite. U svakom slučaju, nisam našao nikakva eksplicitna ograničenja. Međutim, zgodno je izvršiti sve skaliranje kloniranjem prvog čvora, za koji nam je potrebno:
- 8 vCPU-a
- 64GB RAM
- 16GB za OS
- 1TB direktna pohrana
- Najnovije izdanje CentOS minimala
Ovo je opcija kada želite sve sami instalirati od samog početka. Ova opcija za nas nije relevantna, jer... Koristit ću OVA sliku za implementaciju.
Ali u svakom slučaju, zahtjevi su vrlo zli čak i za jedan čvor, a ako se striktno pridržavate slova zakona, onda su vam potrebna četiri takva čvora.
Međutim, ECS CE programeri žive u stvarnom svijetu i instalacija je uspješna čak i sa jednim čvorom, a minimalni zahtjevi su:
- 4 vCPU-a
- 16 GB RAM-a
- 16 GB za OS
- Sama pohrana od 104 GB
Ovo su resursi potrebni za postavljanje OVA slike. Već mnogo humaniji i realniji.
Sam instalacijski čvor može se dobiti od službenika
Pokrećemo mašinu, otvaramo konzolu i koristimo najbolje podrazumevane akreditive:
- login: admin
- lozinka: ChangeMe
Zatim pokrećemo sudo nmtui i konfigurišemo mrežni interfejs - IP/maska, DNS i kapija. Imajući u vidu da CentOS minimal nema net-tools, proveravamo podešavanja preko ip adrese.
A pošto samo hrabri osvajaju mora, radimo yum update, nakon čega se restartujemo. Zapravo je prilično sigurno jer... sva implementacija se vrši kroz playbooks, a svi važni docker paketi su zaključani na trenutnu verziju.
Sada je vrijeme da uredite instalacijsku skriptu. Nema fensi prozora ili pseudo korisničkog sučelja za vas - sve se radi putem vašeg omiljenog uređivača teksta. Tehnički, postoje dva načina: svaku komandu možete pokrenuti ručno ili odmah pokrenuti videoploy konfigurator. Jednostavno će otvoriti konfiguraciju u vim-u, a po izlasku će početi da je provjerava. Ali nije zanimljivo namjerno pojednostavljivati svoj život, pa pokrenite još dvije komande. Iako ovo nema smisla, upozorio sam te =)
Dakle, napravimo vim ECS-CommunityEdition/deploy.xml i napravimo optimalne minimalne promjene tako da ECS radi i radi. Lista parametara se može skratiti, ali ja sam to uradio ovako:
- licenced_accepted: true Ne morate ga mijenjati, tada će vam prilikom implementacije biti eksplicitno zatraženo da to prihvatite i bit će vam prikazana lijepa fraza. Možda je ovo čak i uskršnje jaje.
- Dekomentirajte redove autonames: i custom: Unesite barem jedno željeno ime za čvor - ime hosta će biti zamijenjeno njime tokom procesa instalacije.
- install_node: 192.168.1.1 Navedite stvarnu IP adresu čvora. U našem slučaju označavamo isto kao u nmtui
- dns_domain: unesite svoju domenu.
- dns_servers: unesite svoj dns.
- ntp_servers: možete odrediti bilo koji. Uzeo sam prvi na koji sam naišao iz bazena 0.pool.ntp.org (postao je 91.216.168.42)
- autonaming: custom Ako ne poništite komentar, mjesec će se zvati Luna.
- ecs_block_devices:
/ dev / sdb
Iz nekog nepoznatog razloga, možda postoji nepostojeći blok uređaj za pohranu /dev/vda - skladišni_bazeni:
članovi:
192.168.1.1 Ovdje ponovo ukazujemo na stvarnu IP adresu čvora - ecs_block_devices:
/dev/sdb Ponavljamo operaciju izrezivanja nepostojećih uređaja.
Općenito, cijeli fajl je vrlo detaljno opisan u
Nakon što izađete iz uređivača, potrebno je da pokrenete update_deploy /home/admin/ECS-CommunityEdition/deploy.yml, i ako je sve urađeno ispravno, to će biti eksplicitno prijavljeno.
Zatim još morate pokrenuti videoploy, sačekati da se okruženje ažurira, a samu instalaciju možete pokrenuti naredbom ova-step1, a nakon njenog uspješnog završetka naredbom ova-step2. Važno: ne zaustavljajte skripte rukom! Neki koraci mogu potrajati dosta vremena, možda neće biti dovršeni iz prvog pokušaja i može izgledati kao da je sve pokvareno. U svakom slučaju, morate pričekati da se skripta završi prirodnim putem. Na kraju biste trebali vidjeti poruku sličnu ovoj.
Sada konačno možemo otvoriti kontrolnu tablu WebUI koristeći nam poznatu IP adresu. Ako konfiguracija nije promijenjena u fazi, default račun će biti root/ChangeMe. Možete čak i odmah koristiti našu S3 kompatibilnu pohranu. Dostupan je na portovima 9020 za HTTP i 9021 za HTTPS. Opet, ako ništa nije promijenjeno, onda access_key: object_admin1 i secret_key: ChangeMeChangeMeChangeMeChangeMeChangeMe.
Ali nemojmo pretjerati i počnimo redom.
Kada se prvi put prijavite, bićete primorani da promijenite svoju lozinku u odgovarajuću, što je apsolutno ispravno. Glavna kontrolna tabla je izuzetno jasna, pa hajde da uradimo nešto zanimljivije od objašnjavanja očiglednih metrika. Na primjer, kreirajmo korisnika kojeg ćemo koristiti za pristup skladištu. U svijetu pružatelja usluga, oni se nazivaju stanari. Ovo se radi u Upravljaj > Korisnici > Novi korisnik objekta
Prilikom kreiranja korisnika, od nas se traži da navedemo prostor imena. Tehnički, ništa nas ne sprečava da ih kreiramo onoliko koliko ima korisnika. I obrnuto. Ovo vam omogućava da samostalno upravljate resursima za svakog zakupca.
U skladu s tim biramo funkcije koje su nam potrebne i generiramo korisničke ključeve. S3/Atmos će mi biti dovoljan. I ne zaboravite sačuvati ključ 😉
Korisnik je kreiran, sada je vrijeme da mu dodijelite kantu. Idite na Manage > Bucket i popunite potrebna polja. Ovdje je sve jednostavno.
Sada imamo sve spremno za prilično borbenu upotrebu našeg S3 skladišta.
Postavljanje Veeama
Dakle, kao što se sjećamo, jedna od glavnih upotreba pohrane objekata je dugoročno skladištenje informacija kojima se rijetko pristupa. Idealan primjer je potreba za pohranjivanjem sigurnosnih kopija na udaljenom mjestu. U Veeam Backup & Replication ova funkcija se zove Capacity Tier.
Počnimo sa postavljanjem dodavanjem našeg Dell ECS CE u Veeam interfejs. Na kartici Infrastruktura sigurnosne kopije pokrenite čarobnjak za dodavanje novog spremišta i odaberite Skladište objekata.
Hajde da odaberemo zbog čega je sve počelo - S3 kompatibilan.
U prozoru koji se pojavi upišite željeno ime i idite na korak Račun. Ovdje morate navesti servisnu tačku u obrascu
Ako je sve navedeno i konfigurirano ispravno, pojavit će se upozorenje o certifikatu, a zatim prozor sa kantom u kojem možete kreirati folder za naše datoteke.
Prolazimo kroz čarobnjak do kraja i uživamo u rezultatu.
Sljedeći korak je ili kreiranje novog Scale-out Backup Repository, ili dodavanje našeg S3 postojećem - koristit će se kao razina kapaciteta za arhivsku pohranu. Ne postoji funkcija za direktnu upotrebu memorije kompatibilne sa S3, poput običnog spremišta, u trenutnom izdanju. Previše prilično neočiglednih problema treba riješiti da bi se to dogodilo, ali sve je moguće.
Idite na postavke spremišta i omogućite Capacity Tier. Tu je sve transparentno, ali postoji zanimljiva nijansa: ako želite da se svi podaci što prije pošalju u pohranu objekata, samo postavite na 0 dana.
Nakon što prođete kroz čarobnjak, ako ne želite da čekate, možete pritisnuti ctrl+RMB na spremištu, nasilno pokrenuti Tiering posao i gledati kako grafovi puze.
To je sve za sada. Mislim da sam uspio u zadatku da pokažem da blok memorija nije toliko strašna kao što ljudi misle. Da, postoje rješenja i opcije za vagon i mala kolica, ali ne možete sve pokriti u jednom članku. Zato podijelimo svoje iskustvo u komentarima.
izvor: www.habr.com