Imamo Postgres tamo, ali ne znam što da radim s njim (c)

Ovo je citat jednog od mojih prijatelja koji mi je jednom davno prišao s pitanjem o Postgresu. Zatim smo riješili njegov problem u nekoliko dana i, zahvalivši mi, dodao je: "Dobro je imati poznatog DBA."

Ali što učiniti ako ne poznajete DBA? Postoji mnogo opcija za odgovor, od traženja prijatelja među prijateljima do samog proučavanja pitanja. Ali koji god vam odgovor padne na pamet, imam dobre vijesti za vas. U testnom smo načinu pokrenuli uslugu preporuke za Postgres i sve oko njega. Što je ovo i kako smo došli ovako živjeti?

Zašto je sve ovo?

Postgres barem nije lak, a ponekad i vrlo težak. Ovisi o stupnju uključenosti i odgovornosti.

Oni koji rade u operativi trebaju osigurati da Postgres kao usluga radi ispravno i stabilno - pratiti iskorištenost resursa, dostupnost, adekvatnost konfiguracije, povremeno provoditi ažuriranja i redovite provjere ispravnosti. Oni koji su u razvoju i pišu aplikacije, općenito govoreći, trebaju pratiti kako aplikacija komunicira s bazom podataka i da ne stvara izvanredne situacije koje bi mogle srušiti bazu podataka. Ako osoba nema tu sreću da bude tehnički voditelj/tehnički direktor, onda joj je bitno da Postgres u cjelini radi pouzdano, predvidljivo i da ne stvara probleme, dok je preporučljivo ne ulaziti duboko u Postgres na duže vrijeme .

U svakom od ovih slučajeva, tu ste vi i Postgres. Da biste dobro služili Postgresu, morate ga dobro razumjeti i razumjeti kako funkcionira. Ako Postgres nije izravna specijalizacija, tada možete potrošiti dosta vremena učeći ga. U idealnom slučaju, kada postoji vrijeme i želja, nije uvijek jasno odakle početi, kako i gdje se kretati.

Čak i ako se uvede monitoring, koji bi teoretski trebao olakšati rad, pitanje stručnosti ostaje otvoreno. Da biste mogli čitati i razumjeti grafikone, ipak morate dobro razumjeti kako Postgres funkcionira. U suprotnom, svako praćenje pretvara se u tužne slike i spam od upozorenja u nasumično doba dana.

Oružje upravo napravljen kako bi Postgres bio lakši za korištenje. Usluga prikuplja i analizira podatke o Postgresu i daje preporuke o tome što se može poboljšati.

Glavni cilj usluge je pružiti jasne preporuke koje daju ideju o tome što se događa i što treba učiniti sljedeće.

Za stručnjake koji nemaju stručno znanje, preporuke predstavljaju polazište za naprednu obuku. Za napredne stručnjake preporuke ukazuju na točke na koje treba obratiti pozornost. U tom pogledu Weaponry djeluje kao pomoćnik koji obavlja rutinske zadatke kako bi pronašao probleme ili nedostatke koji zahtijevaju posebnu pozornost. Oružje se može usporediti s linterom koji provjerava Postgres i ukazuje na nedostatke.

Kako sada stoje stvari?

U ovom trenutku Oružje je u testnom načinu rada i besplatan je, registracija je privremeno ograničena. Zajedno s nekoliko volontera dovršavamo mehanizam za preporuke u bazama blizu borbe, identificiramo lažne rezultate i radimo na tekstu preporuka.

Usput, preporuke su još uvijek prilično jednostavne - samo govore što i kako učiniti, bez dodatnih detalja - tako da ćete prvo morati slijediti povezane poveznice ili guglati. Provjere i preporuke pokrivaju postavke sustava i hardvera, postavke samog Postgresa, unutarnju shemu i korištene resurse. Ima još dosta stvari koje treba dodati u planove.

I naravno, tražimo volontere koji su spremni isprobati uslugu i dati povratne informacije. Također imamo demo, možete ući i pogledati. Ako razumijete da vam je ovo potrebno i spremni ste pokušati, pišite nam na pošta.

Ažurirano 2020. rujna 09. Početak rada.

Nakon registracije, od korisnika se traži da stvori projekt - koji vam omogućuje kombiniranje instanci baze podataka u grupe. Nakon izrade projekta, korisnik se upućuje na upute za konfiguriranje i instaliranje agenta. Ukratko, trebate stvoriti korisnike za agenta, zatim preuzeti instalacijsku skriptu agenta i pokrenuti je. U naredbama ljuske to izgleda otprilike ovako:

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

Ako host ima pgbouncer, tada ćete također morati stvoriti korisnika za povezivanje agenta. Specifičan način konfiguriranja korisnika u pgbounceru može biti vrlo promjenjiv i jako ovisi o korištenoj konfiguraciji. Općenito, postavljanje se svodi na dodavanje korisnika u statistika_korisnici konfiguracijska datoteka (obično pgbouncer.ini) i pisanje lozinke (ili njezinog hasha) u datoteku navedenu u parametru aut_datoteka. Ako promijenite stats_users, morat ćete ponovno pokrenuti pgbouncer.

Skripta install.sh uzima nekoliko potrebnih argumenata koji su jedinstveni za svaki projekt, a kroz varijable okruženja prihvaća pojedinosti o kreiranim korisnicima. Zatim, skripta pokreće agenta u načinu pokretanja - agent se kopira u PATH, stvara konfiguraciju s detaljima, jedinicu systemd i pokreće se kao usluga systemd.
Ovo dovršava instalaciju. U roku od nekoliko minuta, instanca baze podataka pojavit će se na popisu hostova u sučelju i već možete pogledati prve preporuke. No važno je da mnoge preporuke zahtijevaju veliki broj akumuliranih metrika (barem po danu).

Izvor: www.habr.com

Dodajte komentar