Objekti salvestus ruudus, või Kuidas saada iseendale teenusepakkujaks.

Esimese objektihoidla prototüübi nägi maailm 1996. aastal. Kümme aastat hiljem käivitab Amazon Web Services Amazoni S3, ja maailm hakkab tasapisi hulluma tasapinnasest aadressi ruumist. Tänu tööle metaandmetega ja oma skaleeritavusele, ilma koormuse all nõrgenemata, on objektihoidlad kiiresti saanud enamikule pilveteenustele andmete salvestamiseks standardiks, ja isegi rohkem. Teine oluline omadus on hea kohandatavus arhivide ja harva kasutatavate failide hoidmiseks. Kõik, kes olid seotud andmete salvestamisega, rõõmustasid ja kandsid uut tehnoloogiat käes.

Objekti salvestus ruudus, või Kuidas saada iseendale teenusepakkujaks.

Kuid inimeste jutud olid täis kuulujutte, et objektihoidlad on ainult suurte pilvede jaoks, ja kui teil ei ole vaja õelate kapitalistide lahendusi, siis on oma loomine väga keeruline. Oma pilve rakendamisest on kirjutatud palju, kuid informatsiooni nii nimetatud S3-ühilduvate lahenduste loomise kohta on vähe.

Seega täna uurime, milliseid variante on "Et nagu täiskasvanutel, mitte CEPH ja natuke suurem failigi", rakendame ühe neist, ja kontrollime, et kõik töötab Veeami Backup & Replication'i abil. Selles on deklareeritud tugi S3-ühilduvate hoidlate tööle, ja seda me kontrollime.

Aga kuidas on teistel?

Alustame väikese ülevaatega turust ja objektihoidlate variantidest. Üks üldiselt tunnustatud liider ja standard on Amazon S3. Kaks lähimat jälitajat on Microsoft Azure Blob Storage ja IBM Cloud Object Storage.

Kas tõesti ja kõik? Kas muid konkurente ei ole? Loomulikult on konkurente, kuid mõned järgivad oma teed, nagu Google Cloud või Oracle Cloud Object Storage, kus S3 API täielik tugi puudub. Mõned kasutavad vanemaid API versioone, nagu Baidu Cloud. Ja mõned, nagu Hitachi Cloud, nõuavad erilise loogika rakendamist, mis kindlasti tekitab oma raskusi. Igatahes võrreldakse kõiki Amazoni, mida võib pidada tööstusstandardiks.

Kohapeal olevate lahenduste valik on aga oluliselt suurem, seega laskem paika panna meie tähtsad kriteeriumid. Põhimõtteliselt piisab kahed: S3 API tugi ja v4 allkirjastamise kasutamine. Kui aus olla, siis meid kui tulevikku plaanitavat klienti huvitavad ainult interfäärid suhtlemiseks, samas kui salvestuse enda sisemised aspektid ei ole enam nii olulised.

Nendele lihtsatele tingimustele sobib tõeliselt palju lahendusi. Näiteks klassikalised ettevõtete suured lahendused:

  • DellEMC ECS
  • NetApp S3 StorageGrid
  • Nutanix Buckets
  • Pure Storage FlashBlade ja StorReduce
  • Huawei FusionStorage

On ka nišš puhtalt tarkvarapõhiste lahenduste jaoks, mis töötavad otse välja pakkumisel:

  • Red Hat Ceph
  • SUSE Enterprise Storage
  • Cloudian

Ja isegi need, kes armastavad pärast kokkupanekut kõvasti tööd teha, pole jäänud ilma:

  • CEPH puhtal kujul
  • Minio (Linuxi versioon, sest Windowsi versiooni kohta on palju küsimusi)

Loetelu ei ole kaugeltki täielik, seda saab arutada kommentaarides. Kuid ärge unustage enne tarkvara rakendamist kontrollida mitte ainult API ühilduvust, vaid ka süsteemi jõudlust. Viimane asi, mida soovite, on terabaitide andmete kaotus ripnevate päringute tõttu. Seega ärge kartke koormusteste. Üldiselt on kõik täiskasvanutele mõeldud tarkvara, mis töötab suurte andmehulkadega, vähemalt omavad ühilduvuse aruandeid. Juhul kui Veeam on kogu programm vastastikuseks testimiseks, mis võimaldab julgelt väita, et meie tooted on täielikult ühilduvad konkreetse riistvaraga. See on juba kahepoolne töö, mis ei ole alati kiire, kuid me laiendame pidevalt nimekiri testitud lahenduste valikut.

Kogume meie teststandi

Soovin rääkida veidi katsetatava valimise kohta.

Esiteks, ma tahtsin leida variandi, mis töötaks kohe välja pakkumisel. Või vähemalt maksimaalne tõenäosus, et see töötab ilma liigsete pingutusteta. Tantsud ja konsooli pusimine öösel on tõeliselt põnev, kuid mõnikord tahaks, et see töötaks kohe. Ja jah, selliste lahenduste üldine usaldusväärsus on tavaliselt kõrgem. Ja jah, meie seiklusvaimu on kadunud, me oleme lõpetanud akendesse ronimise oma lemmikdaamide juurde jne.(c)

Teiseks, kui aus olla, on objektihoidlate kasutamise vajadus pigem suurettevõtete probleem, seega on täiesti normaalne, et vaadata enterprise-taseme lahenduste poole. Igatahes ei tea ma ühtegi juhtumit, kus kedagi oleks ametist kõrvaldatud nende lahenduste soetamise tõttu.

Kuna eeltoodust lähtuvalt, langetasin oma valiku Dell EMC ECS Community Edition. See on väga huvitav projekt ning pean oluliseks teile sellest rääkida.

Esimene mõte, mis tuleb meelde, nähes lisandmoodulit Community Edition — see on lihtsalt traditsiooniline variant täielikust ECS-ist, millel on mõned piirangud, mis kaovad litsentsi ostmisega. Kuid see pole tõsi!

Pea meeles:

!!!Community Edition on eraldi projekt, mis on loodud testimiseks ning sellel puudub Dell-i tugi!!
Ja seda ei saa muuta täieõiguslikuks ECS-iks, isegi kui väga tahaks.

Hakkan teemat käsitlema

Paljud usuvad, et Dell EMC ECS on üks parimaid lahendusi, kui teil on objektihoidla vajadus. Kõik ECS-brändi projektid, sealhulgas kommertssuunalised ja ettevõttepaketid, põhinevad GitHubis. See on Dell'i lahke žest. Peale tarkvara, mis töötab nende kaubamärgi riistvaral, on olemas ka avatud lähtekoodiga versioon, mille saab paigaldada nii pilve, virtuaalmasinale, konteinerisse kui ka oma riistvarale. Tulevikku silmas pidades — on isegi OVA versioon, mida me kasutame.
Dell ECS Community Edition on mini-versioon täisfunktsionaalsest tarkvarast, mis töötab Dell EMC ECS kaubamärgi serverites.

Tõin välja neli peamist erinevust:

  • Puudub krüpteerimise tugi. Kahju, kuid mitte kriitiline.
  • Puudub Fabric Layer. See funktsioon vastutab klastrite loomise, ressursside haldamise, uuenduste, jälgimise ja Docker-piltide hoidmise eest. Siin on see tõeliselt kahju, kuid Dell'i võib ka mõista.
  • Eelmise punkti kõige ebasoodsam tagajärg: sõlme suurust ei saa pärast paigaldamise lõpetamist suurendada.
  • Puudub tugiteenus. See on testimiseks mõeldud toode, mida tohib kasutada väikestes paigaldustes, kuid petab mind vähemalt petab suurte oluliste andmete sisestamine sinna. Kuid tehniliselt ei saa keegi teid seda tegemast takistada.

Objekti salvestus ruudus, või Kuidas saada iseendale teenusepakkujaks.

Aga mis suurtes versioonides?

Kiirelt vaatame üle riistvaralahendusi, et omada täielikku arusaama ökosüsteemist.

Ma ei pretendeeri, et kinnitan või lükkan ümber väidet, et DELL ECS on parim on-prem objektne salvestusruum, kuid kui teil on midagi selle kohta öelda, loen meeleldi teie kommentaare. Igal juhul on see versiooni järgi IDC MarketScape 2018 Dell EMC kindlalt kuulub viie parima seas OBS turul. Kuigi seal ei arvestata pilvepõhiseid lahendusi, on see täiesti eraldi teema.

Tehniliselt vaadatuna on ECS objektne salvestusruum, mis tagab juurdepääsu andmetele pilvesalvese protokollide kaudu. Toetab AWS S3 ja OpenStack Swift. File-enabled bakettide puhul toetab ECS NFSv3, et võimaldada faili põhist eksportimist.

Andmete salvestamise protsess on üsna ebatavaline, eriti võrreldes klassikaliste plokk-põhiste salvestussüsteemidega.

  • Uute andmete sisestamisel luuakse uus objekt, millel on nimi, andmed ja metaandmed.
  • Objektid jagatakse 128 MB tükkideks ja iga tükk salvestatakse kohe kolme sõlme.
  • Toimub indeksi faili värskendamine, kuhu on kirjutatud identifikaatorid ja salvestuskoha asukohad.
  • Värskendatakse logifaili (salvestuslogi) ja ka see salvestatakse kolmele sõlmele.
  • Kliendile saadetakse teade eduka salvestamise kohta
    Kõik kolm koopiat andmetest salvestatakse paralleelselt. Salvestamine loetakse edukaiks ainult siis, kui kõik kolm koopiat on edukalt salvestatud.

Objekti salvestus ruudus, või Kuidas saada iseendale teenusepakkujaks.

Lugemine toimub lihtsamalt:

  • Klient küsib andmeid.
  • Indeksis otsitakse andmete salvestuskohta.
  • Andmed loetakse ühest sõlmest ja saadetakse kliendile.

Objekti salvestus ruudus, või Kuidas saada iseendale teenusepakkujaks.

Servereid on üsna palju, seega vaatame kõige väiksemat Dell EMC ECS EX300. See alustab 60TB-st, omades võimalust kasvada kuni 1,5PB. Tema vanem vend Dell EMC ECS EX3000 võimaldab juba salvestada kuni 8,6PB riiuli kohta.

Käivitamine

Tehniliselt saab Dell ECS CE-d juurutada mistahes suuruses. Sellegipoolest ei leidnud ma mingeid selgeid piiranguid. Siiski on kõik skaleerimine mugav teha esimese sõlme kloonimise meetodil, mille jaoks on meil vaja:

  • 8 vCPU
  • 64GB RAM
  • 16GB operatsioonisüsteemiks
  • 1TB otseseks salvestamiseks
  • Viimane CentOS minimal väljaanne

See on valik juhtudel, kui soovite kõik ise nullist seadistada. Meie jaoks ei ole see variant asjakohane, kuna ma kasutan juurutamiseks OVA pilti.

Kuid igal juhul on nõuded üsna karmid isegi ühe sõlme jaoks, ja kui rangelt järgida seaduse tähte, peaks neid olema neli.

Siiski elavad ECS CE arendajad reaalses maailmas ja installatsioon õnnestub isegi ühe sõlmega, minimaalne nõue on järgmine:

  • 4 vCPU
  • 16 GB RAM
  • 16 GB operatsioonisüsteemile
  • 104 GB salvestusruumi

Just sellised ressursid on vajalikud OVA pildi käitamiseks. See on juba palju inimlikum ja realistlikum.

Installeerimise sõlme saab võtta ametlikult github. Seal on ka üksikasjalik dokumentatsioon ühe-osalise eemaldamise kohta, kuid saate ka lugeda ametlikul readthedocs. Seetõttu ei kavatse me OVA käitamiseks pikemalt peatuda, seal pole trikke. Põhiline on see, et ärge unustage enne selle käivitamist kas laiendada ketast vajaliku mahuni või lisada vajalikud.
Käivitame masina, avame konsooli ja kasutame parimaid vaikimisi mandaate:

  • kasutajanimi: admin
  • parool: ChangeMe

Seejärel käivitame sudo nmtui ja konfigureerime võrgu liidese — IP/mask, DNS ja gate. Pidades meeles, et CentOS minimal'is pole net-tools'i, kontrollime seadistusi läbi ip addr.

Objekti salvestus ruudus, või Kuidas saada iseendale teenusepakkujaks.

Ja kuna ainult julgetele kuuluvad mered, teeme yum update, millele järgneb reboot. Tegelikult on see üsna ohutu, kuna kogu käitamine toimub läbi mänguplaate ja kõik olulised dokkeri paketid on lukustatud praegusele versioonile.

Nüüd on aeg installiskripti redigeerida. Ei mingit ilusat akent või vale UI-d — kõik läbi teie lemmik tekstiredaktori. Puhtalt tehniliselt on kaks teed: saate käivitada iga käsu käsitsi või käivitada kohe videploy seadistaja. See avab konfi vim'is ja väljumisel käivitab selle kontrollimise. Kuid elu endale tahtlikult lihtsustada pole huvitav, seega teeme kaks käsku rohkem. Kuigi sel pole mingit mõtet, hoidsin teid kursis =)

Nii et teeme vim ECS-CommunityEdition/deploy.xml ja teeme optimaalsed minimaalset muutused, et ECS sisse lülituks ja töötaks. Parameetrite loetelu saab lühendada, kuid tegin seda nii:

  • licensed_accepted: true. Võite seda mitte muuta, siis palutakse teil käivitamisel seda selgelt aktsepteerida ja näidatakse toredat fraasi. Võib-olla on see isegi mingi peidetud sõnum.
    Objekti salvestus ruudus, või Kuidas saada iseendale teenusepakkujaks.
  • Kommentaari eemaldamine ridadest autonames: ja custom: Sisestage vähemalt üks soovitud nimi sõlme jaoks — hostname vahetatakse selle vastu installimise käigus.
  • install_node: 192.168.1.1. Määrake reaalne sõlme IP. Meie puhul määrame sama, mis nmtui's.
  • dns_domain: sisestage oma domeen.
  • dns_servers: sisestage oma dns.
  • ntp_servers: võib määrata ükskõik millise. Võtsin esimese, mis leidsin, 0.pool.ntp.org (sai 91.216.168.42)
  • autonaming: custom Kui seda ei kommenteerita välja, siis kuu nimetatakse Lunaks.
  • ecs_block_devices:
    /dev/sdb
    Mingil seletamatul põhjusel võib siin olla mittetöötav plokkseadmestik /dev/vda
  • storage_pools:
    members:
    192.168.1.1 Siin märgime jälle vale IP aadressi
  • ecs_block_devices:
    /dev/sdb Повторяем операцию вырезания несуществующих устройств.

Terve fail on üldiselt väga üksikasjalikult kirjas dokumentatsioon, aga kes seda sellises tormilises ajal lugeda viitsib. Seal on ju öeldud, et miinimum, mis on vajalik, on IP ja mask, aga mu laboris selline komplekt ei töötanud hästi ja pidin lisama nagu eespool näidatud.

Objekti salvestus ruudus, või Kuidas saada iseendale teenusepakkujaks.

Pärast redaktorist lahkumist tuleb käivitada update_deploy /home/admin/ECS-CommunityEdition/deploy.yml, ja kui kõik on õigesti tehtud, teavitatakse teid sellest selgelt.

Objekti salvestus ruudus, või Kuidas saada iseendale teenusepakkujaks.

Seejärel tuleb ikkagi käivitada videploy, oodata keskkonna värskendamist ja installatsioon tuleb käivitada käsuga ova-step1 ja pärast selle edukat täitmist käsuga ova-step2. Oluline: ärge lõpetage skriptide tööd käsitsi! Teatud sammud võivad võtta märkimisväärselt aega, mitte õnnestuda esimesel korral ja tunduda nii, nagu kõik oleks katki. Igal juhul tuleb oodata skripti loomulikku lõppu. Lõpuspeaksite nägema umbkaudu sellist teadet.

Objekti salvestus ruudus, või Kuidas saada iseendale teenusepakkujaks.

Nüüd saame lõpuks avada WebUI juhtpaneeli tuntud IP-lt. Kui konfiguratsiooni etapis ei muudetud, siis vaikimisi kasutajakonto on root/ChangeMe. Saame isegi kohe meie S3 ühilduvat salvestust kasutada. See on saadaval portidel 9020 HTTP jaoks ja 9021 HTTPS jaoks. Jällegi, kui me ei ole midagi muutnud, siis access_key: object_admin1 ja secret_key: ChangeMeChangeMeChangeMeChangeMeChangeMe.

Aga ärge kiirustage ja alustame korrektselt.

Objekti salvestus ruudus, või Kuidas saada iseendale teenusepakkujaks.

Esimese sisselogimise ajal palutakse teil tungivalt oma parool mõistlikuks muuta, mis on täiesti õigustatud. Peamine juhtpaneel on äärmiselt arusaadav, seega teeme midagi huvitavamat kui ilmselgete mõõdikute selgitamine. Näiteks loome kasutaja, keda kasutame salvestusele juurdepääsuks. Teenusepakkujate maailmas nimetatakse neid tenantideks. Seda teeb Manage > Users > New Object User

Objekti salvestus ruudus, või Kuidas saada iseendale teenusepakkujaks.

Kasutaja loomisel palutakse meil märkida namespace. Tehniliselt ei takista meid miski loomast neid nii palju, kui kasutajaid on. Ja vastupidi. See võimaldab resursse iga tenantide jaoks eraldi hallata.

Seega valime vajalikud funktsioonid ja genereerime kasutaja võtmed. S3/Atmos on mulle piisavalt.

Objekti salvestus ruudus, või Kuidas saada iseendale teenusepakkujaks.

Kasutaja on loodud, nüüd on aeg talle ka konteiner määrata. Liigume menüüsse Manage > Bucket ja täidame vajalikud väljad. Siin on kõik lihtne.

Objekti salvestus ruudus, või Kuidas saada iseendale teenusepakkujaks.

Nüüd on meil kõik valmis meie S3 salvestusruumi tõhusaks kasutamiseks.

Seadistame Veeami

Nagu me mäletame, on üks objektiladustamise peamisi rakendusi andmete pikaajaline säilitamine, millele harva juurde päästetakse. Ideaalne näide on vajadus varukoopiate säilitamiseks kaugplatvormil. Veeam Backup & Replication'is nimetatakse seda funktsiooni Capacity Tier.

Alustame seadistamist, lisades meie Dell ECS CE Veeami liidesesse. Backup Infrastructure vahekaardil käivitame uue reposti lisamise viisardi ja valime objektiladustamise.

Objekti salvestus ruudus, või Kuidas saada iseendale teenusepakkujaks.

Valime selle, milleks kõik algatati — S3 Ühildumine.

Objekti salvestus ruudus, või Kuidas saada iseendale teenusepakkujaks.

Avanenud aknas kirjutame soovitud nime ja liigume kontole. Siin tuleb märkida teenusepunkt kujul https://your_IP:9021, piirkond võib jääda sama ja lisame loodud kasutaja. Gateway server on vajalik, kui teie salvestusruum asub kaugel platvormil, kuid see on juba infrastruktuuri optimeerimise teema ja eraldi artikkel, seega saab selle julgelt vahele jätta.

Objekti salvestus ruudus, või Kuidas saada iseendale teenusepakkujaks.

Kui kõik on korrektne, kuvatakse sertifikaadi hoiatus ning seejärel aken konteineri kohta, kus saab luua kausta meie failide jaoks.

Objekti salvestus ruudus, või Kuidas saada iseendale teenusepakkujaks.

Käime viisardi lõpuni ja naudime tulemust.

Objekti salvestus ruudus, või Kuidas saada iseendale teenusepakkujaks.

Järgmises etapis tuleb kas luua uus Scale-out Backup Repository või lisada meie S3 olemasolevasse — see kasutatakse Capacity Tier'ina arhiveerimiseks. S3-ühilduvaid salvestusruume ei saa praeguses väljaandes kasutada nagu tavalist reposti, et lahendada liiga palju üsna mitte ilmseid probleeme, kuid kõik on võimalik.
Sisestame reposti sätted ja aktiveerime Capacity Tier'i. Seal on kõik selge, kuid on üks huvitav nüanss: kui tahate, et kõik andmed saadetaks objektiladustusse võimalikult kiiresti, seadke lihtsalt 0 päeva.

Objekti salvestus ruudus, või Kuidas saada iseendale teenusepakkujaks.

Pärast viisardi läbimist, kui ei soovi oodata, võite vajutada ctrl+hiir ja käivitada Tiering töö ja jälgida, kuidas graafikud tõusevad.

Objekti salvestus ruudus, või Kuidas saada iseendale teenusepakkujaks.

Sellega on kõik. Arvan, et olen suutnud ülesande täita ja tõestada, et plokkhoidlad pole nii hirmutavad, nagu arvatakse. Jah, lahendusi ja teostusviise on tohutult, kuid ühe artikli raames ei saa kõike katta. Seetõttu jagagem oma kogemusi kommentaarides.

Allikas: habr.com

Osta usaldusväärne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid 🔥 Osta usaldusväärne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid | ProHoster