Määritä Amazon OpenSearch Service korkeaa käytettävyyttä varten | Amazon Web Services

Määritä Amazon OpenSearch Service korkeaa käytettävyyttä varten | Amazon Web Services

Lähdesolmu: 2691649

Amazon OpenSearch-palvelu on täysin avoimen lähdekoodin haku- ja analytiikkakone, joka avaa turvallisesti reaaliaikaisen haun, seurannan ja analyysin liiketoiminta- ja operatiivisista tiedoista käyttötapauksissa, kuten suositusmoottoreissa, verkkokauppasivustoissa ja luettelohaussa. Menestyäksesi liiketoiminnassasi järjestelmien on oltava erittäin käytettävyyttä ja suorituskykyä, mikä minimoi seisokit ja vältät vikoja. Kun käytät OpenSearch-palvelua ensisijaisena keinona valvoa infrastruktuuriasi, sinun on varmistettava myös sen saatavuus. OpenSearch-palvelun seisokkeilla voi olla merkittävä vaikutus liiketoimintasi tuloksiin, kuten tulojen menetys, tuottavuuden menetys, tuotemerkin arvon menetys ja paljon muuta.

- alan standardi käytettävyyden mittaamiseen on yhdeksän luokkaa. OpenSearch-palvelu tarjoaa 3 9:n saatavuuden, kun seuraat parhaat käytännöt, mikä tarkoittaa, että se takaa alle 43.83 minuutin seisokkeja kuukaudessa. Tässä viestissä opit, kuinka voit määrittää OpenSearch Service -verkkotunnuksesi korkeaa käytettävyyttä ja suorituskykyä varten noudattamalla parhaita käytäntöjä ja suosituksia verkkotunnuksen määrittämisessä.

Verkkotunnuksesi käytettävyyteen vaikuttavat kaksi olennaista tekijää: verkkotunnuksesi resurssien käyttö, joka johtuu pääasiassa työmäärästäsi, ja ulkoiset tapahtumat, kuten infrastruktuurihäiriöt. Vaikka ensin mainittua voidaan hallita jatkuvasti valvomalla verkkotunnuksen suorituskykyä ja kuntoa ja skaalaamalla verkkotunnusta vastaavasti, jälkimmäistä ei. Voit lieventää ulkoisten tapahtumien, kuten Saatavuusvyöhykkeen käyttökatkoksen, esiintymän tai levyvirheen tai verkko-ongelmien vaikutusta toimialueellasi, lisäämällä kapasiteettia, joka on jaettu useille käytettävyysvyöhykkeille, ja säilyttää useita kopioita tiedoista. Jos näin ei tehdä, se voi johtaa suorituskyvyn heikkenemiseen, käytettävyyteen ja pahimmassa tapauksessa tietojen menetykseen.

Katsotaanpa käytettävissäsi olevia vaihtoehtoja varmistaaksesi, että verkkotunnus on käytettävissä ja suorituskykyinen.

Klusterin kokoonpano

Tässä osiossa puhumme erilaisista määritysvaihtoehdoista, jotka sinun on määritettävä klusterisi oikein, mukaan lukien AZ:n määrän määrittäminen käyttöönottoa varten, pää- ja datasolmujen määrittäminen, indeksien ja sirpaleiden määrittäminen.

Multi-AZ-käyttöönotto

Datasolmut ovat vastuussa verkkotunnuksesi indeksointi- ja hakupyyntöjen käsittelystä. Tietosolmujen käyttöönotto useilla käytettävyysvyöhykkeillä parantaa verkkotunnuksesi käytettävyyttä lisäämällä redundanttia vyöhykekohtaista tietojen tallennusta ja käsittelyä. Multi-AZ-käyttöönoton avulla verkkotunnuksesi voi pysyä käytettävissä, vaikka koko Saatavuusvyöhyke ei ole käytettävissä. Tuotannon työmääriä varten, AWS suosittelee kolmen saatavuusvyöhykkeen käyttöä verkkotunnuksessasi. Käytä kahta käytettävyysaluetta alueille, jotka tukevat vain kahta käytettävyyden parantamiseksi. Tämä varmistaa, että verkkotunnuksesi on käytettävissä Single-AZ-vian sattuessa.

Dedikoitu klusterinhallinta (pääsolmut)

AWS suosittelee kolmen erillisen klusterinhallinnan (CM) solmun käyttöä kaikille tuotantotyökuormille. CM-solmut seuraavat klusterin tilaa, sen indeksien ja sirpaleiden tilaa ja sijaintia, kaikkien indeksien kartoitusta ja datasolmujen saatavuutta ja ylläpitää luetteloa käynnissä olevista klusteritason tehtävistä. Ilman omistettuja CM-solmuja klusteri käyttää datasolmuja, mikä tekee klusterin alttiiksi työkuormitusvaatimuksille. Sinun tulee määrittää CM-solmujen koko tehtävän koon perusteella – ensisijaisesti datasolmujen, indeksien ja sirpaleiden määrä. OpenSearch Service käyttää aina CM-solmuja kolmelle saatavuusvyöhykkeelle, jos alue tukee sitä (kaksi yhdessä saatavuusvyöhykkeessä ja yksi muissa saatavuusvyöhykkeissä, jos alueilla on vain kaksi Saatavuusvyöhykettä). Käynnissä olevalla toimialueella vain yksi kolmesta CM-solmusta toimii valittuna johtajana. Kaksi muuta CM-solmua osallistuvat valintaan, jos valittu CM-solmu epäonnistuu.

Seuraavassa taulukossa on esitetty AWS:n suositukset CM-koosta. CM-solmut toimivat solmujen, indeksien, sirpaleiden ja kartoituksen perusteella. Mitä enemmän työtä, sitä enemmän laskentaa ja muistia tarvitset klusterin tilan säilyttämiseen ja käyttämiseen.

Ilmentymien lukumäärä Cluster Manager -solmun RAM-muistin koko Suurin tuettu sirpaleiden määrä Suositeltu vähimmäisomistettu klusteripäällikköinstanssityyppi
1-10 8 GiB 10,000 m5.large.search tai m6g.large.search
11-30 16 GiB 30,000 c5.2xlarge.search tai c6g.2xlarge.search
31-75 32 GiB 40,000 c5.4xlarge.search tai c6g.4xlarge.search
76 - 125 64 GiB 75,000 r5.2xlarge.search tai r6g.2xlarge.search
126 - 200 128 GiB 75,000 r5.4xlarge.search tai r6g.4xlarge.search

Indeksit ja sirpaleet

Indeksit ovat looginen rakennelma, joka sisältää kokoelman asiakirjoja. Voit osioida hakemistosi rinnakkaiskäsittelyä varten määrittämällä ensisijaisen sirpaleiden määrän, jossa sirpaleet edustavat fyysistä yksikköä tietojen tallentamista ja käsittelyä varten. OpenSearch Servicessä sirpale voi olla joko ensisijainen sirpale tai replikan sirpale. Käytät replikoita kestävyyden vuoksi – jos ensisijainen sirpale katoaa, OpenSearch Service nostaa yhden replikoista ensisijaiseksi – ja haun suorituskyvyn parantamiseksi. OpenSearch-palvelu varmistaa, että ensisijaiset ja replikan sirpaleet sijoitetaan eri solmuihin ja eri saatavuusvyöhykkeisiin, jos niitä otetaan käyttöön useammalla kuin yhdellä Saatavuusvyöhykkeellä. Korkean käytettävyyden varmistamiseksi AWS suosittelee vähintään kahden replikan määrittämistä kullekin hakemistolle kolmen vyöhykkeen asetuksissa suorituskyvyn ja saatavuuden häiriöiden välttämiseksi. Multi-AZ-asetuksissa, jos solmu epäonnistuu tai pahimmassa tapauksessa saatavuusvyöhyke epäonnistuu, sinulla on silti kopio tiedoista.

Klusterin seuranta ja hallinta

Kuten aiemmin mainittiin, kokoonpanon valitseminen parhaiden käytäntöjen perusteella on vain puolet työstä. Meidän on myös jatkuvasti seurattava resurssien käyttöä ja suorituskykyä määrittääksemme, tarvitseeko toimialue skaalata. Alivaroitettu tai liikaa käytetty verkkotunnus voi johtaa suorituskyvyn heikkenemiseen ja lopulta käytettävyyteen.

CPU: n käyttö

Käytät verkkotunnuksesi suoritinta työkuormasi suorittamiseen. Yleissääntönä on, että sinun tulee kohdistaa 60 % keskimääräiseen prosessorin käyttöasteeseen kaikissa datasolmuissa, huippujen ollessa 80 %, ja sietää pieniä piikkejä 100 %:iin. Kun tarkastellaan saatavuutta ja etenkin kun otetaan huomioon koko vyöhykkeen epäkäytettävyys, on olemassa kaksi skenaariota. Jos sinulla on kaksi käytettävyysvyöhykettä, kukin vyöhyke käsittelee 50 % liikenteestä. Jos jokin vyöhyke ei ole käytettävissä, toinen vyöhyke ottaa kaiken liikenteen, mikä kaksinkertaistaa suorittimen käytön. Siinä tapauksessa sinun on oltava noin 30–40 %:n keskimääräinen prosessorin käyttöaste kullakin vyöhykkeellä säilyttääksesi käytettävyyden. Jos käytät kolmea käytettävyysvyöhykettä, kukin vyöhyke vie 33 % liikenteestä. Jos jokin vyöhyke ei ole käytettävissä, toinen vyöhyke saa noin 17 % liikenteestä. Tässä tapauksessa sinun tulee kohdistaa 50–60 % keskimääräiseen suorittimen käyttöasteeseen.

Muistin käyttö

OpenSearch Service tukee kahden tyyppistä jätteenkeräystä. Ensimmäinen on G1 roskakeräys (G1GC), jota käyttävät OpenSearch Service -solmut, joiden virtalähteenä on AWS Graviton 2. Toinen on Concurrent Mark Sweep (CMS), jota käyttävät kaikki solmut, jotka käyttävät muita prosessoreita. Kaikesta solmulle varatusta muistista puolet muistista (32 Gt asti) on varattu Java-kekoon, ja loput muistista käytetään muiden käyttöjärjestelmän tehtävien, tiedostojärjestelmän välimuistin ja niin edelleen. Verkkotunnuksen saatavuuden ylläpitämiseksi suosittelemme pitämään JVM:n maksimikäyttöasteen noin 80 %:ssa CMS:ssä ja 95 %:ssa G1GC:ssä. Kaikki tämän lisäksi vaikuttaisi verkkotunnuksesi saatavuuteen ja tekisi klusteristasi epäterveellisen. Suosittelemme myös ottamaan käyttöön automaattisen virityksen, joka tarkkailee aktiivisesti muistin käyttöä ja laukaisee roskankerääjän.

Varastoinnin käyttö

OpenSearch Service julkaisee useita ohjeita verkkotunnusten mitoitus. Tarjoamme empiirisen kaavan, jonka avulla voit määrittää tarpeitasi vastaavan oikean määrän tallennustilaa. On kuitenkin tärkeää pitää silmällä tallennustilan ehtymistä ajan myötä ja työmäärän ominaisuuksien muutoksia. Määritä asetukset, jotta verkkotunnuksen tallennustila ei lopu kesken ja että se voi jatkaa tietojen indeksointia amazonin pilvikello hälytyksiä ja valvo vapaata tallennustilaasi.

AWS suosittelee myös ensisijaisen sirpaleiden määrän valitsemista siten, että jokainen sirpale on optimaalisen kokoluokan sisällä. Voit määrittää optimaalisen sirpaleen koon tietojesi ja liikennetietojesi perusteella testaamalla. Käytämme 10–30 Gt:n ensisijaisen sirpaleen kokoa hakukäyttötapauksissa ja 45–50 Gt:n ensisijaisia ​​sirpalekokoja lokianalyysin käyttötapauksissa. Koska sirpaleet ovat toimialueesi työntekijöitä, he ovat suoraan vastuussa työtaakan jakautumisesta datasolmujen välillä. Jos sirpaleesi ovat liian suuria, saatat nähdä Java-kasa stressiä suurten aggregaatioiden, huonomman kyselyn suorituskyvyn ja huonomman suorituskyvyn vuoksi klusteritason tehtävissä, kuten sirpaleiden uudelleentasapainotuksessa, tilannevedoksissa ja hot-to-lämpö-migraatioissa. Jos sirpaleesi ovat liian pieniä, ne voivat ylittää verkkotunnuksen Java-kekotilan, heikentää kyselyn suorituskykyä liiallisen sisäisen verkottumisen vuoksi ja hidastaa klusteritason tehtäviä. Suosittelemme myös pitämään sirpaleiden määrän solmua kohti suhteessa käytettävissä olevaan kasaan (puolet ilmentymän RAM-muistista enintään 32 Gt) – 25 sirpaletta Java-keon gigatavua kohden. Tämä tekee käytännössä 1,000 XNUMX sirpaleen rajan mille tahansa verkkotunnuksesi datasolmulle.

Yhteenveto

Tässä viestissä opit useita vinkkejä ja temppuja erittäin saatavilla olevan verkkotunnuksen määrittämiseen OpenSearch-palvelun avulla, mikä auttaa sinua pitämään OpenSearch-palvelun suorituskykyisenä ja käytettävissä ajamalla sitä kolmella Saatavuusvyöhykkeellä.

Pysy kuulolla julkaisusarjasta, joka keskittyy OpenSearch-palvelun eri ominaisuuksiin ja toimintoihin. Jos sinulla on palautetta tästä postauksesta, lähetä se kommenttiosiossa. Jos sinulla on kysyttävää tästä viestistä, aloita uusi ketju aiheesta OpenSearch-palvelun foorumi tai yhteydenotto AWS-tuki.


Tietoja kirjoittajista

Rohin Bhargava on vanhempi tuotepäällikkö Amazon OpenSearch Service -tiimissä. Hänen intohimonsa AWS:ssä on auttaa asiakkaita löytämään oikea yhdistelmä AWS-palveluita saavuttaakseen menestystä liiketoimintatavoitteissaan.

Prashant Agrawal on vanhempi Search Specialist Solutions -arkkitehti Amazon OpenSearch Servicessä. Hän työskentelee läheisessä yhteistyössä asiakkaiden kanssa auttaakseen heitä siirtämään työkuormituksensa pilveen ja auttaa nykyisiä asiakkaita hienosäätämään klustereitaan paremman suorituskyvyn saavuttamiseksi ja kustannusten säästämiseksi. Ennen liittymistään AWS:ään hän auttoi useita asiakkaita käyttämään OpenSearchia ja Elasticsearchia haku- ja lokianalytiikan käyttötapauksissa. Kun et ole töissä, voit löytää hänet matkustamasta ja tutkimassa uusia paikkoja. Lyhyesti sanottuna hän tykkää tehdä Syö → Matka → Toista.

Aikaleima:

Lisää aiheesta AWS Big Data