GSLB (Global Server Load Balancing) hizmetini test etmek icin kullanilan minimal mikroservis. Farkli lokasyonlara deploy edildiginde, her lokasyon kendine ozel renk ve bilgilerle sayfa gosterir. Sayfayi yeniledikce GSLB algoritmasina gore farkli lokasyonlar gelir.
# Repoyu cekin
git clone <bu-gist-url>
cd gslb-test
# Tek lokasyon (ornegin Ankara sunucusu):
docker build -t gslb-test .
docker run -d --name gslb-ankara \
-e LOCATION=Ankara \
-e PORT=3080 \
-p 3080:3080 \
gslb-test
# Ya da docker compose ile (tek makinede iki lokasyon testi):
docker compose up -dAnkara sunucusunda:
docker compose up -d ankara
# → http://ankara-ip:3080Bursa sunucusunda:
docker compose up -d bursa
# → http://bursa-ip:3081 (veya port mapping'i degistirin)# Node.js >= 18 gerekli, baska bagimliligi yok
LOCATION=Ankara PORT=3080 node server.js| Yol | Aciklama |
|---|---|
GET / |
Lokasyon bilgisi, canli metrikler (CPU, RAM, istek sayisi) iceren HTML sayfa |
GET /health |
VT GSLBaaS formatinda JSON health check yaniti |
GET /api/info |
JSON metadata (lokasyon, hostname, uptime, metrikler) |
/health endpoint'i VeriTeknik GSLBaaS health checker'in beklediği formatta yanit verir:
{
"status": "healthy",
"version": "1.0.0",
"location": "Ankara",
"exec_time_ms": 23,
"cpu_percent": 15.2,
"mem_percent": 28.4,
"uptime_seconds": 3600,
"total_requests": 42,
"hostname": "ankara-srv-01"
}Onemli: CPU/Memory degerleri istek sayisiyla orantili olarak artar (simulasyon). Bu sayede farkli yukler altinda GSLB algoritmalarini (weighted, least-loaded vb.) test edebilirsiniz.
| Degisken | Varsayilan | Aciklama |
|---|---|---|
LOCATION |
Unknown |
Lokasyon adi (sayfada buyuk badge olarak gosterilir) |
PORT |
3080 |
HTTP port |
| Lokasyon | Arkaplan | Vurgu |
|---|---|---|
| Ankara | Koyu lacivert | Kirmizi |
| Bursa | Koyu yesil | Yesil |
| Istanbul | Koyu mavi | Mavi |
| Izmir | Koyu mor | Mor |
| Frankfurt | Koyu sari | Sari |
| Amsterdam | Koyu turkuaz | Turkuaz |
Tanimli olmayan lokasyonlar gri arkaplan + mavi vurgu kullanir.
- Servisleri deploy edin — Her lokasyona bir container koyun
- GSLB Pool olusturun — Staff panelinden yeni pool ekleyin:
- FQDN:
gslb-test.ornekdomain.com - Algorithm:
weighted-round-robin(veya test etmek istediginiz algoritma)
- FQDN:
- Memberlar ekleyin — Her lokasyon icin:
- Name:
Ankara/Bursa - Address: Sunucu IP adresi
- Health Check URL:
http://<ip>:3080/health - Health Check Type:
vt_gslbaas
- Name:
- DNS kaydi ekleyin — GSLB pool FQDN'ini DNS'e ekleyin
- Test edin — Tarayicida
gslb-test.ornekdomain.comacin, F5 ile yenileyin- Her yenilemede farkli lokasyon badge'i goreceksiniz
- Cok istek gondererek CPU yukunu artirin, least-loaded algoritmada trafik kaymasini gozlemleyin
MIT — VeriTeknik Bilisim