Kami memiliki Postgres di sana, tetapi saya tidak tahu apa yang harus saya lakukan dengannya (c)

Ini adalah kutipan dari salah satu teman saya yang suatu ketika menghampiri saya dengan pertanyaan tentang Postgres. Kemudian kami memecahkan masalahnya dalam beberapa hari dan, sambil berterima kasih kepada saya, dia menambahkan: β€œSenang rasanya memiliki DBA yang akrab.”

Namun apa yang harus dilakukan jika Anda tidak mengetahui DBA? Pilihan jawabannya bisa cukup banyak, mulai dari mencari teman di antara teman hingga mempelajari sendiri soal tersebut. Tapi apa pun jawaban yang terlintas di benak Anda, saya punya kabar baik untuk Anda. Dalam mode uji coba, kami meluncurkan layanan rekomendasi untuk Postgres dan segala sesuatu di sekitarnya. Apa ini dan bagaimana kita bisa hidup seperti ini?

Mengapa ini semua?

Postgres setidaknya tidak mudah, dan terkadang sangat sulit. Tergantung pada tingkat keterlibatan dan tanggung jawab.

Mereka yang bekerja di bagian operasional perlu memastikan bahwa Postgres sebagai layanan berfungsi dengan baik dan stabil - memantau pemanfaatan sumber daya, ketersediaan, kecukupan konfigurasi, melakukan pembaruan secara berkala dan pemeriksaan kesehatan secara berkala. Mereka yang berada dalam pengembangan dan menulis aplikasi, secara umum, perlu memantau bagaimana aplikasi berinteraksi dengan database dan tidak menciptakan situasi darurat yang dapat merusak database. Jika seseorang kurang beruntung untuk menjadi pimpinan teknis/direktur teknis, maka penting baginya agar Postgres secara keseluruhan bekerja dengan andal, dapat diprediksi, dan tidak menimbulkan masalah, sementara itu disarankan untuk tidak mendalami Postgres terlalu lama. .

Dalam semua kasus ini, ada Anda dan Postgres. Untuk melayani Postgres dengan baik, Anda harus memiliki pemahaman yang baik dan cara kerjanya. Jika Postgres bukan merupakan spesialisasi langsung, maka Anda dapat menghabiskan cukup banyak waktu untuk mempelajarinya. Idealnya, ketika ada waktu dan keinginan, tidak selalu jelas harus mulai dari mana, bagaimana dan kemana harus bergerak.

Bahkan jika pemantauan diperkenalkan, yang secara teori seharusnya memfasilitasi pengoperasiannya, persoalan pengetahuan para ahli tetap terbuka. Untuk dapat membaca dan memahami grafik, Anda tetap harus memiliki pemahaman yang baik tentang cara kerja Postgres. Jika tidak, pemantauan apa pun akan berubah menjadi gambar sedih dan peringatan spam pada waktu acak dalam sehari.

Persenjataan baru saja dibuat untuk membuat Postgres lebih mudah digunakan. Layanan ini mengumpulkan dan menganalisis data tentang Postgres dan membuat rekomendasi tentang apa yang dapat ditingkatkan.

Tujuan utama dari layanan ini adalah untuk memberikan rekomendasi yang jelas yang memberikan gambaran tentang apa yang terjadi dan apa yang perlu dilakukan selanjutnya.

Bagi para profesional yang tidak memiliki pengetahuan ahli, rekomendasi tersebut memberikan titik awal untuk pelatihan lanjutan. Untuk spesialis tingkat lanjut, rekomendasi menunjukkan hal-hal yang harus diperhatikan. Dalam hal ini, Weaponry berperan sebagai asisten yang melakukan tugas rutin untuk menemukan masalah atau kekurangan yang memerlukan perhatian khusus. Persenjataan dapat dibandingkan dengan linter yang memeriksa Postgres dan menunjukkan kekurangannya.

Bagaimana keadaannya sekarang?

Pada saat ini, Persenjataan sedang dalam mode uji coba dan gratis, pendaftaran untuk sementara dibatasi. Bersama dengan beberapa sukarelawan, kami sedang menyelesaikan mesin rekomendasi di pangkalan-pangkalan pertempuran jarak dekat, mengidentifikasi positif palsu dan mengerjakan teks rekomendasi.

Omong-omong, rekomendasinya masih cukup jelas - mereka hanya mengatakan apa yang harus dilakukan dan bagaimana melakukannya, tanpa rincian tambahan - jadi pada awalnya Anda harus mengikuti tautan terkait atau Google. Pemeriksaan dan rekomendasi mencakup pengaturan sistem dan perangkat keras, pengaturan Postgres itu sendiri, skema internal, dan sumber daya yang digunakan. Masih cukup banyak hal yang perlu ditambahkan dalam rencana.

Dan tentunya kami mencari relawan yang siap mencoba layanan tersebut dan memberikan masukan. Kami juga punya demonstrasi, Anda bisa masuk dan melihatnya. Jika Anda memahami bahwa Anda memerlukan ini dan siap untuk mencobanya, kirimkan surat kepada kami di surat.

Diperbarui 2020-09-16. Mulai.

Setelah registrasi, pengguna diminta untuk membuat proyek - yang memungkinkan Anda menggabungkan instance database ke dalam grup. Setelah membuat proyek, pengguna diarahkan ke instruksi untuk mengonfigurasi dan menginstal agen. Singkatnya, Anda perlu membuat pengguna untuk agen, lalu mengunduh skrip instalasi agen dan menjalankannya. Dalam perintah shell tampilannya seperti ini:

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

Jika host memiliki pgbouncer, Anda juga perlu membuat pengguna untuk menghubungkan agen. Cara spesifik untuk mengkonfigurasi pengguna di pgbouncer bisa sangat bervariasi dan sangat bergantung pada konfigurasi yang digunakan. Secara umum, pengaturannya adalah menambahkan pengguna ke dalamnya stats_users file konfigurasi (biasanya pgbouncer.ini) dan menulis kata sandi (atau hashnya) ke file yang ditentukan dalam parameter auth_file. Jika Anda mengubah stats_users, Anda harus memulai ulang pgbouncer.

Skrip install.sh mengambil beberapa argumen wajib yang unik untuk setiap proyek, dan melalui variabel lingkungan menerima detail pengguna yang dibuat. Selanjutnya, skrip memulai agen dalam mode bootstrap - agen menyalin dirinya ke PATH, membuat konfigurasi dengan detail, unit systemd dan memulai sebagai layanan systemd.
Ini menyelesaikan instalasi. Dalam beberapa menit, instance database akan muncul di daftar host di antarmuka dan Anda sudah dapat melihat rekomendasi pertama. Namun poin pentingnya adalah banyak rekomendasi memerlukan akumulasi metrik dalam jumlah besar (setidaknya per hari).

Sumber: www.habr.com

Tambah komentar