Vi har Postgres der, men jeg vet ikke hva jeg skal gjøre med den(e)

Dette er et sitat fra en av vennene mine som en gang henvendte seg til meg med et spørsmål om Postgres. Så løste vi problemet hans på et par dager, og takket meg la han til: "Det er godt å ha en kjent DBA."

Men hva skal du gjøre hvis du ikke kan en DBA? Det kan være ganske mange svaralternativer, alt fra å lete etter venner blant venner til å studere spørsmålet selv. Men uansett hvilket svar du tenker på, så har jeg gode nyheter til deg. I testmodus lanserte vi en anbefalingstjeneste for Postgres og alt rundt det. Hva er dette og hvordan kom vi til å leve slik?

Hvorfor er alt dette?

Postgres er i hvert fall ikke lett, og noen ganger veldig vanskelig. Avhenger av graden av involvering og ansvar.

De som jobber i drift må sørge for at Postgres som en tjeneste fungerer riktig og stabilt – overvåke ressursutnyttelsen, tilgjengelighet, konfigurasjonens tilstrekkelighet, gjennomføre periodiske oppdateringer og regelmessige helsesjekker. De som er i utvikling og skriver applikasjoner, generelt sett, må overvåke hvordan applikasjonen samhandler med databasen og at den ikke skaper nødsituasjoner som kan ødelegge databasen. Hvis en person er så uheldig å være teknisk leder/teknisk direktør, så er det viktig for ham at Postgres som helhet fungerer pålitelig, forutsigbart og ikke skaper problemer, samtidig som det er lurt å ikke dykke dypt ned i Postgres over lang tid .

I alle disse tilfellene er det deg og Postgres. For å tjene Postgres godt, må du ha en god forståelse av det og forstå hvordan det fungerer. Hvis Postgres ikke er en direkte spesialisering, kan du bruke ganske mye tid på å lære det. Ideelt sett, når det er tid og lyst, er det ikke alltid klart hvor du skal begynne, hvordan og hvor du skal flytte.

Selv om overvåking innføres, som i teorien burde lette driften, forblir spørsmålet om ekspertkunnskap åpent. For å kunne lese og forstå grafer, må du fortsatt ha en god forståelse av hvordan Postgres fungerer. Ellers blir all overvåking til triste bilder og spam fra varsler til tilfeldige tider på dagen.

våpen nettopp laget for å gjøre Postgres enklere å bruke. Tjenesten samler inn og analyserer data om Postgres og gir anbefalinger om hva som kan forbedres.

Hovedmålet med tjenesten er å gi klare anbefalinger som gir en ide om hva som skjer og hva som må gjøres videre.

For fagfolk som ikke har ekspertkunnskap, gir anbefalingene et utgangspunkt for videreutdanning. For avanserte spesialister indikerer anbefalinger punkter som bør tas hensyn til. I denne forbindelse fungerer Weaponry som en assistent som utfører rutineoppgaver for å finne problemer eller mangler som krever spesiell oppmerksomhet. Våpen kan sammenlignes med en linter som sjekker Postgres og påpeker feil.

Hvordan er ting nå?

foreløpig våpen er i testmodus og gratis, registrering er midlertidig begrenset. Sammen med flere frivillige ferdigstiller vi anbefalingsmotoren på nærkampbaser, identifiserer falske positiver og jobber med teksten til anbefalingene.

Forresten, anbefalingene er fortsatt ganske enkle - de sier bare hva du skal gjøre og hvordan du gjør det, uten ytterligere detaljer - så først må du følge de relaterte koblingene eller Google det. Kontroller og anbefalinger dekker system- og maskinvareinnstillinger, innstillinger for Postgres selv, det interne skjemaet og ressursene som brukes. Det er fortsatt ganske mange ting som må legges til i planene.

Og selvfølgelig søker vi etter frivillige som er klare til å prøve tjenesten og gi tilbakemeldinger. Vi har også demo, du kan komme inn og ta en titt. Hvis du forstår at du trenger dette og er klar til å prøve, så skriv til oss på post.

Oppdatert 2020-09-16. Starter.

Etter registreringen blir brukeren bedt om å opprette et prosjekt - som lar deg kombinere databaseforekomster i grupper. Etter å ha opprettet et prosjekt, ledes brukeren til instruksjoner for konfigurering og installasjon av agenten. I et nøtteskall må du opprette brukere for agenten, deretter laste ned agentinstallasjonsskriptet og kjøre det. I skallkommandoer ser det omtrent slik ut:

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

Hvis verten har pgbouncer, må du også opprette en bruker for å koble til agenten. Den spesifikke måten å konfigurere en bruker på i pgbouncer kan være veldig variabel og svært avhengig av konfigurasjonen som brukes. Generelt sett handler oppsettet om å legge til en bruker stats_users konfigurasjonsfil (vanligvis pgbouncer.ini) og skrive passordet (eller dets hash) til filen spesifisert i parameteren auth_file. Hvis du endrer stats_users, må du starte pgbouncer på nytt.

Install.sh-skriptet tar et par nødvendige argumenter som er unike for hvert prosjekt, og gjennom miljøvariabler aksepterer det detaljene til de opprettede brukerne. Deretter starter skriptet agenten i bootstrap-modus - agenten kopierer seg selv til PATH, lager en konfigurasjon med detaljer, en systemd-enhet og starter som en systemd-tjeneste.
Dette fullfører installasjonen. I løpet av et par minutter vil databaseforekomsten vises i listen over verter i grensesnittet, og du kan allerede se på de første anbefalingene. Men et viktig poeng er at mange anbefalinger krever et stort antall akkumulerte beregninger (minst per dag).

Kilde: www.habr.com

Legg til en kommentar