Performancing Metrics

solutioncafe IT

Il System Architect è il punto di unione tra IT, processi aziendali, e esigenze del cliente

apr
2010
4

In questi giorni, avendo un pochino di tempo a disposizione mi sono deciso a dedicarne una parte al blog che da un po’ di tempo giaceva abbandonato.
Mentre davo un’occhiata alle statistiche generate da “Statpress” ho notato che i dati venivano estratti con estrema lentezza e nonostante il server sul quale risiede attualmente Mysql non sia un fulmine (devo decidermi a mettere in produzione la nuova VM) non era sicuramente una situazione “accettabile”.
Fatta una piccola analisi alla tabella di Statpress (wp_statpress) ho notato un indice solo sul campo “id” che da un’occhiata veloce al codice del plugin sembra anche essere inutile, anzi un indice sul campo “date” e sul campo “time”, seppur contenente valori non univoci, avrebbe giovato.
Ho provveduto quindi alla creazione degli indici.

Per il campo “date”:

mysql>ALTER TABLE wp_statpress ADD INDEX wp_statpress_date_idx (date(8));

Per il campo “time”:

mysql>ALTER TABLE wp_statpress ADD INDEX wp_statpress_time_idx (time(8));

Per verificare:

mysql>desc wp_statpress;

Risultato: Un quarto, circa, del tempo precedente per estrarre le statistiche.

Tag:

Scrivi un commento

feb
2010
3

Dopo l’uscita di Microsoft Windows 7 era venuta l’ora di metterci un pò le mani.
Anticipo subito che lavoro principalmente ancora con il buon vecchio client WindowsXP, ed ho sempre cercato di evitare Vista, quindi ho poco confronto con il suo diretto predecessore ma ho subito trovato Seven molto veloce e molto più stabile di Vista.

Dopo alcune ore passate su di esso ho avuto la necessità di sposare, come di consueto per le mie installazioni, la folder Users al di fuori della partizione dedicata al sistema operativo C:
Per fare ciò sono disponibili anche in windows (cosa ben nota agli utenti unix) i link
si chiamano “juntion points” e con questi possiamo personalizzare al meglio senza rischi la nostra struttura Windows

Eccone la procedura seguita per spostare la cartella Users in un’altra partizione in Windows 7:

1- Instalare l’S.O.
2- Riavviate il PC con il DVD di Win7 o con una chiavetta di recovery win7 ed entrare nel prompt di ms-dos
3- digitate i seguenti comandi:
> diskpart
> list disk
> sel disk 0 (il disco principale)
> list part
> sel part 1 (di solito quella Riservata – 100Mb)
> Assign letter=Z (lettera a caso)
> sel part 2 (quella dove avete installato il sistema operativo)
> assign letter=C
> sel part 3 (quella dove volete creare la nuova Users Folder)
> assign letter=D
> exit
4- siete tornati a X:\Sources, eseguite questi comandi
> mkdir D:\Users
> robocopy C:\Users D:\Users /mir /e /xj
> rmdir /s /q C:\Users
> mklink /j C:\Users D:\Users
> mklink /j “C:\Documents and Settings” D:\Users
5- Riavviate

Così facendo avete spostato i dati in una cartella D:\Users e lasciata intatta la configurazione dei registri
Windows cercerà ancora di scrivere sulla partizione C: ma attraverso il juntion point verrà re-diretto sull’altra partizione.

Attenzione ad usare con cautela questa procedura e ricordatevi che in caso di reinstallazione/restore dovrete rimodificare la configurazione.

Queste tipo di directory/link sono utili anche in caso vogliate sposare altre cartelle, esempio la PROGRAM FILES o altro su cui non vi basta lavorare con le variabili di sistema

Tag:

Scrivi un commento

dic
2009
4

Ebbene si’, anche io, mio malgrado, sono passato a Windows 7.
Purtroppo era diventato impossibile lavorare con Windows Vista e Windows XP a 64 bit non e’ il massimo.
Appena terminata l’installazione ho cominciato a “destreggiarmi” tra i vari menu, installando per primi i programmi “utili” e proprio terminata l’installazione di “VMware vSphere Client”, provando ad accedere al Virtual Center, mi e’ comparso il seguente errore:

vSphere-Err1

e successivamente:

vSphere-Err2

Ovviamente, conscio che qualcosa non avrebbe funzionato con la nuova versione di Windows, mi sono messo alla ricerca di una possibile soluzione.
Il sito VMware propone l’aggiornamento a vSphere 4 Update 1 per supportare Windows 7 e Windows 2008 R2, ma in attesa di procedere con l’aggiornamento, prendendo vari spunti qua’ e la’ ecco il “Workaround”.

Fase 1

  • Procuratevi il file “System.dll” da un sistema operativo diverso da Windows 7 sul quale e’ installato il framework 3.5 (il file lo trovate in %SystemRoot%\Microsoft.NET\Framework\v2.0.50727\), considerando, qualora utilizziate un sistema a 64 bit, di prelevare la versione del file a 32 bit (il client vSphere e’ comunque a 32 bit)

Fase 2

  • Copiate il file in una directory creata ad hoc (es. lib) in %ProgramFiles%\VMware\Infrastructure\Virtual Infrastructure Client\Launcher

Fase 3

  • Editate il file VpxClient.exe.config inserendo il blocco

    <runtime>
    <developmentMode developerInstallation="true"/>
    </runtime>

    appena prima del tag “</configuration>”

notepad.jpg

Fase 4

  • Lanciate SystemPropertiesAdvanced.exe, premete il pulsante ‘Variabili d’ambiente‘ e create la variabile di sistema “DEVPATH” con riferimento alla directory contenente il file “System.dll” (Fase 2).

Dopo aver riavviato l’istanza di Explorer.exe oppure il computer, per rendere la variabile visibile al sistema, dovreste poter accedere al Virtual Center.

Tag:

Scrivi un commento

apr
2009
25

Linux, da sempre, si è dimostrato essere un sistema operativo eccellente in termini di performance e parsimonioso in termini di risorse, ricco di evoluzioni e aggiornamenti da parte delle fitta schiera di sviluppatori che partecipano al progetto. Questi aggiornamenti, se riguardano i vari software o librerie, vengono rilasciati dalle varie comunità sotto forma di “package”, ma se un aggiornamento riguarda il kernel, questo viene rilasciato sotto forma di file .patch. Un file patch non è altro che un file contenente le istruzione codificate (in C oppure C++) che dovranno essere aggiunte e/o rimosse dal file originale.
Ma come applicare questi aggiornamenti al codice sergente del kernel?
Utilizzando il comando “patch”, come illustrato di seguito.

Assumendo che i sorgenti del kernel sul quale applicare le patch si trovino nella directory /usr/src/linux-2.6 oppure in /usr/src/linux, copiare il file .patch in /usr/src e digitare il seguente comando:

$ patch -p1 < /usr/src/file.patch

E' possibile simulare l'installazione della patch e verificare la presenza di errori indicando l'opzione —dry-run (nessun file sarà modificato).

$ patch -p1 —dry-run < /usr/src/file.patch

Nel caso dobbiate applicare un set di patch (nell'esempio patch.bzip2) digitare:

$ bzip2 -dc /usr/src/patch.bz2 | patch -p1 —dry-run
$ bzip2 -dc /usr/src/patch.bz2 | patch -p1

Oppure se il formato archivio è gzip digitare:

$ gunzip -c /usr/src/patch.gz | patch -p1 —dry-run
$ gunzip -c /usr/src/patch.gz | patch -p1

Tag:

Scrivi un commento

feb
2009
20

Per mantenere la directory log pulita, avendo cura di cancellare solo i files ritenuti obsoleti dopo il periodo di ritenzione da voi stabilito (es. 15 giorni), potete pianificare l’esecuzione giornaliera del seguente comando.

$ find /var/log -mtime +15 \! -type d -exec rm -f {} \;
Tag:

Scrivi un commento

dic
2008
8

Qualsiasi amministratore si augura di non dover mai utilizzare questa password, ma proprio perchè il suo utilizzo non è così frequente, molti non la ricordano, oppure essendo subentrati nella gestione dei sistemi a qualcun altro, non la conoscono.
Accorgersi di non conoscerla in un momento critico, può essere davvero moltro frustrante, quindi se vi sta sorgendo il dubbio, reimpostatela.

In Windows 2000, a partire dal Service Pack 2, è possibile utilizzare il comando setpwd digitando,

  • Aprite una console (cmd.exe) e digitate setpwd /s:nomeserver(dove nomeserver è il nome del Domain Controller sul quale si intendende impostare la nuova password).

In Windows 2003, questa funzionalità è stata inserita nell’utilità di sistema Ntdsutil, ecco i passaggi da seguire:

  • Aprite una console (cmd.exe) e digitate Ntdsutil + Invio.
  • set dsrm password.
  • digitare uno dei seguenti comandi:
    • reset password on server null (per impostare la password sul server su cui si sta operando)
    • reset password on server nomeserver (dove nomeserver è il nome del Domain Controller sul quale si intendende impostare la nuova password)
  • Al termine premete q + Invio per tornare al menu precedente
  • Premete ancora q + Invio per uscire da Ntdsutil.
Tag:

Scrivi un commento

ott
2008
31

Ultimamente sto implementando un ambiente di laboratorio su Hyper-V presso un cliente e dopo alcuni giorni di lavoro vi segnalo un paio dritte che a me hanno fatto risparmiare un pò di tempo (… e mal di pancia!)

Innanzitutto, se avete a disposzione un client Vista SP1, potrebbe essere utile amministrare i vostri server fisci e virtuali da snap-in. E’ vero che è già disponibile System Center Virtual Machine Manager che fornisce funzionalità aggiuntive, ma è anche vero che quest’ultimo necessita di licenza a parte. Nonostante questo, l’utilizzo dei Remote Server Administration Tool (o il singolo snap-in di Hyper-V) si è dimostrato molto efficace nella situazione in cui l’ho implementato. Il gorsso vantaggio riscontrato è che è possibile distribuire il tool di gestione remota avendo però il controllo delle operazioni che gli utenti possono effettuare sulle macchine virtuali e sul server, delegando in modo “abbastanza tranquillo” la gestione degli Hyper-V server.

Tutto ciò è fattibile grazie alla possibilità di creare “ruoli” custom all’interno della gestione dei server virtuali ai quali è possibile associare gruppi o utenti Active Directory. Ne mio caso ho utilizzato un ruolo “administrator” per la gestione completa dell’ambiente virtuale (creazione macchine virtuali, modifiche al HW virtuale, connessione alla console, ecc..) che è stata attribuita al team dei sistemisti, e di un ruolo “developer” per la gestione essenziale della mcchine (accensione\spegnimento, snapshot, ecc…) messo a disposizione del team di sviluppo.

Per i dettagli della implementazione di tale soluzione può tornarvi utile il seguente link per due motivi: primo perchè è quello che ha aiutato me e secondo perchè non vorrei prendermi meriti che non mi spettano!! :-)

Un’altra situazione che potrebbe darvi qualche grattacapo è quella della modifica delle caratteristiche dei dischi virtuali (tipo, dimensione, ecc…): in questo caso ricordatevi sempre di controllare se ci sono degli snapshot!! Se avete creato delle “fotografie” in momenti diversi della vita del vostro server virtuale (troppo sdolcinato??) e dovete modificare la dimensione dei dischi per una qualsiasi ragione, eliminate gli snapshot, spegnete la macchina virtuale e attendete che le operazioni di merging siano terminate(anche se durante la modifica del disco prima del merge nessun pop-up vi avviserà che l’operazione crea danni a non finire…)

L’altra dritta che potrebbe risolvervi un pò di problemi, è quello di utilizzare nelle macchine virtuali le schede di rete Legacy invece delle schede che utilizzano i driver contenuti nelle “additions” di Hyper-V. Sinceramente non so ancora dirvi con precisione il motivo reale per cui i driver Legacy funzionano meglio di quelli inclusi nel role di 2008 ma credo sia dovuto alla “giovane età” del prodotto (anche se per molti versi mi ricordano i problemi che si hanno con la gestione delle netwok connection di Vista…): in ogni caso se ho qualche news vi terrò aggiornati. Nel frattempo posso dirvi che i consigli forniti sono maturati dopo diversi giorni di test su configurazioni di ambienti virtuali Windows 2003\2008 con implementati Sql 2005 e Share Point, ciò non toglie che sono gradite segnalazioni\delucidazioni da parte vostra in merito!

Tag:

Scrivi un commento

set
2008
30

Se volete conoscere quali porte sono aperte sul vostro server Linux,
eseguite:

$ lsof -i -n

oppure solo le porte TCP:

$ lsof -i TCP -n

oppure solo le porte UDP:

$ lsof -i UDP -n
Tag:

Commenti (1)

set
2008
26

Se dovete eseguire download periodici da un sito ftp da cui i file originali non vengono rimossi, evitando di riscaricare tutto ogni volta ed essendo sicuri che i file scaricati siano consistenti,
eseguite:

$ wget –ftp-user=”$USER” –ftp-password=”$PASS” -N -c –no-remove-listing $FTP/$dir/*.xyz

WGET provvederà a creare un file (.listing) nella directory di download che conterrà elenco e dimensione dei file presenti sul server che poi confronterà con i file precedentemente scaricati, occupandosi di completare il download degli eventuali file incompleti e di scaricare quelli nuovi.

Tag:

Scrivi un commento

set
2008
24

Se dovete collegare una interfaccia ethernet del vostro server alla rete e non riuscite a distinguere l’eth0 dalla eth1 o eth2.
eseguite:

$ ethtool -p eth0 10

Questo farà lampeggiare il LED della scheda per 10 secondi, senza interrompere il traffico di rete.

Tag:

Scrivi un commento

Banner