Wydano projekt temBoard 8.0, który rozwija interfejs sieciowy do zdalnego sterowania, monitorowania, konfiguracji i optymalizacji PostgreSQL DBMS. Produkt zawiera lekkiego agenta instalowanego na każdym serwerze PostgreSQL oraz komponent serwera, który centralnie zarządza agentami i zbiera statystyki do monitorowania. Kod jest napisany w Pythonie i rozpowszechniany na darmowej licencji PostgreSQL.
Główne cechy temBoard:
- Możliwość zarządzania setkami instancji PostgreSQL DBMS za pośrednictwem jednego scentralizowanego interfejsu internetowego.
- Obecność ekranów informacyjnych do oceny zarówno ogólnego stanu wszystkich DBMS, jak i bardziej szczegółowej oceny każdej instancji.
- Monitorowanie stanu DBMS przy użyciu różnych metryk.
- Wsparcie dla zarządzania aktualnie aktywnymi sesjami z DBMS.
- Śledzenie operacji czyszczenia (VACUUM) tabel i indeksów.
- Śledzenie powolnych zapytań do bazy danych.
- Interfejs do optymalizacji ustawień PostgreSQL.
W nowej wersji:
- Uwierzytelnianie i organizacja kanału komunikacji między interfejsem kontrolnym a agentami została przeprojektowana. Zmiany doprowadziły do uproszczenia rozmieszczenia agentów i zwiększenia bezpieczeństwa kanału komunikacji z nimi. Wszystkie żądania kierowane do agentów są teraz dodatkowo podpisywane cyfrowo przy użyciu asymetrycznego szyfrowania kluczem publicznym, a interfejs działa jako dostawca tożsamości dla agentów. Uwierzytelnianie przy użyciu haseł współdzielonych między agentem a interfejsem nie jest już używane. Hasła są teraz używane tylko do organizowania połączenia użytkowników z interfejsem.
- Zaproponowano nowy interfejs wiersza poleceń. Oddzielne narzędzia temboard-migratedb i temboard-agent-register zostały zastąpione wbudowanymi poleceniami wywoływanymi przez pliki wykonywalne temboard i temboard-agent. Dodano wbudowane polecenia do wykonywania typowych operacji administracyjnych i monitorowania z wiersza poleceń.
- Dodano obsługę PostgreSQL 15, RHEL 9 i Debian 12. Usunięto obsługę PostgreSQL 9.4 i 9.5 oraz Python 2.7 i 3.5.
- Do temboard do rejestracji agentów dodano komendę „register-instance”, która w przeciwieństwie do komendy „temboard-agent register” jest wykonywana po stronie serwera i nie wymaga dostępności agenta do sieci, tj. może służyć do dodawania nowych instancji w trybie offline.
- Zmniejszono obciążenie agenta w systemie - zmniejszono liczbę wykonywanych transakcji o 25%, zaimplementowano buforowanie typowych wartości oraz multipleksowanie zadań.
- Rozmiar przechowywanych danych monitoringu jest domyślnie zmniejszony do 2 lat.
- Dodano możliwość pobierania danych inwentaryzacyjnych w formacie CSV.
- Procesy w tle interfejsu i agenta są automatycznie restartowane po nieprawidłowym zakończeniu.
Dodatkowo możemy odnotować wydanie zestawu narzędzi Pyrseas 0.10.0, przeznaczonego do utrzymania PostgreSQL DBMS i automatyzacji operacji aktualizacji struktury danych. Pyrseas konwertuje standardowy schemat bazy danych i powiązane metadane do formatu YAML lub JSON, bardziej odpowiedniego do wykorzystania w systemach kontroli wersji. Wykorzystując reprezentację YAML, Pyrseas zapewnia generowanie SQL w celu synchronizacji struktury jednej bazy danych z inną (tj. zmiany w strukturze mogą być łatwo wprowadzane i propagowane do innych baz danych). Kod projektu napisany jest w języku Python i rozpowszechniany na licencji BSD.
Nowe wydanie Pyrseas wyróżnia się przejściem do Psycopg 3, całkowicie przeprojektowanej gałęzi modułu do pracy z PostgreSQL z programów w Pythonie, wspierającej asynchroniczną interakcję z DBMS oraz udostępniającej interfejsy oparte o DBAPI i asyncio. Nowa wersja usuwa również wsparcie dla Pythona 2.x i usuwa pgdbconn z zależności. Zapewniona jest obsługa gałęzi PostgreSQL od 10 do 15.
Źródło: opennet.ru