SysMonitor, netex üzerinde izleme yapabilmek için geliştirilmiş bir araçtır.
Çalışması için iki farklı pakete ihtiyaç var:
- sysmonitor
- sysmonitor-worker
Bunlar server-client mantığı ile çalışır.
Sysmonitor bir makine'ye kurulur ve netex veritabanı ile haberleşir.
Worker ise asıl izlemeyi yaparak sysmonitor ile haberleşir.
Böylece izlenen veriler netex db'sinde tutulur.
Kurulum
Sysmonitor kullanabilmek için öncelikle bir netex ortamının bulunması gerekir.
Netex, sysmonitor ve sysmonitor-worker paketleri aynı makinede de olabilir veya farklı makinelerde de bulunabilir.
Sysmonitor Kurulumu
Bir makineye sysmonitor paketi kurulur. Environment değişkeni olarak netex db bilgileri verilir.
apt install ./sysmonitor-24-x64.deb
/opt/sysmonitor/.env örneği:
DB_DRIVER=postgres
DB_HOST=127.0.0.1
DB_NAME=netex
DB_PASS=password
DB_PORT=5432
DB_USER=netex
NOT: Netex veritabanı başka bir makinedeyse, sysmon'un buna erişebilmesi için netex db'sinin dışarıdan erişime açılması gerekir. pg_hba.conf ve postgresql.conf dosyaları kontrol edilebilir.
Kurulum sonrasında şu servislerin çalışıyor olması gerekir:
- sysmonitor@admin
- sysmonitor@client
- sysmonitor@admintest
NOT: Sysmon api'sine istek atmak için 6520 portu kullanılır, eğer bu port açılmamışsa sysmonitor@admintest servisi başlatılmalıdır.
Port kontrol için:
ss -tlnp | grep 6520
Servisi başlatmak için:
systemctl enable --now sysmonitor@admintest
Sysmonitor Worker Kurulumu
Sensor'ler, worker'lar üzerinde çalıştığı için en az bir tane worker kurulup sysmon'a bağlanması gerekir.
Bir makineye sysmonitor-worker paketi kurulur. Environment değişkeni olarak sysmonitor makinesinin adresi verilir.
apt install ./sysmonitor-worker-setup-x64.deb
Kurulum sırasında server adresi istendiğinde https://<sysmonitor-ip>:6521 şeklinde girilir.
Daha sonradan .env dosyası düzenlenerek de değiştirilebilir.
/opt/sysmonitor-worker/.env örneği:
SERVER_URL=https://127.0.0.1:6521
FETCH_INTERVAL=3600
Nasıl çalışır?
Öncelikle bir template oluşturulur.
Bu template içinde, izlenilmesi istenen metrikler belirtilir.
Bir template içinde aynı türde birden fazla metrik izlenebilir.
Bu template'ı kullanan bir sensor oluşturulur.
Aynı template birden fazla sensor ile tekrar tekrar kullanılabilir.
Her sensor aynı zamanda bir varlığa bağlıdır ve bu varlığın o template'ta belirtilen metriklerini izler.
Sensor'ler worker'lar üzerinde çalışır.
İzlenen metrik değerleri sysmon'a gönderilir ve sysmon netex db'sine kaydeder.
Daha sonra bu metrikler db'den okunarak izlenebilir.
Birden fazla worker kurulabilir.
Her bir sensor için hangi worker üzerinde çalışacağı belirtilir.
Yani özetle;
- Metrik, izlenecek değeri belirtir.
- Template, hangi metriklerin izleneceğini belirten kuraldır.
- Sensor, asıl izlemeyi yapandır.
- Sysmonitor Worker, izlemenin nerede yapılacağıdır.
- Sysmonitor, sensor ve netex db arasındaki bağlantıyı sağlayan backend server'dır.
.---------.
.-----------. .---------. | |
| Template1 |--------| Sensor1 |--------| Varlık1 |
| | '---------' | |
| -metrik1 | .---------. '---------'
| -metrik2 |--------| Sensor2 |----.
'-----------' '---------' | .---------.
'---| |
.-----------. .---------. | Varlık2 |
| Template2 |--------| Sensor3 |--------| |
| | '---------' '---------'
| -metrik3 |
'-----------'
Bu örnekte;
-
Varlık1'inmetrik1vemetrik2değerleri -
Varlık2'ninmetrik1,metrik2vemetrik3değerleri
izlenir.
Top comments (0)