Tales from the Machine Room


Home Page | Comments | Articles | Faq | Documents | Search | Archive | Tales from the Machine Room | Contribute | Login/Register

Sessantaquattrobit en

E continuamo a parlare di $noiguardiamolavostrarobba, che dopo la semi-debacle del doppio update sincronizzato ancora non si sono dati per vinti con la loro "gestione" dell'ambiente. Questa volta hanno deciso di applicare un qualche "update" ad uno dei loro servizi che gira su uno dei server sotto JBoss. Il problema di questo arnese era che dovrebbe far funzionare due applicazioni, entrambe sotto JBoss, ma per qualche motivo sconosciuto (temperamento forse), mettere entrambe le applicazioni sotto JBoss e' impossibile perche' crasha JBoss (??!??!) ecco che il marpione di turno ha trovato la Soluzione: usare due istanze di JBoss, ognuna dedicata ad una singola applicazione. Non c'e' bisogno di dire che in questo modo fare un rilascio e' gia' un casino (ma ora se le fanno da soli quindi sono cavoli loro), e che avere due JBoss invece di uno richiede il doppio delle risorse. Aggiungiamo che queste applicazioni (qualunque cosa siano) non sono esattamenet "parche" nel loro uso e capiamo che c'e' gia' qualche problemino.

Un ulteriore problema si verifica quando, per qualsivoglia motivo, una delle due applicazioni si incarta aprendo millemila connessioni al database e mandandolo (il database) in coma. A questo punto si verifica un bellissimo "effetto domino" con tutti i gli altri servizi che cascano come mosche e ritirare su l'intero ambaradan e' un'impresa. L'unica soluzione trovata fino ad ora (ed anche l'unica che e' approvata dal branco di rintronati proprietari dell'intero ambaradan) e' spegnere brutalmente tutti gli application servers, lasciar calmare il db server (sussurrandogli paroline dolci eventualmente finche' non si ripiglia) e poi riavviare tutti i vari servizi uno alla volta, facendo estrema attenzione alla sequenza ovviamente che se non si incastra tutto al suo posto come un gioco di Tetris si e' punto ed a capo.

Ondepercuicio, quando mi e' suonato il telefono ed ho visto il numero chiamante di $noiguardiamolavostrarobba, mi sono subito preoccupato. Sorvolo sui convenevoli.

UL - ...quindi vorremmo effettuare un nuovo rilascio sul server JBoss ed allo stesso tempo aumentare la ram installata sulla macchina da 4 a 6 gigabytes e la ram riservata all'istanza 2 di JBoss da 2 a 4 Gb.
IO - Dunque, dovrei prima di tutto guardare quanta ram e' disponibile sull'Host prima di...
UL - Si puo' fare immediatamente?
IO - Immediata..?? Ho appena finito di dire che prima devo guardare se abbiamo ram disponibile sull'Host!
UL - Ottimo, allora io comincio con l'aggiornamento, al termine potete spegnere il server ed aggiungere la ram.
IO - Quajo', ma ci sei o ci fai?? Ti ho appena detto che PRIMA (cioe' adesso) devo vedere quanta ram e' disponibile...
UL - Voglio parlare con il capo!
IO - Come no, basta che te ne vai!

Detto e fatto gli passo DaBoss e comincio subito a sentire geremiadi provenire dal suo ufficio. Intanto verifico e scopro che l'Host e' pieno zeppo. Ergo, l'unica soluzione per aggiungere Ram e spostare il server da un Host all'altro. Mi metto percio' a coordinare la cosa con P che deve gestirsi le vLan nello switch ed il routing, ragion per cui quando DaBoss mi arriva madonnando contro UL sono gia' a buon punto.

L'aggiornamento del loro sistema va' come dovrebbe andare (oppure no, dato che se lo gestiscono da soli non e' che mi tanga piu' di tanto) e poi l'host viene spento. Rapido spostamento della macchina da un host all'altro, riconfigurazione con +2 Gb di ram, avvio... e JBoss non parte piu'.

Morta#$!)$!~# che accidenti ha adesso questo arnese?? Un controllo mi dice che JBoss non si avvia e non logga niente, ma la primaa istanza (quella che non ha avuto l'aggiunta di Ram) si avvia Ok... Hummm.. prima aveva 2Gb, adesso ne ha 4... eh si'. Perche' JBoss possa usare piu' di 3 Gb di ram, deve usare Java 64bit. Ma per usare Java a 64 bit, per definizione, devi anche avere un OS a 64 bit. E questo e' ancora a 32... Ergo...

IO - ...quindi o reinstalliamo la macchina con un OS a 64 bit o teniamo JBoss a 3 Gb.
UL - Ma io ho bisogno di 4 Gb come minimo!
IO - Quindi bisogna re-installare la macchina.
UL - Ma quanto costa?
IO - Un paio d'ore di lavoro di sicuro, poi bisognera' trasferire il software da un sistema all'altro e poi...

Ul inizia una serie di germiadi interminabili, ondepercui io gli giro DaBoss ed aspetto che si calmi e/o muoia disidratato. Dopo un paio d'ore DaBoss da' il via libera per l'installazione di una nuova macchina virtuale a 64 bit.

Ora, io potrei ripetermi indefinitamente, ma se questi rintronati avessero verificato PRIMA su un sistema di test se potevano o no usare la versione di JBoss che avevano con 4 Gb di ram o no non si sarebbero ritrovati all'ultimo secondo con mezz'ora di downtime (di nuovo) perche' non hanno previsto di dover usare cosi' tanta ram sull'ambiente di prova. E dimostra, come se ce ne fosse ancora bisogno, che non sempre chi risparmia i centesimi guadagna i milioni.

Davide
19/11/2012 08:00

Previous Next

Comments are added when and more important if I have the time to review them and after removing Spam, Crap, Phishing and the like. So don't hold your breath. And if your comment doesn't appear, is probably becuase it wasn't worth it.

14 messages this document does not accept new posts
Anonymous coward By Anonymous coward - posted 19/11/2012 08:26

Quando, nella mia ignoranza a 64Kbyte che poteva gestire lo Z80, sentire che un applicazione java ha bisogno di 4GByte, subito mi fa accendere il pannello di allarme "qui c'e' qualcosa di PROFONDAMENTE sbagliato".

Che poi un cretino sia cosi' ignorante da non sapere il discorso "SE  >= 4G ALLORA servono i 64Bit" mi fa venire voglia di comprare armi da guerra sulle ebay clandestine russe, che un motivo per usarle sicuramente c'e'.

--
Anonymous coward


Anonymous coward@ Anonymous coward By Anonymous coward - posted 20/11/2012 23:25

"qui c'e' qualcosa di PROFONDAMENTE sbagliato".

Dipende. Se sei Amazon e stai gestendo gli ordini di mezzo mondo magari no. Se hai dieci connessione attive probabilmente sì...

--
Anonymous coward


Anonymous coward@ Anonymous coward By Anonymous coward - posted 25/11/2012 13:43

Che poi un cretino sia cosi' ignorante da non sapere il discorso "SE  >= 4G ALLORA servono i 64Bit" mi fa venire voglia di comprare armi da guerra sulle ebay clandestine russe, che un motivo per usarle sicuramente c'e'.

 

spero sia solo un riassunto del tuo pensiero, perché quella è una limitazione principalmente di Java e niente impedisce a una macchina 32bit di indirizzare 64gb di ram usando pae, ne a un applicazione di usare più di 4Gb di ram tramite delle address extensions.

 

poi il fatto che alla sun fossero pigri è un altro discorso (in realtà hanno questa limitazione fastidiosa che l'address space deve essere contiguo, ma nn so perché)

--
Anonymous coward


Verzasoft By Verzasoft - posted 19/11/2012 08:38

no dai non possono essere cosi' mentecatti da non sapere che 32bit <= 4gb ram...

--
http://www.verzasoft.tk


Guido By Guido - posted 19/11/2012 09:16

Ora, io potrei ripetermi indefinitamente, ma se questi rintronati avessero verificato PRIMA su un sistema di test se potevano o no usare la versione di JBoss

 

Ora io non vorrei dire, ma se avessero verificato prima non sarebbero rintronati no? e se avessero verificato prima probabilmente avrebbero fatto debug, e forse cercato di snellire il "mostro" (e forseforseforse anche evitato di avere 2 istanze di JB)

--
He who controls the past commands the future. He who commands the future, conquers the past - Kane


Anonymous coward By Anonymous coward - posted 19/11/2012 10:23

"una delle due applicazioni si incarta aprendo millemila connessioni al database e mandandolo (il database) in coma."

Ma usare il connection pooling del db (servizio gratuito eh, offerto proprio da jboss...) pare brutto? Perché c'è ancora in giro gente che non sa scrivere un try..catch..finally in modo decente e dare db.close() alla fine o dentro il finally almeno?!?

La pagano pure questa gente...

--
Anonymous coward


Anonymous coward By Anonymous coward - posted 20/11/2012 19:58

concordo col primo commento..... altro che 32-64bit, che mazza ci devi fare con 4 GB ? o programmi da schifo o devi mandare un razzo sulla luna. Ma lo shuttle non credo usi 4gb.

--
Anonymous coward


maxxfi@ Anonymous coward By maxxfi - posted 21/11/2012 19:25

>concordo col primo commento..... altro che 32-64bit, che mazza ci devi fare con 4 GB ? o programmi >da schifo o devi mandare un razzo sulla luna. Ma lo shuttle non credo usi 4gb.

Beh, per andare sulla Luna all'Apollo Guidance Computer sono 'bastati' 2k-word (a 16 bit) di RAM.

Ma erano altri tempi, quando i programmatori erano programmatori... wink

 

--
maxxfi


Alquanole By Alquanole - posted 21/11/2012 11:07

Ora, io potrei ripetermi indefinitamente, ma se questi rintronati avessero verificato PRIMA su un sistema di test

non avremmo la storia del lunedì (o del mercoledì, nel mio caso)

Però son curioso anch'io che tipo di "servizio" è per necessitare tutte ste risorse?

Perchè lo Space Shuttle se la cavava con un IBM AP-101 (dei 5 montati per ridondanza in un sistema di failsafe progettato, probabilmente, da Murphy in persona)

--
Alquanole


Codardo anonimo By Codardo anonimo - posted 21/11/2012 13:59

Quoto l'anonimo del 20/11, ore 19:58, aggiungendo una postilla: 4 giga anche per mandare un razzo sulla Luna sono "troppissimi", considerando che le macchine che mandarono le missioni Apollo sul nostro satellite ragionavano, se va bene, nell'ordine della decina di K (, kilobyte). Quindi, buona la prima: programmano alla "mentula canis".

--
Codardo anonimo


Eremita Solitario By Eremita Solitario - posted 21/11/2012 16:50

Se poi pensiamo che quando siamo andati sulla luna tutta quella RAM manco esisteva...

--
Eremita Solitario


Messer Franz By Messer Franz - posted 22/11/2012 18:36

Quando si tratta di mandare apolli sulla luna la RAM bastava?

Beh , ma gli apolli non erano mica in php!Senno' tanti ciao...non si staccavano nemmeno dalla rampa di lancio...

--
Messer Franz


Mr.Wolf By Mr.Wolf - posted 22/11/2012 19:31

eh eh eh... mi e' venuta cosi':

64 bit, in fila per 3 col resto di 1... :-\)

--
Mr.Wolf


Mr.Wolf By Mr.Wolf - posted 22/11/2012 19:33

Comunque capisco benissimo...

I programmatori dicono... tanto ormai la ram ed i dischi non costano piu' nulla (e sprecano risorse a dx e a sx), poi passano da te che fai il conto delle risorse (ed i dischi sas costano ancora) e saltano gli ambienti di test... tanto a cosa servono?!? Tristezza, ma tutto il mondo e' paese!

--
Mr.Wolf


14 messages this document does not accept new posts

Previous Next


This site is made by me with blood, sweat and gunpowder, if you want to republish or redistribute any part of it, please drop me (or the author of the article if is not me) a mail.


This site was composed with VIM, now is composed with VIM and the (in)famous CMS FdT.

This site isn't optimized for vision with any specific browser, nor it requires special fonts or resolution.
You're free to see it as you wish.

Web Interoperability Pleadge Support This Project
Powered By Gojira