Discussione:
Come monitorare un server e dimensionare l'hardware
(troppo vecchio per rispondere)
Michele Barbato
2011-09-17 10:20:10 UTC
Permalink
Mi è capitato che un serverino che funge anche da proxy rallentasse
terribilmente le connessioni ad internet degli utenti, anzi dell'unico
utente connesso, il quale mi ha riferito che un portatile collegato
direttamente al modem navigava a 2MBs mentre quello che passava per il proxy
andava a 200Kbs.
La cosa si è apparentemente risolta autonomamente visto che dopo circa
mezzora la velocità di navigazione dei PC collegati al proxy è tornata ai
canonici 2Mbs.
Non sono riuscito a connettermi per verificare a cosa attribuire il problema
ma mi sono posto alcune domande:
Come faccio a sapere se l'hardware che sto utilizzando per il mio server è
dimensionato correttamente ?
Ho provato con il comando top, non mi pare di vedere cose eclatanti, ma sarà
sufficiente ? E se in determinate situazione alcuni task occupassero tutte
le risorse ?
Come fare un monitoring più approfondito ?

Ringrazio per i consigli.

Mik

P.S. Posto sotto il risultato di top di 20 minuti fa, funziona tutto
correttamente ma casomai qualcuno notasse qualcosa di anomalo ....



top - 11:58:53 up 15 days, 1:08, 2 users, load average: 0.82, 0.80, 0.76
Tasks: 247 total, 2 running, 245 sleeping, 0 stopped, 0 zombie
Cpu(s): 26.7%us, 0.7%sy, 0.0%ni, 72.2%id, 0.3%wa, 0.0%hi, 0.1%si,
0.0%st
Mem: 2050996k total, 1997784k used, 53212k free, 42692k buffers
Swap: 1952760k total, 0k used, 1952760k free, 1558128k cached

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1987 mauro 20 0 51624 26m 5272 R 87 1.3 0:02.81 php
1118 mysql 20 0 144m 19m 2880 S 23 1.0 2706:28 mysqld
1861 stefano 20 0 2548 1296 924 R 1 0.1 0:00.58 top
78 root 20 0 0 0 0 S 0 0.0 11:43.77 kondemand/1
1353 asterisk -11 0 48624 12m 3720 S 0 0.6 20:56.45 asterisk
1836 stefano 20 0 8848 1564 916 S 0 0.1 0:00.03 sshd
27165 mauro 20 0 20872 5820 3800 S 0 0.3 0:07.40 vlc
27168 mauro 20 0 20880 5832 3800 S 0 0.3 0:08.79 vlc
27171 mauro 20 0 20872 5940 3800 S 0 0.3 0:12.07 vlc
1 root 20 0 2796 1640 1144 S 0 0.1 0:04.15 init
2 root 20 0 0 0 0 S 0 0.0 0:00.00 kthreadd
3 root RT 0 0 0 0 S 0 0.0 0:01.14 migration/0
4 root 20 0 0 0 0 S 0 0.0 0:08.38 ksoftirqd/0
5 root RT 0 0 0 0 S 0 0.0 0:00.00 watchdog/0
6 root RT 0 0 0 0 S 0 0.0 0:01.91 migration/1
7 root 20 0 0 0 0 S 0 0.0 0:04.18 ksoftirqd/1
8 root RT 0 0 0 0 S 0 0.0 0:00.00 watchdog/1
9 root RT 0 0 0 0 S 0 0.0 0:22.40 migration/2
10 root 20 0 0 0 0 S 0 0.0 0:07.88 ksoftirqd/2
11 root RT 0 0 0 0 S 0 0.0 0:00.00 watchdog/2
12 root RT 0 0 0 0 S 0 0.0 0:05.48 migration/3
13 root 20 0 0 0 0 S 0 0.0 0:18.97 ksoftirqd/3
14 root RT 0 0 0 0 S 0 0.0 0:00.00 watchdog/3
15 root 20 0 0 0 0 S 0 0.0 0:20.90 events/0
16 root 20 0 0 0 0 S 0 0.0 0:13.36 events/1
17 root 20 0 0 0 0 S 0 0.0 0:16.15 events/2
18 root 20 0 0 0 0 S 0 0.0 0:14.27 events/3
19 root 20 0 0 0 0 S 0 0.0 0:00.00 cpuset
20 root 20 0 0 0 0 S 0 0.0 0:00.00 khelper
21 root 20 0 0 0 0 S 0 0.0 0:01.65 netns
22 root 20 0 0 0 0 S 0 0.0 0:00.00 async/mgr
23 root 20 0 0 0 0 S 0 0.0 0:00.00 pm
25 root 20 0 0 0 0 S 0 0.0 0:00.83 sync_supers
26 root 20 0 0 0 0 S 0 0.0 0:01.42 bdi-default
27 root 20 0 0 0 0 S 0 0.0 0:00.00 kintegrityd/0
28 root 20 0 0 0 0 S 0 0.0 0:00.00 kintegrityd/1
29 root 20 0 0 0 0 S 0 0.0 0:00.00 kintegrityd/2
30 root 20 0 0 0 0 S 0 0.0 0:00.00 kintegrityd/3
31 root 20 0 0 0 0 S 0 0.0 0:02.48 kblockd/0
32 root 20 0 0 0 0 S 0 0.0 0:02.64 kblockd/1
33 root 20 0 0 0 0 S 0 0.0 0:01.08 kblockd/2
THe_ZiPMaN
2011-09-17 13:00:39 UTC
Permalink
Post by Michele Barbato
Mi è capitato che un serverino che funge anche da proxy rallentasse
terribilmente le connessioni ad internet degli utenti, anzi dell'unico
utente connesso, il quale mi ha riferito che un portatile collegato
direttamente al modem navigava a 2MBs mentre quello che passava per il proxy
andava a 200Kbs.
Ci sarà stato il proxy impegnato a fare altro. Capita.
Post by Michele Barbato
La cosa si è apparentemente risolta autonomamente visto che dopo circa
mezzora la velocità di navigazione dei PC collegati al proxy è tornata ai
canonici 2Mbs.
Può accadere... un job che faccia un pesante accesso al disco è facile
che possa rallentare tutto.
Post by Michele Barbato
Non sono riuscito a connettermi per verificare a cosa attribuire il problema
Come faccio a sapere se l'hardware che sto utilizzando per il mio server è
dimensionato correttamente ?
Normalmente funziona bene? Allora è dimensionato correttamente.
Normalmente ti da problemi? Allora è probabile che abbia qualche limite.
Post by Michele Barbato
Ho provato con il comando top, non mi pare di vedere cose eclatanti, ma sarà
sufficiente ?
Se le persone normalmente non si lamentano è certamente sufficiente. E
ovviamente è sempre migliorabile, ma non sempre è conveniente farlo. In
genere se il load average è una percentuale significative del numero di
processori, allora è opportuno pensare di intervenire.
Post by Michele Barbato
E se in determinate situazione alcuni task occupassero tutte
le risorse ?
Come fare un monitoring più approfondito ?
Usi un programma di monitoring.
Puoi usare il semplice atop, oppure qualcosa di più articolato come munin...
Post by Michele Barbato
P.S. Posto sotto il risultato di top di 20 minuti fa, funziona tutto
correttamente ma casomai qualcuno notasse qualcosa di anomalo ....
top - 11:58:53 up 15 days, 1:08, 2 users, load average: 0.82, 0.80, 0.76
Tasks: 247 total, 2 running, 245 sleeping, 0 stopped, 0 zombie
Cpu(s): 26.7%us, 0.7%sy, 0.0%ni, 72.2%id, 0.3%wa, 0.0%hi, 0.1%si,
0.0%st
Mem: 2050996k total, 1997784k used, 53212k free, 42692k buffers
Swap: 1952760k total, 0k used, 1952760k free, 1558128k cached
Se hai un solo processore il load average a 0.80, se costante, è un po'
altino.
Post by Michele Barbato
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1987 mauro 20 0 51624 26m 5272 R 87 1.3 0:02.81 php
1118 mysql 20 0 144m 19m 2880 S 23 1.0 2706:28 mysqld
Ma è una situazione costante questa??? Perché un utilizzo così alto del
php è spesso indice di applicazione scritta con fondoschiena. E perché
php gira nel contesto di un utente?
--
Flavio Visentin

Scientists have finally discovered what's wrong with the female brain:
On the left side, there is nothing right, and on the right side, there
is nothing left.
Michele Barbato
2011-09-17 13:17:25 UTC
Permalink
Post by THe_ZiPMaN
Ma è una situazione costante questa???
E' uno script che viene lanciato ogni 5 secondi per controllare lo stato di
un dispositivo di I/O, quindi ogni 5 secondi c'è questo "picco" di php.
Post by THe_ZiPMaN
Perché un utilizzo così alto del
php è spesso indice di applicazione scritta con fondoschiena.
Può essere. Ho messo assieme vari pezzi di codice scritti negli anni senza
curarmi troppo di togliere le cose inutili ... se carica così tanto la cpu
in effetti è il caso di rivederlo.
Post by THe_ZiPMaN
E perché
php gira nel contesto di un utente?
E' un server usato per i test, lo script viene lanciato al login automatico
dell'utente. Sarebbe stato più corretto metterlo in rc.local.
Ai fini delle performance cambia qualcosa ?
Post by THe_ZiPMaN
--
Flavio Visentin
On the left side, there is nothing right, and on the right side, there
is nothing left.
Grazie.
Mik
THe_ZiPMaN
2011-09-17 13:32:05 UTC
Permalink
Post by Michele Barbato
Post by THe_ZiPMaN
Ma è una situazione costante questa???
E' uno script che viene lanciato ogni 5 secondi per controllare lo stato di
un dispositivo di I/O, quindi ogni 5 secondi c'è questo "picco" di php.
In PHP? Pensavo fosse una qualche applicazione web.
In questo caso comunque ritengo la scelta di PHP assolutamente inadeguata.
Post by Michele Barbato
Post by THe_ZiPMaN
Perché un utilizzo così alto del
php è spesso indice di applicazione scritta con fondoschiena.
Può essere. Ho messo assieme vari pezzi di codice scritti negli anni senza
curarmi troppo di togliere le cose inutili ... se carica così tanto la cpu
in effetti è il caso di rivederlo.
Il controllo di un dispositivo di I/O in genere non dovrebbe comportare
carichi elaborativi significativi. Probabilmente un demone in perl o in
python sarebbe molto più discreto ed efficiente nell'uso delle risorse.
Post by Michele Barbato
Post by THe_ZiPMaN
E perché
php gira nel contesto di un utente?
E' un server usato per i test,
Avevo capito che si trattava del proxy... o usi il proxy di produzione
per test?
Post by Michele Barbato
lo script viene lanciato al login automatico
dell'utente. Sarebbe stato più corretto metterlo in rc.local.
Ai fini delle performance cambia qualcosa ?
Delle performance no. Della sicurezza sì.
--
Flavio Visentin

Scientists have finally discovered what's wrong with the female brain:
On the left side, there is nothing right, and on the right side, there
is nothing left.
Michele Barbato
2011-09-17 13:55:28 UTC
Permalink
Post by THe_ZiPMaN
Il controllo di un dispositivo di I/O in genere non dovrebbe comportare
carichi elaborativi significativi.
No, infatti. Però accede spesso al database, per quello mi ero orientato su
php che è molto semplice nella gestione di mysql
Post by THe_ZiPMaN
Probabilmente un demone in perl o in
python sarebbe molto più discreto ed efficiente nell'uso delle risorse.
Magari anche con perl e python si gestisce mysql semplicemente ... per
carità .. ma non li conosco.
Stavo guardando lo script giusto ora, non vorrei che il sovraccarico fosse
dovuto al continuo accesso a mysql o all'uso smodato di "echo" ai fini di
log.
Post by THe_ZiPMaN
Avevo capito che si trattava del proxy... o usi il proxy di produzione
per test?
Non sono una ditta. Li faccio per parenti ed amici e qualcuno gentilmente si
presta a testare cose che non ho mai provato prima.
Post by THe_ZiPMaN
Post by Michele Barbato
lo script viene lanciato al login automatico
dell'utente. Sarebbe stato più corretto metterlo in rc.local.
Ai fini delle performance cambia qualcosa ?
Delle performance no. Della sicurezza sì.
Ok, chiaro.
Post by THe_ZiPMaN
--
Flavio Visentin
On the left side, there is nothing right, and on the right side, there
is nothing left.
Grazie.
Mik
THe_ZiPMaN
2011-09-17 14:54:31 UTC
Permalink
Post by Michele Barbato
Post by THe_ZiPMaN
Il controllo di un dispositivo di I/O in genere non dovrebbe comportare
carichi elaborativi significativi.
No, infatti. Però accede spesso al database, per quello mi ero orientato su
php che è molto semplice nella gestione di mysql
Anche perl e python lo sono; oggigiorno non esiste un linguaggio che non
abbia una libreria di gestione dei DB semplice da usare.
Post by Michele Barbato
Post by THe_ZiPMaN
Probabilmente un demone in perl o in
python sarebbe molto più discreto ed efficiente nell'uso delle risorse.
Magari anche con perl e python si gestisce mysql semplicemente ... per
carità .. ma non li conosco.
Una buona occasione per imparare :-)
Personalmente prediligo perl perché è più "rapido", è molto flessibile e
lo conosco abbastanza bene perché l'ho imparato quando python era
immaturo. Se però oggi dovessi imparare qualcosa di nuovo probabilmente
mi orienterei su python che è più "moderno", più rigido ma anche più
pulito e semplice, oltre che essere diventato maturo.
Post by Michele Barbato
Stavo guardando lo script giusto ora, non vorrei che il sovraccarico fosse
dovuto al continuo accesso a mysql o all'uso smodato di "echo" ai fini di
log.
A giudicare dai tempi è dovuto all'accesso a mysql. Il che lascia
presupporre una o più delle seguenti condizioni:
* che tu faccia troppe query: spesso p.es. per deformazione logica si
fanno tante query in un ciclo invece che fare una query unica e ciclare
tra i risultati; oppure si interrogano decine di tabelle invece che
creare una view adeguata... ecc.ecc.
* che non abbia una struttura corretta con indici adeguati. La struttura
del DB e la corretta creazione degli indici sono un fattore determinante
nelle applicazioni, e sono forse il primo aspetto non curato dagli
sviluppatori.
* che tu abbia una gestione nell'applicazione di aspetti da demandare al
DB. Il primo esempio che mi sovviene è la gestione dell'integrità
referenziale che spesso viene fatta nel programma invece che demandata
al DB. Ma anche per esempio la creazione di viste in memoria invece che
usare gli strumenti del database.

Per il logging meglio sarebbe usare syslog che "bufferizza".
Post by Michele Barbato
Post by THe_ZiPMaN
Avevo capito che si trattava del proxy... o usi il proxy di produzione
per test?
Non sono una ditta. Li faccio per parenti ed amici e qualcuno gentilmente si
presta a testare cose che non ho mai provato prima.
Ah... allora come si suol dire a caval donato non si sputa in bocca :-)
--
Flavio Visentin

Scientists have finally discovered what's wrong with the female brain:
On the left side, there is nothing right, and on the right side, there
is nothing left.
Enrico 'Henryx' Bianchi
2011-09-17 15:15:40 UTC
Permalink
Post by THe_ZiPMaN
A giudicare dai tempi è dovuto all'accesso a mysql. Il che lascia
Mi viene da aggiungere che probabilmente viene utilizzata una connessione
per query, quando invece e` piu` saggio aprire una connessione per sessione
applicativa

Enrico
Michele Barbato
2011-09-17 18:17:32 UTC
Permalink
Post by THe_ZiPMaN
A giudicare dai tempi è dovuto all'accesso a mysql. Il che lascia
* che tu faccia troppe query: spesso p.es. per deformazione logica si
fanno tante query in un ciclo invece che fare una query unica e ciclare
tra i risultati;
Sì, temo si tratti di questo.
In uno degli ultimi aggiornamenti di sto script ci ho messo una serie di
query una di seguito all'altra sulla stessa tabella, era megli fare una
select di * e ciclare tra i risultati.
Post by THe_ZiPMaN
* che non abbia una struttura corretta con indici adeguati. La struttura
del DB e la corretta creazione degli indici sono un fattore determinante
nelle applicazioni, e sono forse il primo aspetto non curato dagli
sviluppatori.
mmm !! Sono tutte tabelle abbastanza piccole, eccetto una che potrei
rivedere inserendo delle primary key.
Post by THe_ZiPMaN
* che tu abbia una gestione nell'applicazione di aspetti da demandare al
DB. Il primo esempio che mi sovviene è la gestione dell'integrità
referenziale che spesso viene fatta nel programma invece che demandata
al DB. Ma anche per esempio la creazione di viste in memoria invece che
usare gli strumenti del database.
Non arrivo a tanto.
Post by THe_ZiPMaN
Ah... allora come si suol dire a caval donato non si sputa in bocca :-)
Non vorrei dilungarmi troppo ma la cosa è nata e si è evoluta in maniera
rapida ed inaspettata.
Ho iniziato provando ad installare linux in un piccolo mini itx che mi era
capitato tra le mani, poi visto che conoscevo un po' di php ho fatto uno
script che periodicamente lanciava vlc per registrare le immagini della
telecamerina IP, è seguita l'interfaccia grafica con apache, poi mia figlia
è cresciuta ed ci ho messo dansguardian per controllare dove navigava, lo ha
visto il vicino e lo ha voluto anche lui, poi tizio, poi caio, poi mettici
asterisk che facciamo il centralino e via così.
La più bella di tutte è stata il patronato del paese che con i finanziamenti
regionali aveva creato un internet point, sono andato all'inaugurazione e ho
chiesto al coordinatore come controllavano gli accessi ad internet dei
visitatori ..... beh ! non li controllavano, tutti i PC collegati al router
ADSL. Allora abbiamo recuperato un vecchio PC, aggiunta una scheda di rete e
via con il proxy.
Il tutto ovviamente sempre gratis e con il supporto determinante di questo
NG, al massimo mi hanno offerto uno spritz.
Post by THe_ZiPMaN
--
Flavio Visentin
On the left side, there is nothing right, and on the right side, there
is nothing left.
Mik
GbMax78
2011-09-18 08:00:17 UTC
Permalink
Post by Michele Barbato
Ho iniziato provando ad installare linux in un piccolo mini itx che mi era
capitato tra le mani, poi visto che conoscevo un po' di php ho fatto uno
Che distro utilizzi ?
Post by Michele Barbato
script che periodicamente lanciava vlc per registrare le immagini della
telecamerina IP, è seguita l'interfaccia grafica con apache, poi mia figlia
Ma non era meglio agire sul motion detect della telecamera ip per farle
spedire snapshot o video via mail, ftp, etc. quando "allarmata" ?
Post by Michele Barbato
asterisk che facciamo il centralino e via così.
Con telefoni ip o tradizionali ? Ma che hardware utilizzi ?
Post by Michele Barbato
ADSL. Allora abbiamo recuperato un vecchio PC, aggiunta una scheda di rete e
via con il proxy.
Che software hai usato ?
Post by Michele Barbato
Il tutto ovviamente sempre gratis e con il supporto determinante di questo
NG, al massimo mi hanno offerto uno spritz.
Complimenti per tutta questa intraprendenza e per averla messa a
disposizione degli altri ! :)

Saluti.
GbMax78

P.S.
Hai mai pensato a qualcosa tipo citofono su ip in modo da reinstradare
la chiamata quando ti trovi fuori casa ad esempio verso uno smartphone
con Android ? Io sto cercando di creare una soluzione del genere ma
ancora sono in fase embrionale !
Michele Barbato
2011-09-18 19:53:24 UTC
Permalink
Post by GbMax78
Post by Michele Barbato
Ho iniziato provando ad installare linux in un piccolo mini itx che mi era
capitato tra le mani, poi visto che conoscevo un po' di php ho fatto uno
Che distro utilizzi ?
All'inizio Ubuntu con l'interfaccia grafica, un po' per timore reverenziale,
acquisendo più dimestichezza sono passato a Debian solo terminale.
All'inizio il file system di Linux con quei maledetti file di configurazione
in formato testo mi intimorivano, poi ci convivi e infine ne apprezzi
appieno la potenzialità.
Post by GbMax78
Post by Michele Barbato
script che periodicamente lanciava vlc per registrare le immagini della
telecamerina IP, è seguita l'interfaccia grafica con apache, poi mia figlia
Ma non era meglio agire sul motion detect della telecamera ip per farle
spedire snapshot o video via mail, ftp, etc. quando "allarmata" ?
Vuoi mettere un video con degli snapshot ? Rischi di trovarti la mail
intasata e via ftp sei limitato dalla capacità della rete, e poi con cosa ti
ritrovi ? Una tonellata di voluminosi file jpg che non sai come gestire.
Molto meglio un server locale ti consente di registrare 24h senza
interruzioni, in formato compresso tipo H264 e magari la cartella dove
registri i video la puoi condividere in rete con Samba.
Il motion detection che in genere viene implementato nelle telecamere si
limita a rilevare delle variazioni nell'immagine, se troppo sensibile
registrerai una montagna di falsi allarmi se poco sensibile rischi di
perderti eventi significativi. A questo punto tanto vale registrare di
continuo e sei sicuro di non perderti niente. Se proprio vuoi mandi una trap
al verificarsi del motion e registri data e ora in un database così riesci a
recuperarla nel filmato.
Post by GbMax78
Con telefoni ip o tradizionali ? Ma che hardware utilizzi ?
Con telefoni IP. L'ultimo che ho preso è un linksys comprato su monclick.
Quello prima me lo ha regalato Euteliavoip con una ricarica. Il tutto
gestito nello stesso server con Asterisk.
Post by GbMax78
Post by Michele Barbato
ADSL. Allora abbiamo recuperato un vecchio PC, aggiunta una scheda di rete e
via con il proxy.
Che software hai usato ?
Squid + Dansguardian.
In quest'ultimo va "tarata" con un po' di riguardo la pesatura delle parole
che poi è la funzione più importante di filtraggio dei siti.
Post by GbMax78
Saluti.
GbMax78
P.S.
Hai mai pensato a qualcosa tipo citofono su ip in modo da reinstradare la
chiamata quando ti trovi fuori casa ad esempio verso uno smartphone con
Android ? Io sto cercando di creare una soluzione del genere ma ancora
sono in fase embrionale !
Tra le funzionalità di asterisk c'è quella di generare chiamate in
automatico, sfrutterei questa possibilità.
Oppure sfruttando l'audio bidirezionale delle telecamere IP.

Ciao.
Mik
GbMax78
2011-09-20 12:28:18 UTC
Permalink
Post by Michele Barbato
All'inizio Ubuntu con l'interfaccia grafica, un po' per timore reverenziale,
acquisendo più dimestichezza sono passato a Debian solo terminale.
Io ho iniziato da Debian 3, un disastro perchè non sono riuscito a
caricare un desktop perchè a quei tempi ero ancora fermo ai clic e
doppio clic dei server MS, poi ho studiato e dalla 4 in poi ho iniziato
a muovermi bene anche da terminale visto che in remoto tramite ssh con
connessioni non proprio brillanti diventava l'unico modo per gestire la
macchina e alla fine ho fatto di necessità virtu' !
Post by Michele Barbato
All'inizio il file system di Linux con quei maledetti file di configurazione
in formato testo mi intimorivano, poi ci convivi e infine ne apprezzi
appieno la potenzialità.
Vero e tutti quelli che me lo dicevano inizialmente li prendevo per
pazzi scatenati !
Post by Michele Barbato
Vuoi mettere un video con degli snapshot ? Rischi di trovarti la mail
intasata e via ftp sei limitato dalla capacità della rete, e poi con cosa ti
ritrovi ? Una tonellata di voluminosi file jpg che non sai come gestire.
Molto meglio un server locale ti consente di registrare 24h senza
interruzioni, in formato compresso tipo H264 e magari la cartella dove
registri i video la puoi condividere in rete con Samba.
Mhmm... quanto occupa un filmato h24 ? Ora ho 4 telecamere Sharkx, non
quelle in HD, con moltissime funzionalità e connessioni a vari sistemi
di registrazione e vorrei capire una registrazione continua di tutte
quanto mi obererebbe di lavoro il server...
Post by Michele Barbato
Il motion detection che in genere viene implementato nelle telecamere si
limita a rilevare delle variazioni nell'immagine, se troppo sensibile
registrerai una montagna di falsi allarmi se poco sensibile rischi di
perderti eventi significativi. A questo punto tanto vale registrare di
Beh... dipende a mio avviso da dove posizioni la cam e dalla qualità
della stessa, se ci sono alberi nei pressi il vento farà la sua parte a
farà scattare il motion detect sennò nel mio caso potendo gestire vari
livelli di sensibilità e di detect tutto sommato l'invio di allarmi
avviene quando davvero si muove qualcosa, "perdi" un pò di tempo a
tararle all'inizio ma poi quando il lavoro è fatto raccogli solo i frutti !
Post by Michele Barbato
continuo e sei sicuro di non perderti niente. Se proprio vuoi mandi una trap
al verificarsi del motion e registri data e ora in un database così riesci a
recuperarla nel filmato.
Questo non l'ho capito...
Post by Michele Barbato
Con telefoni IP. L'ultimo che ho preso è un linksys comprato su monclick.
Quello prima me lo ha regalato Euteliavoip con una ricarica. Il tutto
gestito nello stesso server con Asterisk.
Hai trasformato il numero di casa in ip oppure hai una gestione "ibrida"
quindi Asterisk che con opportuna scheda ti gestice il tradizionale e
l'ip ? Che hardware hai per Asterisk ?
Post by Michele Barbato
Squid + Dansguardian.
Ancora mai usati ma già sentiti...
Post by Michele Barbato
In quest'ultimo va "tarata" con un po' di riguardo la pesatura delle parole
che poi è la funzione più importante di filtraggio dei siti.
OK.
Post by Michele Barbato
Tra le funzionalità di asterisk c'è quella di generare chiamate in
automatico, sfrutterei questa possibilità.
Oppure sfruttando l'audio bidirezionale delle telecamere IP.
Effettivamente le telecamere che utilizzo ovvero le Sharkx permettono la
bidirezionalità però poi prendono banda per il video che semmai potrei
tarare in uno dei tre profili disponibili come low... per quanto
riguarda la chiamata in automatico te che hardware metteresti lato porta
di ingresso di casa per poi far arrivare ad Asterisk la chiamata ? Ma
soprattutto come avresti la bidirezionalità dell'audio ?

Saluti !
GbMax78
Michele Barbato
2011-09-21 07:18:34 UTC
Permalink
Post by GbMax78
Mhmm... quanto occupa un filmato h24 ? Ora ho 4 telecamere Sharkx, non
quelle in HD, con moltissime funzionalità e connessioni a vari sistemi di
registrazione e vorrei capire una registrazione continua di tutte quanto
mi obererebbe di lavoro il server...
La durata della registrazione dipende moltissimo da quanto movimentata è la
scena. Ne ho appena verificata una che riprende un corridoio, la durata
delle registrazioni va da 20Mbyte a 150Mbyte per 1 ora con risoluzione
800x600, prendila ovviamente come indicazione di massima.
Per quanto riguarda il carico del server dipende da che hw utilizzi e quali
altre applicazioni ci sono sotto, sempre in linea di massima considera che
io utilizzo dei mini-itx con microporcessore Atom, ci faccio girare squid,
dansguardian, asterisk, apache, mysql server e qualche altra cosa,
registrando con vlc da 4 telecamere ip contemporaneamente che escono già in
formato H264 il carico del sistema (comando top) resta attorno al 20-30%.
Post by GbMax78
Post by Michele Barbato
continuo e sei sicuro di non perderti niente. Se proprio vuoi mandi una trap
al verificarsi del motion e registri data e ora in un database così riesci a
recuperarla nel filmato.
Questo non l'ho capito...
Alcune telecamere (esempio Axis) al verificarsi di un evento (esempio motion
detection) possono essere programmate per inviare delle notifiche tcp. Le
programmi affinchè tali notifiche vengano inviate al server dove metterai
uno script in ascolto sulla porta dove dovrebbe arrivare la notifica. Quando
riceve qualcosa registra nel database un record con ls data e l'ora.
Post by GbMax78
Hai trasformato il numero di casa in ip oppure hai una gestione "ibrida"
quindi Asterisk che con opportuna scheda ti gestice il tradizionale e l'ip
? Che hardware hai per Asterisk ?
Gestione dei numeri ip completamente separata dalla linea tradizionale.
L'hardware è sempre il server di cui sopra, il vantaggio è fare tutto con la
stessa macchina: centralino, registrazione video, proxy, ecc.
Post by GbMax78
Effettivamente le telecamere che utilizzo ovvero le Sharkx permettono la
bidirezionalità però poi prendono banda per il video che semmai potrei
tarare in uno dei tre profili disponibili come low... per quanto riguarda
la chiamata in automatico te che hardware metteresti lato porta di
ingresso di casa per poi far arrivare ad Asterisk la chiamata ? Ma
soprattutto come avresti la bidirezionalità dell'audio ?
La cosa non è banale e va pensata con calma. Comunque per gestire degli I/O
digitali (ad esempio la pressione del tasto del campanello) in funzione dei
quali attivare funzioni specifiche del server ho usato spesso chede con
microcontrollori, vedi Arduino o la SBC68EC della Modtronix.
Post by GbMax78
Saluti !
GbMax78
Ciao.
Mik
GbMax78
2011-09-21 12:16:37 UTC
Permalink
Post by Michele Barbato
La durata della registrazione dipende moltissimo da quanto movimentata è la
scena. Ne ho appena verificata una che riprende un corridoio, la durata
delle registrazioni va da 20Mbyte a 150Mbyte per 1 ora con risoluzione
800x600, prendila ovviamente come indicazione di massima.
Beh dai pensavo peggio, il mio attuale server è un IBM Pentium II 350
Mhz con tra banchi da 128 di ram ed un hd da 60gb, per ora mi gestisce
solo OpenVPN e ci metto per far qualche prova in lan dei piccoli db
MySQL nulla di piu' e Debian Squeeze senza grafica fa questo lavoro
senza problemi ovvio che se volessi tenere ad esempio una settimana di
registrazioni o far girare servizi un pò piu' onerosi in termini di
prestazioni ci vorrebbe un hardware molto piu' importante...
Post by Michele Barbato
io utilizzo dei mini-itx con microporcessore Atom, ci faccio girare squid,
dansguardian, asterisk, apache, mysql server e qualche altra cosa,
registrando con vlc da 4 telecamere ip contemporaneamente che escono già in
formato H264 il carico del sistema (comando top) resta attorno al 20-30%.
Sinceramente pensavo avessi un hardware piu' prestazionale ! :)
Post by Michele Barbato
Alcune telecamere (esempio Axis) al verificarsi di un evento (esempio motion
detection) possono essere programmate per inviare delle notifiche tcp. Le
programmi affinchè tali notifiche vengano inviate al server dove metterai
uno script in ascolto sulla porta dove dovrebbe arrivare la notifica. Quando
riceve qualcosa registra nel database un record con ls data e l'ora.
Quindi cam di fascia alta, con quello che costano per fortuna permettono
di fare di tutto e di piu' !
Post by Michele Barbato
Gestione dei numeri ip completamente separata dalla linea tradizionale.
L'hardware è sempre il server di cui sopra, il vantaggio è fare tutto con la
stessa macchina: centralino, registrazione video, proxy, ecc.
Beh... peccato gestisca separatamente il tutto, pensa se da remoto ti
servisse usare il numero "reale" non potresti farlo ed invece se
mettessi un'opportuna scheda nel server risolveresti "l'inconveniente"...
Post by Michele Barbato
La cosa non è banale e va pensata con calma. Comunque per gestire degli I/O
digitali (ad esempio la pressione del tasto del campanello) in funzione dei
quali attivare funzioni specifiche del server ho usato spesso chede con
microcontrollori, vedi Arduino o la SBC68EC della Modtronix.
Fin qui non mi sono mai spinto, sento un gran parlare di questi
microcontrollori ma non ho mai ben capito come programmarli per un
discorso come quello che mi interesserebbe, nel mio caso occorrerebbe un
tasto esterno che attivi il microcontrollore però poi per la parte audio
dovrei avere un microfono ed un altoparlante lato ingresso di casa, non
potrei sfruttare il citofono tradizionale e quindi una volta incanalato
l'audio in tcp/ip-Asterisk anche in casa il risponditore dovrebbe essere
quantomeno un palmare o un touch screen con s.o. tipo android perchè un
semplice telefono ip non mi permetterebbe l'apertura ad esempio del
cancello o della porta...
Post by Michele Barbato
Ciao.
Mik
Saluti.
GbMax78
Michele Barbato
2011-09-21 17:03:47 UTC
Permalink
Post by GbMax78
Sinceramente pensavo avessi un hardware piu' prestazionale ! :)
Vedi subject della mail. Il post è nato per capire come fare per essere
sicuri che l'hardware sia correttamente dimensionato per il tipo di
applicazione.

Un atom potrebbe anche essere eccessivo ... o sottodimensionato. L'analisi
del load average è sufficiente per capirlo ?

Ciao.
Mik

Enrico 'Henryx' Bianchi
2011-09-17 15:02:26 UTC
Permalink
Post by Michele Barbato
Magari anche con perl e python si gestisce mysql semplicemente ... per
carità .. ma non li conosco.
Posto che il "non li conosco" e` una motivazione che alla lunga non regge,
cosa intendi con "si gestice semplicemente"? Ovvero, cosa vai a fare e come?
Intendiamoci, il problema di dimensionamento di una macchina non e` solo su
come esegue le operazioni a cui la dedichiamo, ma anche sui programmi che fa
girare e su come scritti questi ultimi (e php non e` noto ne per la sua
efficienza, ne per la qualita` del codice che permette di scrivere)

Enrico
Michele Barbato
2011-09-17 23:54:23 UTC
Permalink
Post by THe_ZiPMaN
Se hai un solo processore il load average a 0.80, se costante, è un po'
altino.
Risolto, era un ciclo del piffero che avevo messo in una tabella che contava
gli impulsi di un led esterno diventata enorme.
Ora il load average è sceso al 30-40% mentre il processo php è attorno
all'1%.

Grazie ad entrambi per l'aiuto.

Mik
GbMax78
2011-09-18 07:48:41 UTC
Permalink
Post by Michele Barbato
Risolto, era un ciclo del piffero che avevo messo in una tabella che contava
gli impulsi di un led esterno diventata enorme.
Impulsi di un led esterno ? Perdona la curiosità... a cosa servirebbe
far ciò ?

Saluti !
GbMax78
Michele Barbato
2011-09-18 20:02:43 UTC
Permalink
Impulsi di un led esterno ? Perdona la curiosità... a cosa servirebbe far
ciò ?
Immagina di avere un dispositivo che emette dei segnali digitali che vuoi
rilevare, ma non puoi aprirlo. Tuttavia hai dei led all'esterno che ne
indicano lo stato e in funzione dell'accensione o spegnimento di questi sei
in grado di rilevare lo stato dei segnali che ti interessano.
Basta mettere una fotoresistenza di fronte al led e collegarla ad un
dispositivo di I/O.
Nel caso particolare si trattava di un router HSDPA e il lampeggio dei led
indicava se era conesso, il tipo di connessione, quanti KB aveva trasmesso
ecc.
Saluti !
GbMax78
Ciao.
Mik
GbMax78
2011-09-20 12:31:52 UTC
Permalink
Post by Michele Barbato
Immagina di avere un dispositivo che emette dei segnali digitali che vuoi
rilevare, ma non puoi aprirlo. Tuttavia hai dei led all'esterno che ne
indicano lo stato e in funzione dell'accensione o spegnimento di questi sei
in grado di rilevare lo stato dei segnali che ti interessano.
Basta mettere una fotoresistenza di fronte al led e collegarla ad un
dispositivo di I/O.
Capito !
Post by Michele Barbato
Nel caso particolare si trattava di un router HSDPA e il lampeggio dei led
indicava se era conesso, il tipo di connessione, quanti KB aveva trasmesso
ecc.
Si ma tutto questo ti veniva registrato in locale o anche rimbalzato in
remoto tipo verso un palmare o pc dislocato altrove ?

Anche perchè se lo stesso dispositivo HSDPA ti dava la connessione nel
caso il led power si fosse spento da remoto avresti visto ben poco...

Saluti.
GbMax78
Continua a leggere su narkive:
Loading...