Imbakan ng bagay sa silid sa likod, o Paano maging sarili mong service provider

Nakita ng mundo ang unang prototype ng imbakan ng bagay noong 1996. Sa loob ng 10 taon, ilulunsad ng Amazon Web Services ang Amazon S3, at ang mundo ay magsisimulang sistematikong mabaliw sa isang flat address space. Salamat sa pagtatrabaho sa metadata at sa kakayahang mag-scale nang hindi lumulubog sa ilalim ng pag-load, ang pag-iimbak ng bagay ay mabilis na naging pamantayan para sa karamihan ng mga serbisyo sa pag-iimbak ng data sa cloud, at hindi lamang iyon. Ang isa pang mahalagang tampok ay na ito ay angkop para sa pag-iimbak ng mga archive at mga katulad na bihirang ginagamit na mga file. Lahat ng kasangkot sa pag-iimbak ng data ay nagalak at isinuot ang bagong teknolohiya sa kanilang mga bisig.

Imbakan ng bagay sa silid sa likod, o Paano maging sarili mong service provider

Ngunit ang mga alingawngaw ng mga tao ay puno ng mga alingawngaw na ang pag-iimbak ng bagay ay tungkol lamang sa malalaking ulap, at kung hindi mo kailangan ng mga solusyon mula sa mga sinumpaang kapitalista, kung gayon magiging napakahirap na gumawa ng iyong sarili. Marami nang naisulat tungkol sa pag-deploy ng iyong sariling cloud, ngunit hindi sapat na impormasyon ang magagamit tungkol sa paggawa ng tinatawag na mga solusyon na katugma sa S3.

Samakatuwid, ngayon ay aalamin namin kung anong mga opsyon ang mayroon "Para ito ay tulad ng mga nasa hustong gulang, hindi CEPH at isang mas malaking file," ilalagay namin ang isa sa mga ito, at titingnan namin kung gumagana ang lahat gamit ang Veeam Backup & Replication. Sinasabi nito na sinusuportahan ang pagtatrabaho sa mga storage na katugma sa S3, at susuriin namin ang claim na ito.

Paano ang iba?

Iminumungkahi kong magsimula sa isang maliit na pangkalahatang-ideya ng mga opsyon sa pag-iimbak ng mga bagay at merkado. Ang karaniwang kinikilalang pinuno at pamantayan ay ang Amazon S3. Ang dalawang pinakamalapit na humahabol ay ang Microsoft Azure Blob Storage at IBM Cloud Object Storage.

Iyan lang ba? Wala na ba talagang ibang kalaban? Siyempre, may mga kakumpitensya, ngunit ang ilan ay pumunta sa kanilang sariling paraan, tulad ng Google Cloud o Oracle Cloud Object Storage, na may hindi kumpletong suporta para sa S3 API. Ang ilan ay gumagamit ng mga mas lumang bersyon ng API, tulad ng Baidu Cloud. At ang ilan, tulad ng Hitachi Cloud, ay nangangailangan ng espesyal na lohika, na tiyak na magdudulot ng sarili nitong mga paghihirap. Sa anumang kaso, ang lahat ay inihambing sa Amazon, na maaaring ituring na pamantayan ng industriya.

Ngunit sa mga nasa nasasakupan na solusyon ay marami pang pagpipilian, kaya balangkasin natin ang mga pamantayan na mahalaga sa atin. Sa prinsipyo, dalawa lang ang sapat: suporta para sa S3 API at ang paggamit ng v4 signing. Kamay sa puso, kami, bilang isang kliyente sa hinaharap, ay interesado lamang sa mga interface para sa pakikipag-ugnayan, at hindi kami masyadong interesado sa panloob na kusina ng pasilidad ng imbakan mismo.

Maraming solusyon ang akma sa mga simpleng kondisyong ito. Halimbawa, ang mga klasikong corporate heavyweights:

  • DellEMC ECS
  • NetApp S3 StorageGrid
  • Mga Balde ng Nutanix
  • Pure Storage FlashBlade at StorReduce
  • Huawei FusionStorage

Mayroong isang angkop na lugar ng mga solusyon sa software na gumagana sa labas ng kahon:

  • Red Hat Ceph
  • Imbakan ng SUSE Enterprise
  • Cloudian

At kahit na ang mga gustong maingat na mag-file pagkatapos ng pagpupulong ay hindi nasaktan:

  • CEPH sa pinakadalisay nitong anyo
  • Minio (bersyon ng Linux, dahil maraming tanong tungkol sa bersyon ng Windows)

Ang listahan ay malayo sa kumpleto; maaari itong talakayin sa mga komento. Huwag lang kalimutang suriin ang performance ng system bilang karagdagan sa pagiging tugma ng API bago ang pagpapatupad. Ang huling bagay na gusto mo ay mawalan ng terabytes ng data dahil sa mga natigil na query. Kaya huwag mahiya sa mga pagsubok sa pagkarga. Sa pangkalahatan, ang lahat ng pang-adultong software na gumagana sa malalaking halaga ng data ay may hindi bababa sa mga ulat sa pagiging tugma. Kung sakali Veeam mayroon buong programa sa mutual testing, na nagbibigay-daan sa aming kumpiyansa na ipahayag ang buong compatibility ng aming mga produkto sa partikular na kagamitan. Isa na itong two-way na gawain, hindi palaging mabilis, ngunit patuloy kaming lumalawak listahan nasubok na mga solusyon.

Pagtitipon ng aming paninindigan

Gusto kong magsalita ng kaunti tungkol sa pagpili ng isang paksa sa pagsusulit.

Una, gusto kong makahanap ng opsyon na gagana sa labas ng kahon. Buweno, o hindi bababa sa may pinakamataas na posibilidad na gagana ito nang hindi kinakailangang gumawa ng mga hindi kinakailangang paggalaw. Ang pagsasayaw gamit ang tamburin at ang paglalaro ng console sa gabi ay lubhang kapana-panabik, ngunit kung minsan ay gusto mo itong gumana kaagad. At ang pangkalahatang pagiging maaasahan ng mga naturang solusyon ay karaniwang mas mataas. At oo, ang diwa ng pakikipagsapalaran ay nawala sa amin, huminto kami sa pag-akyat sa mga bintana ng aming mga minamahal na babae, atbp. (c).

Pangalawa, sa totoo lang, ang pangangailangan na magtrabaho sa pag-iimbak ng bagay ay lumitaw sa medyo malalaking kumpanya, kaya ito ang mismong kaso kapag ang pagtingin sa mga solusyon sa antas ng negosyo ay hindi lamang hindi nakakahiya, ngunit hinihikayat pa. Sa anumang kaso, wala pa akong alam na anumang halimbawa ng sinumang tinanggal dahil sa pagbili ng mga naturang solusyon.

Batay sa lahat ng nasa itaas, nahulog ang aking pinili Dell EMC ECS Community Edition. Ito ay isang napaka-kagiliw-giliw na proyekto, at itinuturing kong kinakailangan na sabihin sa iyo ang tungkol dito.

Ang unang bagay na pumapasok sa isip mo kapag nakita mo ang add-on Edisyon ng Komunidad - na ito ay kopya lamang ng isang ganap na ECS na may ilang mga paghihigpit na inalis sa pamamagitan ng pagbili ng lisensya. Kaya hindi!

Tandaan:

!!!Ang Community Edition ay isang hiwalay na proyekto na nilikha para sa pagsubok, at walang teknikal na suporta mula sa Dell!!
At hindi ito maaaring gawing ganap na ECS, kahit na gusto mo talaga.

Alamin natin ito

Maraming tao ang naniniwala na ang Dell EMC ECS ay halos ang pinakamahusay na solusyon kung kailangan mo ng pag-iimbak ng bagay. Ang lahat ng mga proyekto sa ilalim ng tatak ng ECS, kabilang ang komersyal at corporate, ay batay sa github. Isang uri ng goodwill gesture mula kay Dell. At bilang karagdagan sa software na tumatakbo sa kanilang branded na hardware, mayroong isang open source na bersyon na maaaring i-deploy sa cloud, sa isang virtual machine, sa isang lalagyan, o sa alinman sa iyong sariling hardware. Sa hinaharap, mayroong kahit isang bersyon ng OVA, na gagamitin namin.
Ang DELL ECS Community Edition mismo ay isang mini-bersyon ng ganap na software na tumatakbo sa mga may brand na Dell EMC ECS server.

Natukoy ko ang apat na pangunahing pagkakaiba:

  • Walang suporta sa pag-encrypt. Ito ay isang kahihiyan, ngunit hindi kritikal.
  • Nawawala ang Layer ng Tela. Ang bagay na ito ay responsable para sa pagbuo ng mga kumpol, pamamahala ng mapagkukunan, pag-update, pagsubaybay at pag-iimbak ng mga imahe ng Docker. Ito ay kung saan ito ay napaka-offensive, ngunit ang Dell ay maaari ding maunawaan.
  • Ang pinakakasuklam-suklam na kinahinatnan ng nakaraang punto: ang laki ng node ay hindi maaaring palawakin pagkatapos makumpleto ang pag-install.
  • Walang teknikal na suporta. Ito ay isang produkto para sa pagsubok, na hindi ipinagbabawal na gamitin sa maliliit na pag-install, ngunit ako mismo ay hindi maglalakas-loob na mag-upload ng mga petabytes ng mahalagang data doon. Ngunit sa teknikal na paraan, walang makakapigil sa iyo na gawin ito.

Imbakan ng bagay sa silid sa likod, o Paano maging sarili mong service provider

Ano ang nasa malaking bersyon?

Sumunod tayo sa buong Europe at dumaan sa mga solusyong walang kabuluhan upang magkaroon ng mas kumpletong pag-unawa sa ecosystem.

Hindi ko kahit papaano kumpirmahin o tatanggihan ang pahayag na ang DELL ECS ay ang pinakamahusay na on-prem na imbakan ng bagay, ngunit kung mayroon kang sasabihin sa paksang ito, ikalulugod kong basahin ito sa mga komento. Hindi bababa sa ayon sa bersyon IDC MarketScape 2018 Ang Dell EMC ay may kumpiyansa na kabilang sa nangungunang limang pinuno ng merkado ng OBS. Bagama't hindi isinasaalang-alang doon ang mga solusyong nakabatay sa ulap, isa itong hiwalay na pag-uusap.

Mula sa teknikal na pananaw, ang ECS ​​ay isang object storage na nagbibigay ng access sa data gamit ang cloud storage protocols. Sinusuportahan ang AWS S3 at OpenStack Swift. Para sa mga bucket na naka-enable ang file, sinusuportahan ng ECS ​​ang NFSv3 para sa pag-export ng file-by-file.

Ang proseso ng pag-record ng impormasyon ay medyo hindi pangkaraniwan, lalo na pagkatapos ng mga klasikal na block storage system.

  • Kapag dumating ang bagong data, isang bagong object ang gagawin na may pangalan, ang data mismo, at metadata.
  • Ang mga bagay ay nahahati sa 128 MB na mga tipak, at ang bawat tipak ay isinusulat sa tatlong node nang sabay-sabay.
  • Ang index file ay ina-update, kung saan ang mga identifier at lokasyon ng storage ay naitala.
  • Ang log file (log entry) ay ina-update at nakasulat din sa tatlong node.
  • Ang isang mensahe tungkol sa matagumpay na pag-record ay ipinadala sa kliyente
    Ang lahat ng tatlong kopya ng data ay nakasulat sa parallel. Ang pagsulat ay itinuturing na matagumpay lamang kung ang lahat ng tatlong kopya ay matagumpay na naisulat.

Imbakan ng bagay sa silid sa likod, o Paano maging sarili mong service provider

Ang pagbabasa ay mas madali:

  • Ang kliyente ay humihiling ng data.
  • Hinahanap ng index kung saan nakaimbak ang data.
  • Ang data ay binabasa mula sa isang node at ipinadala sa kliyente.

Imbakan ng bagay sa silid sa likod, o Paano maging sarili mong service provider

Mayroong ilang mga server mismo, kaya tingnan natin ang pinakamaliit na Dell EMC ECS EX300. Nagsisimula ito sa 60TB, na may kakayahang lumaki hanggang 1,5PB. At ang nakatatandang kapatid nito, ang Dell EMC ECS EX3000, ay nagpapahintulot sa iyo na mag-imbak ng hanggang 8,6PB bawat rack.

I-deploy

Sa teknikal na paraan, ang Dell ECS CE ay maaaring i-deploy nang kasing laki ng gusto mo. Sa anumang kaso, wala akong nakitang anumang tahasang paghihigpit. Gayunpaman, maginhawang gawin ang lahat ng pag-scale sa pamamagitan ng pag-clone sa pinakaunang node, kung saan kailangan namin:

  • 8 vCPU
  • 64GB RAM
  • 16GB para sa OS
  • 1TB direktang imbakan
  • Pinakabagong release ng CentOS minimal

Ito ay isang opsyon kapag gusto mong i-install ang lahat sa iyong sarili mula sa simula. Ang pagpipiliang ito ay hindi nauugnay sa amin, dahil... Gagamitin ko ang imahe ng OVA para sa pag-deploy.

Ngunit sa anumang kaso, ang mga kinakailangan ay napakasama kahit para sa isang node, at kung mahigpit mong susundin ang liham ng batas, kailangan mo ng apat na gayong mga node.

Gayunpaman, ang mga developer ng ECS ​​CE ay nakatira sa totoong mundo, at matagumpay ang pag-install kahit na may isang node, at ang mga minimum na kinakailangan ay:

  • 4 vCPU
  • 16 GB RAM
  • 16 GB para sa OS
  • 104 GB na imbakan mismo

Ito ang mga mapagkukunang kailangan para i-deploy ang imahe ng OVA. Mas makatao at makatotohanan na.

Ang installation node mismo ay maaaring makuha mula sa opisyal github. Mayroon ding detalyadong dokumentasyon sa all-in-one na pag-deploy, ngunit maaari mo ring basahin sa opisyal readthedocs. Samakatuwid, hindi kami magtatagal nang detalyado sa paglalahad ng OVA, walang mga trick doon. Ang pangunahing bagay ay bago simulan ito, huwag kalimutang palawakin ang disk sa kinakailangang dami, o ilakip ang mga kinakailangan.
Sinimulan namin ang makina, buksan ang console at gamitin ang pinakamahusay na mga default na kredensyal:

  • login: admin
  • password: ChangeMe

Pagkatapos ay patakbuhin namin ang sudo nmtui at i-configure ang interface ng network - IP/mask, DNS at gate. Sa isip na ang CentOS minimal ay walang net-tools, sinusuri namin ang mga setting sa pamamagitan ng ip addr.

Imbakan ng bagay sa silid sa likod, o Paano maging sarili mong service provider

At dahil ang matapang lamang ang sumakop sa mga dagat, gumagawa kami ng isang yum update, pagkatapos ay nag-reboot kami. Ito ay talagang ligtas dahil... lahat ng deployment ay ginagawa sa pamamagitan ng mga playbook, at lahat ng mahahalagang docker package ay naka-lock sa kasalukuyang bersyon.

Ngayon ay oras na upang i-edit ang script ng pag-install. Walang magarbong windows o pseudo UI para sa iyo - lahat ay ginagawa sa pamamagitan ng paborito mong text editor. Sa teknikal, mayroong dalawang paraan: maaari mong patakbuhin ang bawat command nang manu-mano o agad na ilunsad ang videoploy configurator. Bubuksan lamang nito ang config sa vim, at sa paglabas ay magsisimula itong suriin. Ngunit hindi kawili-wili na sadyang gawing simple ang iyong buhay, kaya't magpatakbo tayo ng dalawa pang utos. Bagama't walang saysay ito, binalaan kita =)

Kaya, gawin natin ang vim ECS-CommunityEdition/deploy.xml at gawin ang pinakamainam na minimal na pagbabago upang ang ECS ​​ay gumagana at gumagana. Ang listahan ng mga parameter ay maaaring paikliin, ngunit ginawa ko ito tulad nito:

  • licensed_accepted: true Hindi mo kailangang baguhin ito, pagkatapos kapag nagde-deploy ay tahasan kang hihilingin na tanggapin ito at bibigyan ka ng magandang parirala. Marahil ito ay isang Easter egg.
    Imbakan ng bagay sa silid sa likod, o Paano maging sarili mong service provider
  • Alisin sa komento ang mga autonames ng mga linya: at custom: Maglagay ng kahit isang gustong pangalan para sa node - ang hostname ay papalitan nito sa panahon ng proseso ng pag-install.
  • install_node: 192.168.1.1 Tukuyin ang totoong IP ng node. Sa aming kaso, ipinapahiwatig namin ang pareho sa nmtui
  • dns_domain: ilagay ang iyong domain.
  • dns_servers: ipasok ang iyong dns.
  • ntp_servers: maaari mong tukuyin ang sinuman. Kinuha ko ang una kong nakita mula sa pool 0.pool.ntp.org (ito ay naging 91.216.168.42)
  • autonaming: custom Kung hindi ka mag-uncomment, ang buwan ay tatawaging Luna.
  • ecs_block_devices:
    / dev / sdb
    Para sa hindi malamang dahilan, maaaring mayroong hindi umiiral na block storage device /dev/vda
  • storage_pools:
    mga kasapi:
    192.168.1.1 Dito muli naming ipinapahiwatig ang tunay na IP ng node
  • ecs_block_devices:
    /dev/sdb Inuulit namin ang operasyon ng pagputol ng mga hindi umiiral na device.

Sa pangkalahatan, ang buong file ay inilarawan nang detalyado sa dokumentasyon, ngunit sino ang magbabasa nito sa gayong kaguluhang panahon. Sinasabi rin nito na ang pinakamababang sapat ay upang tukuyin ang IP at mask, ngunit sa aking lab ang naturang set ay nagsimula nang hindi maganda, at kailangan kong palawakin ito sa tinukoy sa itaas.

Imbakan ng bagay sa silid sa likod, o Paano maging sarili mong service provider

Pagkatapos lumabas sa editor, kailangan mong patakbuhin ang update_deploy /home/admin/ECS-CommunityEdition/deploy.yml, at kung gagawin nang tama ang lahat, tahasan itong iuulat.

Imbakan ng bagay sa silid sa likod, o Paano maging sarili mong service provider

Pagkatapos ay kailangan mo pa ring patakbuhin ang videoploy, hintaying mag-update ang kapaligiran, at maaari mong simulan ang pag-install mismo gamit ang ova-step1 na utos, at pagkatapos ng matagumpay na pagkumpleto nito, ang ova-step2 na utos. Mahalaga: huwag ihinto ang mga script sa pamamagitan ng kamay! Maaaring tumagal ng mahabang panahon ang ilang hakbang, maaaring hindi makumpleto sa unang pagsubok, at maaaring magmukhang sira ang lahat. Sa anumang kaso, kailangan mong maghintay para sa script na makumpleto nang natural. Sa dulo dapat mong makita ang isang mensahe na katulad nito.

Imbakan ng bagay sa silid sa likod, o Paano maging sarili mong service provider

Ngayon ay maaari na naming buksan ang WebUI control panel gamit ang IP na alam namin. Kung ang configuration ay hindi binago sa yugto, ang default na account ay magiging root/ChangeMe. Maaari mo ring gamitin ang aming S3-compatible na storage kaagad. Available ito sa mga port 9020 para sa HTTP, at 9021 para sa HTTPS. Muli, kung walang nabago, pagkatapos ay access_key: object_admin1 at secret_key: ChangeMeChangeMeChangeMeChangeMeChangeMe.

Ngunit huwag tayong masyadong mauna sa ating sarili at magsimula sa pagkakasunud-sunod.

Imbakan ng bagay sa silid sa likod, o Paano maging sarili mong service provider

Kapag nag-log in ka sa unang pagkakataon, mapipilitan kang baguhin ang iyong password sa isang sapat, na ganap na tama. Ang pangunahing dashboard ay napakalinaw, kaya gumawa tayo ng isang bagay na mas kawili-wili kaysa sa pagpapaliwanag sa mga halatang sukatan. Halimbawa, gumawa tayo ng user na gagamitin natin para ma-access ang storage. Sa mundo ng mga tagapagbigay ng serbisyo, ang mga ito ay tinatawag na mga nangungupahan. Ginagawa ito sa Manage > Users > New Object User

Imbakan ng bagay sa silid sa likod, o Paano maging sarili mong service provider

Kapag gumagawa ng user, hinihiling sa amin na tumukoy ng namespace. Sa teknikal na paraan, walang pumipigil sa amin na gumawa ng kasing dami ng mga ito gaya ng may mga gumagamit. At vice versa. Nagbibigay-daan ito sa iyo na pamahalaan ang mga mapagkukunan nang nakapag-iisa para sa bawat nangungupahan.

Alinsunod dito, pinipili namin ang mga function na kailangan namin at bumubuo ng mga key ng user. Sapat na sa akin ang S3/Atmos. At huwag kalimutang i-save ang susi πŸ˜‰

Imbakan ng bagay sa silid sa likod, o Paano maging sarili mong service provider

Nagawa na ang user, oras na para maglaan ng bucket sa kanya. Pumunta sa Manage > Bucket at punan ang mga kinakailangang field. Simple lang ang lahat dito.

Imbakan ng bagay sa silid sa likod, o Paano maging sarili mong service provider

Ngayon ay handa na namin ang lahat para sa medyo labanang paggamit ng aming imbakan ng S3.

Pag-set up ng Veeam

Kaya, tulad ng naaalala natin, ang isa sa mga pangunahing gamit ng pag-iimbak ng bagay ay ang pangmatagalang pag-iimbak ng impormasyon na bihirang ma-access. Ang isang mainam na halimbawa ay ang pangangailangan na mag-imbak ng mga backup sa isang malayong site. Sa Veeam Backup & Replication ang feature na ito ay tinatawag na Capacity Tier.

Magsimula tayo sa pag-set up sa pamamagitan ng pagdaragdag ng ating Dell ECS CE sa interface ng Veeam. Sa tab na Backup Infrastructure, ilunsad ang Add New Repository Wizard at piliin ang Object Storage.

Imbakan ng bagay sa silid sa likod, o Paano maging sarili mong service provider

Piliin natin kung para saan nagsimula ang lahat - S3 Compatible.

Imbakan ng bagay sa silid sa likod, o Paano maging sarili mong service provider

Sa lalabas na window, isulat ang gustong pangalan at pumunta sa hakbang na Account. Dito kailangan mong tukuyin ang Service point sa form https://your_IP:9021, ang rehiyon ay maaaring iwanang kung ano at ang nilikhang gumagamit ay maaaring idagdag. Ang isang gate server ay kinakailangan kung ang iyong imbakan ay matatagpuan sa isang malayong site, ngunit ito ay isang paksa para sa pag-optimize ng imprastraktura at isang hiwalay na artikulo, upang maaari mong ligtas na laktawan ito dito.

Imbakan ng bagay sa silid sa likod, o Paano maging sarili mong service provider

Kung ang lahat ay tinukoy at na-configure nang tama, isang babala tungkol sa sertipiko ay lilitaw at pagkatapos ay isang window na may bucket kung saan maaari kang lumikha ng isang folder para sa aming mga file.

Imbakan ng bagay sa silid sa likod, o Paano maging sarili mong service provider

Dumaan kami sa wizard hanggang sa dulo at tamasahin ang resulta.

Imbakan ng bagay sa silid sa likod, o Paano maging sarili mong service provider

Ang susunod na hakbang ay ang alinman sa lumikha ng bagong Scale-out Backup Repository, o idagdag ang aming S3 sa umiiral na - ito ay gagamitin bilang Capacity Tier para sa archival storage. Walang function na direktang gumamit ng S3-compatible na storage, tulad ng isang regular na repository, sa kasalukuyang release. Napakaraming hindi halatang problema ang kailangang lutasin para mangyari ito, ngunit posible ang anumang bagay.
Pumunta sa mga setting ng repository at paganahin ang Capacity Tier. Ang lahat ay transparent doon, ngunit mayroong isang kawili-wiling nuance: kung gusto mong maipadala ang lahat ng data sa object storage sa lalong madaling panahon, itakda lamang ito sa 0 araw.

Imbakan ng bagay sa silid sa likod, o Paano maging sarili mong service provider

Pagkatapos dumaan sa wizard, kung ayaw mong maghintay, maaari mong pindutin ang ctrl+RMB sa repository, pilit na ilunsad ang Tiering job at panoorin ang pag-crawl ng mga graph.

Imbakan ng bagay sa silid sa likod, o Paano maging sarili mong service provider

Yun lang muna. Sa palagay ko nagtagumpay ako sa gawain ng pagpapakita na ang pag-imbak ng bloke ay hindi nakakatakot gaya ng iniisip ng mga tao. Oo, may mga solusyon at opsyon para sa isang bagon at isang maliit na cart, ngunit hindi mo maaaring saklawin ang lahat sa isang artikulo. Kaya't ibahagi natin ang aming karanasan sa mga komento.

Pinagmulan: www.habr.com

Magdagdag ng komento