Query MYSQL eccessivamente lente su DMZ
Inviato: dom 10 mag , 2009 10:37 pm
Salve amici
vi racconto la mia infrastruttura prima di spiegarvi il problema
ho un server IBM3200 dove ho installato VmWare ESXi; su questa macchina ho tirato su due server, uno interno LAN con win 2008 e uno esterno DMZ con win 2003
le macchine sono collegate tutte ad uno switch a 100mbps managed, zonato tramite vlan
il firewall che uso per queste configurazioni è un netgear prosafe FVX538
sia sulla macchina locale che in quella in DMZ è installato MYSQL 5.1
sulla macchina esterna è installato anche un webserver apache con le estensioni PHP
ovviamente dalla lan raggiungo il webserver in DMZ e quando provo ad eseguire le applicazioni web (quindi webserver e mysql risiedono sulla stessa macchina) va tutto bene ed ho ottimi tempi di risposta; il server è anche pubblicato all'esterno e nn ci sono problemi di lentezza
a questo punto, sempre in ottica di sicurezza, per tenere mysql all'interno della rete, ho provato a cambiare la configurazione della macchina esterna, e a farla puntare su un database interno (quello sul server 2008); quindi la macchina in DMZ chiamerà il server in LAN per tutte le query SQL
sul firewall, ovviamente, ho dovuto creare una regola - LAN DMZ inbound ed ho aperto la porta 3306;
quando provo ad eseguire l'applicazione le query sono lentissime... parliamo di select che restituiscono un paio di valori dopo circa 5 - 10 secondi
ho pensato che fosse un problema di lentezza del server locale dove è installato mysql (forse win2008 lo rallenta, ci sono altri servizi, ecc ecc), così ho aperto il tool di mysql per vedere le statistiche grafiche e mi sono accorto che il processore viene usato all'1%...
quindi ho installato apache + php su un'altra macchina (vista) locale e ho provato a dare come indirizzo del database, quello del server locale win 2008... le applicazioni sono velocissime, quindi ho escluso la lentezza del motore mysql sul server
così ho effettuato la stessa prova dalla macchina vista, però effettuando le query sulla macchina in DMZ e ho riscontrato le stesse lentezze
premettendo che da LAN a DMZ non c'è alcuna regola e di default è tutto consentito
deduco, quindi che il problema è quando passo da una zona all'altra... cioè o da LAN a DMZ oppure da DMZ a LAN sulla 3306
premetto che la lentezza avviene solo su questa porta xkè tranquillamente dalle macchine locali uso le macchine in DMZ via RDP senza alcuna lentezza
sarà il firewall che ha un processore lento? e pure è una chiamata banale, oppure devo vedere un po di sistemare i Qos?
se siete arrivati a leggere fin qui, di sicuro mi risponderete grazie in anticipo
vi racconto la mia infrastruttura prima di spiegarvi il problema
ho un server IBM3200 dove ho installato VmWare ESXi; su questa macchina ho tirato su due server, uno interno LAN con win 2008 e uno esterno DMZ con win 2003
le macchine sono collegate tutte ad uno switch a 100mbps managed, zonato tramite vlan
il firewall che uso per queste configurazioni è un netgear prosafe FVX538
sia sulla macchina locale che in quella in DMZ è installato MYSQL 5.1
sulla macchina esterna è installato anche un webserver apache con le estensioni PHP
ovviamente dalla lan raggiungo il webserver in DMZ e quando provo ad eseguire le applicazioni web (quindi webserver e mysql risiedono sulla stessa macchina) va tutto bene ed ho ottimi tempi di risposta; il server è anche pubblicato all'esterno e nn ci sono problemi di lentezza
a questo punto, sempre in ottica di sicurezza, per tenere mysql all'interno della rete, ho provato a cambiare la configurazione della macchina esterna, e a farla puntare su un database interno (quello sul server 2008); quindi la macchina in DMZ chiamerà il server in LAN per tutte le query SQL
sul firewall, ovviamente, ho dovuto creare una regola - LAN DMZ inbound ed ho aperto la porta 3306;
quando provo ad eseguire l'applicazione le query sono lentissime... parliamo di select che restituiscono un paio di valori dopo circa 5 - 10 secondi
ho pensato che fosse un problema di lentezza del server locale dove è installato mysql (forse win2008 lo rallenta, ci sono altri servizi, ecc ecc), così ho aperto il tool di mysql per vedere le statistiche grafiche e mi sono accorto che il processore viene usato all'1%...
quindi ho installato apache + php su un'altra macchina (vista) locale e ho provato a dare come indirizzo del database, quello del server locale win 2008... le applicazioni sono velocissime, quindi ho escluso la lentezza del motore mysql sul server
così ho effettuato la stessa prova dalla macchina vista, però effettuando le query sulla macchina in DMZ e ho riscontrato le stesse lentezze
premettendo che da LAN a DMZ non c'è alcuna regola e di default è tutto consentito
deduco, quindi che il problema è quando passo da una zona all'altra... cioè o da LAN a DMZ oppure da DMZ a LAN sulla 3306
premetto che la lentezza avviene solo su questa porta xkè tranquillamente dalle macchine locali uso le macchine in DMZ via RDP senza alcuna lentezza
sarà il firewall che ha un processore lento? e pure è una chiamata banale, oppure devo vedere un po di sistemare i Qos?
se siete arrivati a leggere fin qui, di sicuro mi risponderete grazie in anticipo