Tam imamo Postgres, pa ne vem, kaj bi z njim (c)

To je citat enega od mojih prijateljev, ki se je nekoč obrnil name z vprašanjem o Postgresu. Nato smo v nekaj dneh rešili njegov problem in v zahvalo je dodal: "Dobro je imeti poznanega DBA."

Toda kaj storiti, če ne poznate DBA? Možnosti odgovorov je lahko veliko, od iskanja prijateljev med prijatelji do tega, da sami preučite vprašanje. Toda ne glede na odgovor, ki vam pride na misel, imam za vas dobro novico. V testnem načinu smo lansirali storitev priporočil za Postgres in vse okoli njega. Kaj je to in kako smo tako živeli?

Zakaj je vse to?

Postgres vsaj ni enostaven, včasih pa zelo težak. Odvisno od stopnje vpletenosti in odgovornosti.

Tisti, ki delajo v operativi, morajo zagotoviti pravilno in stabilno delovanje Postgresa kot storitve – spremljati izkoriščenost virov, razpoložljivost, ustreznost konfiguracije, občasno izvajati posodobitve in redne zdravstvene preglede. Tisti, ki so v razvoju in pišejo aplikacije, morajo na splošno spremljati, kako aplikacija sodeluje z bazo podatkov in da ne ustvarja izrednih situacij, ki bi lahko uničile bazo podatkov. Če človek nima sreče, da bi bil tehnični vodja/tehnični direktor, potem je zanj pomembno, da Postgres kot celota deluje zanesljivo, predvidljivo in ne povzroča težav, priporočljivo pa je, da se v Postgres ne poglablja dlje časa. .

V vsakem od teh primerov ste tu vi in ​​Postgres. Če želite dobro služiti Postgresu, ga morate dobro razumeti in razumeti, kako deluje. Če Postgres ni neposredna specializacija, potem lahko porabite precej časa za učenje. V idealnem primeru, ko je čas in želja, ni vedno jasno, kje začeti, kako in kam se premakniti.

Tudi če se uvede monitoring, ki naj bi teoretično olajšal delovanje, ostaja vprašanje strokovnega znanja odprto. Če želite brati in razumeti grafe, morate še vedno dobro razumeti, kako deluje Postgres. V nasprotnem primeru se vsako spremljanje spremeni v žalostne slike in spam iz opozoril ob naključnih urah dneva.

Orožje pravkar narejeno za lažjo uporabo Postgresa. Storitev zbira in analizira podatke o Postgresu ter daje priporočila, kaj bi lahko izboljšali.

Glavni cilj storitve je zagotoviti jasna priporočila, ki dajejo idejo o tem, kaj se dogaja in kaj je treba narediti naslednje.

Za strokovnjake, ki nimajo strokovnega znanja, so priporočila izhodišče za napredno usposabljanje. Za napredne strokovnjake priporočila navajajo točke, na katere je treba posvetiti pozornost. V tem pogledu Weaponry deluje kot pomočnik, ki opravlja rutinske naloge za iskanje težav ali pomanjkljivosti, ki zahtevajo posebno pozornost. Orožje lahko primerjamo z linterjem, ki preverja Postgres in opozarja na napake.

Kako je zdaj?

V tem trenutku, Orožje je v testnem načinu in je brezplačen, registracija je začasno omejena. Skupaj z več prostovoljci dokončujemo mehanizem za priporočila v skoraj bojnih bazah, identificiramo lažne pozitivne rezultate in delamo na besedilu priporočil.

Mimogrede, priporočila so še vedno precej enostavna - povedo samo, kaj in kako storiti, brez dodatnih podrobnosti - zato boste najprej morali slediti povezanim povezavam ali poguglati. Preverjanja in priporočila zajemajo nastavitve sistema in strojne opreme, nastavitve samega Postgresa, notranjo shemo in uporabljene vire. V načrtih je še kar nekaj stvari, ki jih je treba dodati.

In seveda iščemo prostovoljce, ki so pripravljeni preizkusiti storitev in dati povratne informacije. Tudi imamo demo, lahko prideš pogledat. Če razumete, da to potrebujete in ste pripravljeni poskusiti, nam pišite na pošta.

Posodobljeno 2020-09-16. Začetek.

Po registraciji je uporabnik pozvan, da ustvari projekt - kar vam omogoča združevanje primerkov baze podatkov v skupine. Po izdelavi projekta je uporabnik usmerjen na navodila za konfiguracijo in namestitev agenta. Na kratko, ustvariti morate uporabnike za agenta, nato prenesti namestitveni skript agenta in ga zagnati. V lupinskih ukazih je videti nekako takole:

psql -c "CREATE ROLE pgscv WITH LOGIN SUPERUSER PASSWORD 'A7H8Wz6XFMh21pwA'"
export PGSCV_PG_PASSWORD=A7H8Wz6XFMh21pwA
curl -s https://dist.weaponry.io/pgscv/install.sh |sudo -E sh -s - 1 6ada7a04-a798-4415-9427-da23f72c14a5

Če ima gostitelj pgbouncer, boste morali ustvariti tudi uporabnika za povezavo agenta. Poseben način konfiguriranja uporabnika v pgbouncer je lahko zelo spremenljiv in zelo odvisen od uporabljene konfiguracije. Na splošno se nastavitev zmanjša na dodajanje uporabnika v stats_users konfiguracijsko datoteko (običajno pgbouncer.ini) in pisanje gesla (ali njegove zgoščene vrednosti) v datoteko, navedeno v parametru auth_file. Če spremenite stats_users, boste morali znova zagnati pgbouncer.

Skript install.sh sprejme nekaj zahtevanih argumentov, ki so edinstveni za vsak projekt, in prek spremenljivk okolja sprejme podrobnosti ustvarjenih uporabnikov. Nato skript zažene agenta v zagonskem načinu - agent se prekopira v PATH, ustvari konfiguracijo s podrobnostmi, enoto systemd in se zažene kot storitev systemd.
S tem je namestitev končana. V nekaj minutah se bo instanca baze podatkov pojavila na seznamu gostiteljev v vmesniku in že si lahko ogledate prva priporočila. Toda pomembna točka je, da veliko priporočil zahteva veliko število zbranih meritev (vsaj na dan).

Vir: www.habr.com

Dodaj komentar