Мо дар он ҷо Postgres дорем, аммо ман намедонам бо он чӣ кор кунам (c)

Ин иқтибос аз яке аз дӯстони ман аст, ки боре ба ман бо савол дар бораи Postgres муроҷиат кард. Пас аз чанд рӯз мо мушкили ӯро ҳал кардем ва ба ман ташаккур гуфта, илова кард: "Хуб аст, ки DBA-и шинос дошта бошед."

Аммо чӣ бояд кард, агар шумо DBA-ро надонед? Варианти ҷавоб метавонад хеле зиёд бошад, аз ҷустуҷӯи дӯстони худ то омӯзиши худи савол. Аммо ҳар ҷавобе, ки ба зеҳнат меояд, барои шумо хабари хуш дорам. Дар ҳолати санҷиш, мо хидмати тавсияро барои Postgres ва ҳама чизҳои атрофи он оғоз кардем. Ин чист ва мо чӣ гуна ба ин гуна зиндагӣ омадем?

Чаро ин ҳама?

Postgres ҳадди аққал осон нест ва баъзан хеле душвор аст. Дараҷаи ҷалб ва масъулият вобаста аст.

Онҳое, ки дар амалиёт кор мекунанд, бояд боварӣ ҳосил кунанд, ки Postgres ҳамчун хидмат дуруст ва устувор кор кунад - истифодаи захираҳо, мавҷудият, мувофиқати конфигуратсияро назорат кунад, давра ба давра навсозӣ ва санҷишҳои мунтазами саломатиро анҷом диҳад. Онҳое, ки дар таҳия ва навиштани барномаҳо ҳастанд, ба таври умум, бояд назорат кунанд, ки чӣ гуна барнома бо пойгоҳи додаҳо ҳамкорӣ мекунад ва он ҳолатҳои фавқулоддаеро эҷод намекунад, ки метавонад пойгоҳи додаҳоро вайрон кунад. Агар шахсе, ки роҳбари техникӣ/директори техникӣ бошад, барои ӯ муҳим аст, ки Postgres дар маҷмӯъ боэътимод, пешгӯинашаванда кор кунад ва мушкилот эҷод накунад, дар ҳоле ки тавсия дода мешавад, ки дар муддати тӯлонӣ ба Postgres амиқ ғарқ нашавед. .

Дар яке аз ин ҳолатҳо, шумо ва Postgres ҳастанд. Барои ба Postgres хуб хидмат кардан, шумо бояд онро хуб фаҳмед ва фаҳмед, ки он чӣ гуна кор мекунад. Агар Postgres тахассуси мустақим набошад, пас шумо метавонед вақти зиёдеро барои омӯзиши он сарф кунед. Идеалӣ, вақте ки вақт ва хоҳиш вуҷуд дорад, на ҳама вақт маълум аст, ки аз куҷо оғоз кардан, чӣ гуна ва ба куҷо ҳаракат кардан лозим аст.

Ҳатто агар мониторинг ҷорӣ карда шавад, ки он аз ҷиҳати назариявӣ бояд ба фаъолият мусоидат кунад, масъалаи дониши коршиносон боз боқӣ мемонад. Барои хондан ва фаҳмидани графикҳо, шумо ба ҳар ҳол бояд фаҳмиши хубе дошта бошед, ки чӣ тавр Postgres кор мекунад. Дар акси ҳол, ҳама гуна мониторинг ба тасвирҳои ғамангез ва спам аз огоҳиҳо дар вақтҳои тасодуфии рӯз табдил меёбад.

Силоҳ танҳо барои осон кардани истифодаи Postgres сохта шудааст. Хизматрасонӣ маълумотро дар бораи Postgres ҷамъоварӣ ва таҳлил мекунад ва тавсияҳо медиҳад, ки чӣ беҳтар кардан мумкин аст.

Мақсади асосии хидмат пешниҳод кардани тавсияҳои возеҳест, ки дар бораи чӣ рӯй дода истодааст ва дар оянда чӣ кор кардан лозим аст.

Барои мутахассисоне, ки дониши коршиносӣ надоранд, тавсияҳо барои такмили ихтисос нуқтаи ибтидоӣ медиҳанд. Барои мутахассисони пешрафта, тавсияҳо нуктаҳоеро нишон медиҳанд, ки бояд ба онҳо таваҷҷӯҳ зоҳир карда шаванд. Дар ин робита, Weaponry ҳамчун ёваре амал мекунад, ки вазифаҳои муқаррариро барои дарёфти мушкилот ё камбудиҳое иҷро мекунад, ки диққати махсусро талаб мекунанд. Силоҳро метавон бо линтер муқоиса кард, ки Postgres-ро тафтиш мекунад ва камбудиҳоро нишон медиҳад.

Ҳоло корҳо чӣ гунаанд?

Дар айни замон Силоҳ дар реҷаи тестӣ ва ройгон аст, сабти ном муваққатан маҳдуд аст. Якҷоя бо якчанд ихтиёриён, мо муҳаррики тавсияро дар пойгоҳҳои наздик ба ҷанг ба итмом мерасонем, мусбатҳои бардурӯғро муайян мекунем ва дар матни тавсияҳо кор мекунем.

Дар омади гап, тавсияҳо ҳоло ҳам хеле соддаанд - онҳо танҳо мегӯянд, ки чӣ бояд кард ва чӣ тавр ин корро кардан лозим аст, бидуни тафсилоти иловагӣ - аз ин рӯ, дар аввал шумо бояд истинодҳои алоқамандро пайгирӣ кунед ё онро Google кунед. Санҷишҳо ва тавсияҳо танзимоти система ва сахтафзор, танзимоти худи Postgres, схемаи дохилӣ ва захираҳои истифодашударо дар бар мегиранд. Дар планхо хануз бисьёр чизхое хастанд, ки бояд илова карда шаванд.

Ва албатта, мо ихтиёриёнро меҷӯем, ки омодаанд хидматро санҷанд ва фикру мулоҳиза диҳанд. Мо хам дорем намоишӣ, шумо метавонед ворид шавед ва тамошо кунед. Агар шумо фаҳмед, ки ба шумо ин лозим аст ва омодаед, ки кӯшиш кунед, пас ба мо нависед почта.

Таҷдидшуда 2020-09-16. Сар кардани кор.

Пас аз бақайдгирӣ, аз корбар хоҳиш карда мешавад, ки лоиҳа эҷод кунад - он ба шумо имкон медиҳад, ки мисолҳои пойгоҳи додаҳоро ба гурӯҳҳо муттаҳид кунед. Пас аз сохтани лоиҳа, корбар ба дастурҳо оид ба танзим ва насби агент равона карда мешавад. Хулоса, шумо бояд барои агент корбар эҷод кунед, пас скрипти насби агентро зеркашӣ кунед ва онро иҷро кунед. Дар фармонҳои shell он чунин менамояд:

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

Агар мизбон pgbouncer дошта бошад, пас шумо инчунин бояд корбареро барои пайваст кардани агент эҷод кунед. Тарзи мушаххаси конфигуратсияи корбар дар pgbouncer метавонад хеле тағйирёбанда бошад ва аз конфигуратсияи истифодашуда вобастагии зиёд дошта бошад. Дар маҷмӯъ, танзимот ба илова кардани корбар меояд stats_users файли конфигуратсия (одатан pgbouncer.ini) ва навиштани парол (ё хеши он) ба файли дар параметр нишондодашуда auth_file. Агар шумо stats_users-ро иваз кунед, ба шумо лозим меояд, ки pgbouncer-ро аз нав оғоз кунед.

Скрипти install.sh якчанд далелҳои заруриро мегирад, ки барои ҳар як лоиҳа беназиранд ва тавассути тағирёбандаҳои муҳити зист он тафсилоти корбарони эҷодшударо қабул мекунад. Баъдан, скрипт агентро дар реҷаи bootstrap оғоз мекунад - агент худро ба PATH нусхабардорӣ мекунад, конфигуратсияро бо тафсилот, воҳиди системавӣ эҷод мекунад ва ҳамчун хидмати системавӣ оғоз мекунад.
Ин насбро анҷом медиҳад. Дар тӯли якчанд дақиқа, намунаи пойгоҳи додаҳо дар рӯйхати ҳостҳо дар интерфейс пайдо мешавад ва шумо аллакай тавсияҳои аввалро дида метавонед. Аммо як нуктаи муҳим ин аст, ки бисёр тавсияҳо миқдори зиёди ченакҳои ҷамъшударо талаб мекунанд (ҳадди ақал дар як рӯз).

Манбаъ: will.com

Илова Эзоҳ