Tunayo Postgres huko, lakini sijui la kufanya nayo (c)

Hii ni nukuu kutoka kwa rafiki yangu mmoja ambaye wakati fulani alinijia na swali kuhusu Postgres. Kisha tulitatua tatizo lake katika siku chache na, akinishukuru, akaongeza: β€œNi vizuri kuwa na DBA inayojulikana.”

Lakini nini cha kufanya ikiwa hujui DBA? Kunaweza kuwa na chaguzi nyingi za majibu, kuanzia kutafuta marafiki kati ya marafiki zako hadi kusoma swali mwenyewe. Lakini jibu lolote linalokuja akilini mwako, nina habari njema kwako. Katika hali ya majaribio, tulizindua huduma ya mapendekezo kwa Postgres na kila kitu kinachoizunguka. Hii ni nini na tulikujaje kuishi hivi?

Kwa nini haya yote?

Postgres ni angalau si rahisi, na wakati mwingine ni vigumu sana. Inategemea kiwango cha ushiriki na uwajibikaji.

Wale wanaofanya kazi katika shughuli wanahitaji kuhakikisha kuwa Postgres kama huduma inafanya kazi ipasavyo na kwa uthabiti - kufuatilia matumizi ya rasilimali, upatikanaji, utoshelevu wa usanidi, mara kwa mara kufanya masasisho na ukaguzi wa mara kwa mara wa afya. Wale ambao wako katika uundaji na kuandika programu, kwa maneno ya jumla, wanahitaji kufuatilia jinsi programu inavyoingiliana na hifadhidata na kwamba haileti hali za dharura ambazo zinaweza kuharibu hifadhidata. Ikiwa mtu hana bahati ya kuwa kiongozi wa kiufundi/mkurugenzi wa kiufundi, basi ni muhimu kwake Postgres kwa ujumla kufanya kazi kwa uhakika, kwa kutabirika na haileti shida, wakati inashauriwa kutozama kwa undani katika Postgres kwa muda mrefu. .

Katika mojawapo ya visa hivi, kuna wewe na Postgres. Ili kuhudumia Postgres vizuri, unahitaji kuwa na ufahamu mzuri juu yake na kuelewa jinsi inavyofanya kazi. Ikiwa Postgres sio utaalam wa moja kwa moja, basi unaweza kutumia wakati mwingi kuisoma. Kwa hakika, wakati kuna wakati na tamaa, si mara zote wazi wapi kuanza, jinsi gani na wapi kuhamia.

Hata kama ufuatiliaji utaanzishwa, ambao kwa nadharia unapaswa kuwezesha uendeshaji, suala la ujuzi wa kitaalam bado liko wazi. Ili kuweza kusoma na kuelewa grafu, bado unahitaji kuwa na ufahamu mzuri wa jinsi Postgres inavyofanya kazi. Vinginevyo, ufuatiliaji wowote unageuka kuwa picha za kusikitisha na barua taka kutoka kwa arifa kwa nyakati za nasibu za siku.

Silaha imefanywa tu kufanya Postgres iwe rahisi kutumia. Huduma hukusanya na kuchambua data kuhusu Postgres na kutoa mapendekezo kuhusu kile kinachoweza kuboreshwa.

Kusudi kuu la huduma ni kutoa mapendekezo wazi ambayo hutoa wazo la kile kinachotokea na kile kinachohitajika kufanywa baadaye.

Kwa wataalamu ambao hawana ujuzi wa wataalam, mapendekezo hutoa hatua ya kuanzia kwa mafunzo ya juu. Kwa wataalam wa hali ya juu, mapendekezo yanaonyesha vidokezo ambavyo vinapaswa kuzingatiwa. Katika suala hili, Silaha hufanya kama msaidizi ambaye hufanya kazi za kawaida kupata shida au mapungufu ambayo yanahitaji umakini maalum. Silaha inaweza kulinganishwa na linter ambayo hukagua Postgres na kuonyesha dosari.

Mambo vipi sasa?

Wakati huu, Silaha iko katika hali ya majaribio na bila malipo, usajili ni mdogo kwa muda. Pamoja na wafanyakazi kadhaa wa kujitolea, tunakamilisha injini ya mapendekezo katika vituo vya karibu vya mapigano, kutambua chanya za uongo na kufanyia kazi maandishi ya mapendekezo.

Kwa njia, mapendekezo bado ni ya moja kwa moja - wanasema tu nini cha kufanya na jinsi ya kuifanya, bila maelezo ya ziada - kwa hivyo mwanzoni utalazimika kufuata viungo vinavyohusiana au Google. Hundi na mapendekezo hufunika mipangilio ya mfumo na maunzi, mipangilio ya Postgres yenyewe, taratibu za ndani na rasilimali zinazotumiwa. Bado kuna mambo mengi ambayo yanahitaji kuongezwa katika mipango.

Na bila shaka, tunatafuta watu wa kujitolea ambao wako tayari kujaribu huduma na kutoa maoni. Sisi pia tuna demo, unaweza kuingia na kuangalia. Ikiwa unaelewa kuwa unahitaji hii na uko tayari kujaribu, basi tuandikie kwa barua.

Ilisasishwa 2020-09-16. Kuanza.

Baada ya usajili, mtumiaji anaombwa kuunda mradi - ambayo inakuwezesha kuchanganya matukio ya database katika vikundi. Baada ya kuunda mradi, mtumiaji anaelekezwa kwa maagizo ya kusanidi na kusakinisha wakala. Kwa kifupi, unahitaji kuunda watumiaji kwa wakala, kisha pakua hati ya usakinishaji wa wakala na kuiendesha. Katika amri za ganda inaonekana kitu kama hiki:

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

Ikiwa mwenyeji ana pgbouncer, basi utahitaji pia kuunda mtumiaji kuunganisha wakala. Njia mahususi ya kusanidi mtumiaji katika pgbouncer inaweza kubadilika sana na kutegemea sana usanidi unaotumiwa. Kwa ujumla, usanidi unakuja kwa kuongeza mtumiaji takwimu_watumiaji faili ya usanidi (kawaida pgbouncer.ini) na kuandika nenosiri (au hashi yake) kwa faili iliyoainishwa kwenye parameta auth_faili. Ukibadilisha stats_users, utahitaji kuanzisha upya pgbouncer.

Hati ya install.sh inachukua hoja kadhaa zinazohitajika ambazo ni za kipekee kwa kila mradi, na kupitia vigeu vya mazingira hukubali maelezo ya watumiaji walioundwa. Ifuatayo, hati huanzisha wakala katika hali ya bootstrap - wakala hujinakili kwa PATH, huunda usanidi na maelezo, kitengo cha mfumo na huanza kama huduma ya mfumo.
Hii inakamilisha usakinishaji. Ndani ya dakika chache, mfano wa hifadhidata utaonekana kwenye orodha ya wapangishaji kwenye kiolesura na unaweza tayari kuangalia mapendekezo ya kwanza. Lakini jambo muhimu ni kwamba mapendekezo mengi yanahitaji idadi kubwa ya metrics kusanyiko (angalau kwa siku).

Chanzo: mapenzi.com

Kuongeza maoni