ODBC (Open Database Connectivity), farklı türdeki veritabanlarına erişim sağlayan bir arayüzdür. Temel amacı, bir uygulamanın tek bir standart arayüz üzerinden çeşitli veritabanlarına bağlanabilmesini sağlamaktır. ODBC, veritabanı türünden bağımsız olarak SQL sorguları çalıştırarak veri okuma ve yazma işlemlerini kolaylaştırır. Bu sayede, kullanıcılar aynı kod yapısını kullanarak MySQL, PostgreSQL gibi birçok veritabanıyla etkileşim kurabilirler.
Bu yazıda:
- ODBC kurulumu
- ODBC yapılandırması
- Zabbix üzerinden PostgreSQL’e sorgu atılması
konularını ele alacağız.
1. ODBC Kurulumu
zabbix ile postgresql'e ODBC bağlantısı ile erişebilmek için zabbix'in yer aldığı sunucuya aşağıdaki paketi yüklemelisiniz.
sudo apt install odbc-postgresql
2. ODBC Yapılandırması
ODBS bağlantısı için iki temel yapılandırma dosyasını düzenlememiz gerekiyor:
/etc/odbcinst.ini
/etc/odbc.ini
2.1 /etc/odbcinst.ini Yapılandırması
Bu dosya, ODBC sürücüsünü tanımlar. Aşağıdaki yapılandırmayı dosyaya ekleyin.
sudo nano /etc/odbcinst.ini
[PostgreSQL] Description = ODBC for PostgreSQL Driver = /usr/lib/psqlodbcw.so Setup = /usr/lib/libodbcpsqlS.so Driver64 = /usr/lib/x86_64-linux-gnu/odbc/psqlodbcw.so Setup64 = /usr/lib64/libodbcpsqlS.so FileUsage = 1
Not: Eğer 'psqlodbcw.so' dosyasının konumunu bilmiyorsanız, aşağıdaki komutu kullanarak tam yolunu bulabilirsiniz.
find /usr/lib -name "psqlodbcw.so"
2.2 /etc/odbc.ini Yapılandırması
Bu dosya, PostgreSQL'e bağlanmak için gerekli yapılandırmayı içerir.
[PostgreSQL] Description=PostgreSQL ODBC driver Driver=postgresql user=root Database=<zabbix> Servername=<127.0.0.1> Port=<5432> Username=<zabbix> Password=<password> ReadOnly=No Protocol=7.4+ ShowOidColumn=No FakeOidIndex=No RowVersioning=No ShowSystemTables=No Fetch=Yes BoolsAsChar=Yes SSLmode=prefer ConnSettings=
Not:
Driver: Bu kısma /etc/odbcinst.ini yapılandırmasında bulunan köşeli parantez içerisindeki ismi girdiğinizden emin olun.odbcinst -q -d
bu komutla tanımladığınız ismi görebilirsiniz.
2.3 Bağlantının Test Edilmesi
Aşağıdaki komutla ODBC üzerinden PostgreSQL'e bağlantı kurmayı test edebilirsiniz.
isql -v PostgreSQL
bu komuttan sonra aşağıdaki örneğe benzer bir çıktı almalısınız.
$ isql -v PostgreSQL +---------------------------------------+ | Connected! | | | | sql-statement | | help [tablename] | | quit | | | +---------------------------------------+
3. Zabbix Üzerinden PostgreSQL’e Sorgu Atılması
Sorgu item kullanarak atılacağı için önce host oluşturmamız gerekli.
Data collection > Hosts içerisinden create host butonuna tıklanıp host oluşturulur. Ben aşağıdaki görseldeki gibi host ekledim.
Oluşturulan host'un item kısmına gidilip create item butonuna tıklanır. sonrasında aşağıda yer görseldeki gibi yapı girilir.
Ben bu örnekte kapsamında zabbix veritabanımda yer alan host sayısı izliyorum.
Type olarak Database monitor seçildikten sonra key eklenir.
Not: Key içerisinde yer alan PostgreSQL kısmına ODBC yapılandırmasına yazılan isim girilmelidir. Ben bu örnekte PostgreSQL yazmıştım.
Tüm bunları yaptıktan sonra gelen data aşağıda yer almaktadır.
Böylelikle zabbix veri tabanımızda ne kadar host bulunduğu bilgisini ODBC kullanarak zabbix'te monitoring etmiş olduk.
Kaynak:
https://www.youtube.com/watch?v=7vC-GpdUqCg
https://www.zabbix.com/documentation/current/en/manual/config/items/itemtypes/odbc_checks
Top comments (0)