See on tsitaat ühelt minu tuttavalt, kes kunagi küsis minult Postgresi kohta. Siis lahendasime tema probleemi paariga päeval ja pärast tänades lisas ta: „Hea, kui on tuttav DBA.”
Aga mis teha, kui tuttavat DBA ei ole? Vastuseid võib olla palju, alates sõprade seas otsimisest kuni küsimuse ise lahendamiseni. Kuid ükskõik milline vastus teile pähe tuleb, mul on teile hea uudis. Testrežiimis oleme käivitanud Postgresi ja sellega seotud teenuste soovituste süsteemi. Mis see on ja kuidas me selleni jõudsime?
Milleks see kõik?
Postgres ei ole vähemalt lihtsalt, vaid mõnikord isegi väga keeruline. See sõltub kaasamise ja vastutuse tasemest.
Operations'is inimestel on oluline jälgida, et Postgres teenus toimiks tõrgeteta ja stabiilselt — jälgida ressursside kasutust, saadavust, konfiguratsiooni sobivust, perioodiliselt teostada uuendusi ja regulaarset tervisekontrolli. Arendajatel, kes kirjutavad rakendusi, on aga oluline jälgida, kuidas rakendus suhtleb andmebaasiga ja tagada, et see ei tekitaks kriitilisi olukordi, mis võiksid andmebaasi kokku kukutada. Kui inimesel on nii halb vedanud, et ta on tehniline juht/tehniline direktor, siis on tema jaoks oluline, et Postgres töötaks usaldusväärselt, etteennustatavalt ja ei tekitaks probleeme, samas soovitatakse endal Postgres'sse sügavalt ja kauaks mitte sukelduda.
Igasugustes olukordades oled sina ja Postgres. Et Postgres't hästi hallata, tuleb selle korralikult mõista ja teada, kuidas see töötab. Kui Postgres ei ole otse teie spetsialiseerumine, võib selle õppimine võtta palju aega. Ideaalses olukorras, kus on aega ja soovi, aga ei pruugi alati olla selge, kust alustada, kuidas ja kuhu liikuda.
Isegi kui kasutada jälgimist, mis peaks ideaalis hõlbustama toimimist, jääb ekspertteadmiste küsimus avatuks. Selleks, et osata lugeda ja mõista graafikuid, on endiselt vajalik hea arusaam sellest, kuidas Postgres töötab. Vastasel juhul muutub mis tahes jälgimine kurvaks pildiks ja spämmiks häiretest juhuslikel päevakelladel.
on loodud selleks, et hõlbustada Postgres'i toimimist. Teenus kogub ja analüüsib andmeid Postgres'e kohta ning annab soovitusi, kuidas seda parandada.
Teenuse peamine eesmärk on anda selgeid soovitusi, mis annavad arusaama sellest, mis toimub ja mida edasi teha.
Ekspertidele, kellel ei ole ekspertteadmisi, annavad soovitused alguspunkti kvalifikatsiooni tõstmiseks. Edasijõudnud spetsialistidele juhivad soovitused tähelepanu punktidele, millele tasub keskenduda. Sellega seoses toimib Weaponry abimehena, mis täidab rutiinseid ülesandeid probleemide või puuduste otsimisel, mis vajavad eraldi tähelepanu. Weaponry’t võib võrrelda linters'i, mis kontrollib Postgres’e ja osutab puudustele.
Kuidas asjad praegu on
Käesoleval hetkel on testrežiimis ja tasuta, registreerimine on hetkel ajutiselt piiratud. Koostöös mitme vabatahtlikuga arendame soovituste mootori, tuvastame valehäireid ja töötame soovituste tekstiga.
Praegu on soovitused üsna otsekohesed — need räägivad lihtsalt, mida ja kuidas teha, ilma lisateavet andmata — seega tuleb esialgu minna edasi seonduvatele linkidele või natuke guugeldada. Kontrollid ja soovitused katab süsteemi ja seadmete seaded, samuti Postgresi seaded, sisemine skeem ja kasutatavad ressursid. Plaanime lisada veel palju asju.
Ja muidugi otsime vabatahtlikke, kes on valmis teenust proovima ja tagasisidet andma. Meil on ka , saate sisse logida ja vaadata. Kui saite aru, et see on see, mida vajate ja olete valmis proovima, kirjutage meile .
Uuendatud 2020-09-16. Alustamine.
Registreerimise järel palutakse kasutajal luua projekt, mis võimaldab ühendada andmebaasi instantsid rühmadesse. Projekti loomise järel suunatakse kasutaja seadistamise ja agendi installimise juhendisse. Lühidalt öeldes tuleb luua agendi jaoks kasutajad, seejärel laadida alla agendi installiskeem ja käivitada see. Shelli käskudes näeb see välja umbes nii:
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-da23f72c14a5Kui hostis on pgbouncer, tuleb agendi ühendamiseks luua ka kasutaja. Kasutaja seadistamise konkreetne meetod pgbounceris võib olla väga varieeruv ja sõltub suuresti kasutatavast konfiguratsioonist. Üldiselt hõlmab seadistus kasutaja lisamist stats_users konfiguratsioonifaili (tavaliselt on see pgbouncer.ini) ja parooli (või selle hash'i) määramist failis, mille määrab parameeter auth_file. Stats_users'i muutmisel on vajalik pgbounceri taaskäivitamine.
Install.sh skript nõuab paari kohustuslikku argumenti, mis on igale projektile unikaalsed, ja keskkonnamuutujate kaudu accepts loodud kasutajate andmeid. Seejärel skript käivitab agendi bootstrap-režiimis — agent kopeerib end PATH-i, loob konfiguratsiooni koos andmetega, systemd üksuse ja käivitub nagu systemd teenus.
Installatsioon on nüüd lõpetatud. Paari minuti pärast peaks DB instants liituma hostide loendiga liideses ja saate juba vaadata esimesi soovitusi. Oluline märkus on, et paljud soovitused nõuavad suurt hulka kogutud mõõdikuid (vähemalt ühe päeva jooksul).
Allikas: habr.com
