Elastinė paieška

Kurkite atsargines ir atkurkite „Elasticsearch“ grupes su momentinėmis nuotraukomis

Kurkite atsargines ir atkurkite „Elasticsearch“ grupes su momentinėmis nuotraukomis
„Elasticsearch“ yra susijęs su duomenimis ir, kaip jūs tikriausiai jau žinote, duomenys yra svarbūs jums ir „Elasticsearch“. Tačiau tiek, kiek jūs ir „Elasticsearch“ mėgstate duomenis, gali atsirasti duomenų gedimų, kurie gali prarasti duomenis.

Kad būtų lengviau apsaugoti nuo duomenų praradimo, „Elasticsearch“ turi įvairias funkcijas, kurios leidžia užtikrinti duomenų prieinamumą net ir duomenų gedimo atvejais.

Keletas būdų, kuriuos „Elasticsearch“ naudoja, kad užtikrintų duomenų prieinamumą, yra šie:

Šioje pamokoje parodoma, kaip sukurti sankaupos momentinius vaizdus, ​​kurie padės jums būti pasirengusiems įvykus negrįžtamam duomenų gedimo įvykiui.

Pradėkime.

Kas yra „Elasticsearch Snapshot“?

Kaip minėta, elastinė momentinė nuotrauka yra veikiančio „Elasticsearch“ klasterio atsarginė kopija. Ši momentinė nuotrauka gali būti visa grupė arba konkretūs rodikliai ir duomenų srautai tam tikroje grupėje.

Kaip netrukus sužinosite, saugyklos papildinys tvarko „Elasticsearch“ momentines nuotraukas. Šie momentiniai vaizdai gali būti saugomi įvairiose papildinio apibrėžtose saugojimo vietose. Tai apima vietines sistemas ir nuotolines sistemas, tokias kaip GCP saugykla, „Amazon EC2“, „Microsoft Azure“ ir daugelį kitų.

Kaip sukurti „Elasticsearch“ momentinių nuotraukų saugyklą

Prieš pradėdami kurti „Elasticsearch“ momentines nuotraukas, turime sukurti momentinių nuotraukų saugyklą, nes daugelis „Elasticsearch“ paslaugų naudoja „Snapshot“ API šioms užduotims atlikti.

Kai kurios „Snapshot“ API tvarkomos užduotys yra šios:

Norėdami sukurti momentinių nuotraukų saugyklą, mes naudojame _snapshot API galinį tašką, po kurio nurodome pavadinimą, kurį norime priskirti momentinių nuotraukų saugyklai. Apsvarstykite toliau pateiktą užklausą, sukuriančią saugyklą, pavadintą „backup_repo“

PUT / _snapshot / backup_repo

„type“: „fs“,
„nustatymai“:
"vieta": "/ home / root / backups",
„kompresas“: tiesa

Čia pateikiama anksčiau nurodytos užklausos komanda „CURL“:

garbanos -XPUT "http: // localhost: 9200 / _snapshot / backup_repo" -H 'Content-Type: application / json' -d '"type": "fs", "settings": "location": "/ home / root / backups "," compress ": tiesa '

Norėdami perduoti momentinės nuotraukos saugyklos kelią, pirmiausia prie kelio turite pridėti sistemos kelią arba pirminį katalogą.atpirkimo įrašas elasticsearch.yml

Kelias.atpirkimo įrašas turėtų atrodyti panašiai kaip:

kelias.atpirkimas: [„/ home / root / backups“]

„Elasticsearch“ konfigūracijos failą rasite aplanke / etc / elasticsearch / elasticsearch.yml

PASTABA: Pridėjus kelią.atpirkti, gali tekti iš naujo paleisti „Elasticsearch“ grupes. Be to, kelio palaikomos reikšmės.atpirkimas gali skirtis priklausomai nuo platformos, kurioje veikia „Elasticsearch“.

Kaip peržiūrėti momentinių nuotraukų saugyklą

Norėdami patvirtinti sėkmingą momentinių nuotraukų saugyklos sukūrimą, naudokite GET užklausą su _snapshot galiniu tašku:

GET / _snapshot / backup_repo

Taip pat galite naudoti šią komandą CURL:

curl -XGET "http: // localhost: 9200 / _snapshot / backup_repo"

Tai turėtų rodyti informaciją apie atsarginių kopijų saugyklą, pavyzdžiui:


"backup_repo":
„type“: „fs“,
„nustatymai“:
"suspausti": "tiesa",
"location": "" "/ home / root / backups" ""


Jei turite daugiau nei vieną momentinių nuotraukų saugyklą ir neprisimenate pavadinimo, galite praleisti atpirkimo pavadinimą ir paskambinti į „_snapshot“ galutinį tašką, kad išvardytumėte visas esamas saugyklas.

GET / _snapshot arba curl curl -XGET http: // localhost: 9200 / _snapshot

Kaip sukurti „Elasticsearch“ momentinę nuotrauką

Kuriant „Elasticsearch“ momentinę nuotrauką konkrečiai momentinių vaizdų saugyklai, tvarko „snapshot“ kūrimo API. API reikalingas momentinės nuotraukos saugyklos pavadinimas ir momentinės nuotraukos pavadinimas.

PASTABA: Vienoje momentinių nuotraukų saugykloje gali būti daugiau nei viena tų pačių grupių momentinė nuotrauka, jei jos turi unikalias tapatybes / pavadinimus.

Apsvarstykite šią užklausą, kad pridėtumėte momentinę kopiją, vadinamą „snapshot_2021“, į atsarginės kopijos_repo talpyklą.

PUT / _snapshot / backup_repo / snapshot_2021

Norėdami naudoti „CURL“, naudokite komandą:

curl -XPUT „http: // localhost: 9200 / _snapshot / backup_repo / snapshot_2021“

Komanda turėtų grąžinti „Elasticsearch“ atsakymą su 200 OK ir priimti: true


„priimta“: tiesa

Kadangi jame nenurodoma, kuriuos duomenų srautus ir indeksus norite kurti atsarginėmis kopijomis, iškvietus aukščiau pateiktą užklausą, sukuriama visų duomenų ir grupių būsenos atsarginė kopija. Norėdami nurodyti, kuriuos duomenų srautus ir indeksus kurti atsargines kopijas, pridėkite juos prie užklausos turinio.

Apsvarstykite šią užklausą, kuri sukuria atsarginę .kibana index (sistemos indeksas) ir nurodo, kuris vartotojas leido momentinę nuotrauką, ir priežastis.

PUT / _snapshot / backup_repo / snapshot_2

"indeksai": ".kibana ",
"ignore_unavailable": tiesa,
"include_global_state": tiesa,
„metaduomenys“:
"taken_by": "elastinis administratorius",
„Taken_because“: „Kasdieninė atsarginė kopija“

Tam skirta komanda „CURL“ yra:

užriesti -XPUT "http: // localhost: 9200 / _snapshot / backup_repo / snapshot_2" -H 'Content-Type: application / json' -d '"indeksai": ".kibana "," ignore_unavailable ": true," include_global_state ": true," metadata ": " taken_by ":" Flexibleadmin "," taken_because ":" Daily Backup " '

Ignore_unavailable nustato Bulio būseną, kuri pateikia klaidą, jei nėra duomenų srautų ar momentiniame vaizde nurodytų indeksų arba jie uždaryti.

Parametras „include_global_state“ išsaugo klasterio esamą būseną, jei ji teisinga. Dalis išsaugotos sankaupos informacijos yra:

PASTABA: Galite nurodyti daugiau nei vieną indeksą, atskirtą kableliais.

Dažnas argumentas, naudojamas su _snapshot galiniu tašku, yra wait_for_completion, Bulio reikšmė, apibrėžianti, ar (true), ar ne (false) užklausa turėtų grįžti iškart po momentinės nuotraukos inicijavimo (numatytasis nustatymas), ar laukti, kol momentinė nuotrauka bus baigta.

Pavyzdžiui:

PUT / _snapshot / backup_repo / snapshot_3?wait_for_completion = tiesa

"indeksai": ".kibana ",
"ignore_unavailable": tiesa,
"include_global_state": klaidinga,
„metaduomenys“:
"taken_by": "elastinis administratorius",
„Taken_because“: „Savaitės atsarginė kopija“

CURL komanda yra:

užriesti -XPUT "http: // localhost: 9200 / _snapshot / backup_repo / snapshot_3?wait_for_completion = true "-H" Turinio tipas: application / json '-d' "indeksai": ".kibana "," ignore_unavailable ": true," include_global_state ": false," metadata ": " taken_by ":" Flexibleadmin "," taken_because ":" Savaitės atsarginė kopija " '

Kai parametras „wait_for_completion“ bus nustatytas kaip „true“, pateiksite išvestį, panašią į toliau pateiktą:


„momentinė nuotrauka“:
"snapshot": "snapshot_3",
„uuid“: „tQUHyofIRnGMMtw0AGBACQ“,
„version_id“: 7100299,
„versija“: „7.10.2 ",
„indeksai“: [
".kibana_1 "
],
"data_streams": [],
"include_global_state": klaidinga,
„metaduomenys“:
"taken_by": "elastinis administratorius",
„Taken_because“: „Savaitės atsarginė kopija“
,
"valstija": "SĖKMĖ",
„start_time“: „2021-01-19T13: 36: 59.615Z ",
„start_time_in_millis“: 1611063419615,
„end_time“: „2021-01-19T13: 37: 00.433Z ",
„end_time_in_millis“: 1611063420433,
„duration_in_millis“: 818,
„nesėkmės“: [],
"skeveldros":
„iš viso“: 1,
„nepavyko“: 0,
„sėkmingas“: 1


Kaip peržiūrėti momentines nuotraukas

GET momentinės nuotraukos API valdo rodinio momentinių nuotraukų funkcionalumą.

Viskas, ką jums reikia perduoti užklausoje, yra momentinių vaizdų saugykla ir nuotraukos, kurią norite peržiūrėti, pavadinimas.

Momentinė nuotrauka turėtų pateikti išsamią informaciją apie nurodytą momentinę nuotrauką. Ši informacija apima:

Pvz., Norėdami peržiūrėti išsamią informaciją apie anksčiau sukurtą momentinę nuotrauką_3, naudokite toliau pateiktą užklausą:

GET / _snapshot / backup_repo / snapshot_3
Norėdami naudoti „CURL“, naudokite toliau pateiktą komandą:
[cc lang = "text" width = "100%" height = "100%" escaped = "true" theme = "blackboard" nowrap = "0"]
curl -XGET „http: // localhost: 9200 / _snapshot / backup_repo / snapshot_3“

Užklausa turėtų pateikti atsakymą su išsamia momentinės nuotraukos informacija:


„momentinės nuotraukos“: [

"snapshot": "snapshot_3",
„uuid“: „tQUHyofIRnGMMtw0AGBACQ“,
„version_id“: 7100299,
„versija“: „7.10.2 ",
„indeksai“: [
".kibana_1 "
],
"data_streams": [],
"include_global_state": klaidinga,
„metaduomenys“:
"taken_by": "elastinis administratorius",
„Taken_because“: „Savaitės atsarginė kopija“
,
„valstija“: „SĖKMĖ“,
„start_time“: „2021-01-19T13: 36: 59.615Z ",
„start_time_in_millis“: 1611063419615,
„end_time“: „2021-01-19T13: 37: 00.433Z ",
„end_time_in_millis“: 1611063420433,
„duration_in_millis“: 818,
„nesėkmės“: [],
"skeveldros":
„iš viso“: 1,
„nepavyko“: 0,
„sėkmingas“: 1


]

Taip pat galite tinkinti užklausos turinį, kad gautumėte konkrečią informaciją apie momentinę nuotrauką. Tačiau kol kas to nenagrinėsime.

Sakykime, kad norite peržiūrėti informaciją apie visas nuotraukas konkrečioje momentinių nuotraukų saugykloje; tokiu atveju prašyme galite perduoti žvaigždutės pakaitą kaip:

GET / _snapshot / backup_repo / *

Tam skirta komanda „CURL“ yra:

curl -XGET „http: // localhost: 9200 / _snapshot / backup_repo / *“

Atsakymas yra išsamus visų tos talpyklos momentinių vaizdų sąrašas:


„momentinės nuotraukos“: [

"momentinė nuotrauka": "momentinė nuotrauka_2021",
„uuid“: „7CFigHzvRtyZW07c60d2iw“,
„version_id“: 7100299,
„versija“: „7.10.2 ",
„indeksai“: [
„my_index“,
"single_index_with_body",
„my_index_2“,
„single_index“,
".kibana_1 ",
„Testas“
],
"data_streams": [],
"include_global_state": tiesa,
„valstija“: „SĖKMĖ“,
„start_time“: „2021-01-19T13: 28: 48.172Z ",
„start_time_in_millis“: 1611062928172,
"end_time": "2021-01-19T13: 28: 50.831Z ",
„end_time_in_millis“: 1611062930831,
„duration_in_millis“: 2659,
„nesėkmės“: [],
"skeveldros":
„iš viso“: 7,
„nepavyko“: 0,
„sėkmingas“: 7

,

"momentinė nuotrauka": "momentinė nuotrauka_2",
„uuid“: „w58IrYmORAub8VC7cg04Wg“,
„version_id“: 7100299,
„versija“: „7.10.2 ",
„indeksai“: [
".kibana_1 "
],
"data_streams": [],
"include_global_state": klaidinga,
„metaduomenys“:
"taken_by": "elastinis administratorius",
"taken_because": "Kasdieninė atsarginė kopija"
,
"valstija": "SĖKMĖ",
„start_time“: „2021-01-19T13: 33: 34.482Z ",
„start_time_in_millis“: 1611063214482,
„end_time“: „2021-01-19T13: 33: 35.921Z ",
„end_time_in_millis“: 1611063215921,
„duration_in_millis“: 1439 m,
„nesėkmės“: [],
"skeveldros":
„iš viso“: 1,
„nepavyko“: 0,
„sėkmingas“: 1

,

"snapshot": "snapshot_3",
„uuid“: „tQUHyofIRnGMMtw0AGBACQ“,
„version_id“: 7100299,
„versija“: „7.10.2 ",
„indeksai“: [
".kibana_1 "
],
"data_streams": [],
"include_global_state": klaidinga,
„metaduomenys“:
"taken_by": "elastinis administratorius",
„Taken_because“: „Savaitės atsarginė kopija“
,
"valstija": "SĖKMĖ",
„start_time“: „2021-01-19T13: 36: 59.615Z ",
„start_time_in_millis“: 1611063419615,
„end_time“: „2021-01-19T13: 37: 00.433Z ",
„end_time_in_millis“: 1611063420433,
„duration_in_millis“: 818,
„nesėkmės“: [],
"skeveldros":
„iš viso“: 1,
„nepavyko“: 0,
„sėkmingas“: 1


]

Pakaitalai yra labai naudingi filtruojant konkrečią informaciją apie momentines nuotraukas.

Kaip ištrinti momentinę nuotrauką

Momentinės nuotraukos ištrynimas yra labai paprastas: viskas, ką jums reikia padaryti, tai naudoti „DELETE“ užklausą kaip:

DELETE / _snapshot / backup_repo / snapshot_2021 /

CURL komanda yra:

garbanoti -XDELETE „http: // localhost: 9200 / _snapshot / backup_repo / snapshot_2021 /“

Atsakymą reikia pripažinti: tiesa


„Pripažino“: tiesa

Jei momentinės nuotraukos nėra, gausite 404 būsenos kodą ir momentinės kopijos trūkstamą klaidą kaip:


„klaida“:
"Pagrindinė priežastis" : [

"type": "snapshot_missing_exception",
"Priežastis": "Trūksta [backup_repo: snapshot_2021]"

],
"type": "snapshot_missing_exception",
"Priežastis": "Trūksta [backup_repo: snapshot_2021]"
,
„statusas“: 404

Išvada

Šiame vadove aptarėme, kaip sukurti „Elasticsearch“ momentines nuotraukas naudojant „Snapshot“ API. To, ko išmokote, turėtų pakakti, kad galėtumėte sukurti momentinių nuotraukų saugyklą, peržiūrėti momentinių nuotraukų saugyklas, kurti, peržiūrėti ir ištrinti momentines nuotraukas. Nors yra pritaikymų, kuriuos galite atlikti naudodamiesi API, žinių, esančių šiame vadove, turėtų būti pakankamai, kad galėtumėte pradėti.

Ačiū, kad skaitėte.

Geriausi „Linux“ žaidimų konsolių emuliatoriai
Šiame straipsnyje bus išvardyta populiari žaidimų konsolių emuliavimo programinė įranga, skirta „Linux“. „Emuliacija“ yra programinės įrangos suderina...
Geriausi „Linux“ žaidimų distristai 2021 m
„Linux“ operacinė sistema nuėjo ilgą kelią nuo originalios, paprastos, serverio išvaizdos. Ši OS pastaraisiais metais nepaprastai patobulėjo ir dabar ...
Kaip užfiksuoti ir perduoti savo žaidimų sesiją sistemoje „Linux“
Anksčiau žaidimai buvo laikomi tik pomėgiu, tačiau laikui bėgant lošimų pramonė labai augo technologijų ir žaidėjų skaičiaus atžvilgiu. Žaidimų audito...