Storie dalla Sala Macchine


Home Page | Commenti | Articoli | Faq | Documenti | Ricerca | Archivio | Storie dalla Sala Macchine | Contribuire | Imposta lingua:en it | Login/Register


O Tutti, O Nessuno

E' lunedi' (incidentalmente) e come tutti i lunedi' abbiamo i problemi che si sono accumulati durante il week end e che invece di essere sistemati o controllati durante il fine-settimana dal pinguino preposto, sono stati semplicemente ignorati, cosi' adesso ce li ritroviamo tutti insieme con tutto il resto delle richieste/lamentazioni che si sono accumulate.

Tanto perche' mi voglio male, pesco il primo della pila e comincio a guardarlo.

Allora CL della ditta di CL che si lamenta che la procedura per la modifica di questo-e-quello che noi abbiamo implementato non ha funzionato per tutto il fine settimana e nonostante abbia chiamato piu' volte il numero di pronto intervento l'intervento non e' stato pronto. Non e' stato per niente in effetti.

Dopo aver mandato una maillina a DumBoss perche' si preoccupi che chi dovrebbe rispondere alle chiamate lo faccia, mi metto a guardare questa "procedura".

La prima fase e' di cercare informazioni al riguardo nel nostro Wiki. Ovviamente non trovo un accidente di utile. Una paginetta scarna che dice che tale procedura e' stata richiesta con un certo ticket e basta.
Guardo il ticket, dove c'e' una vaga richiesta di prendere dei dati da un database e renderli disponibili per una qualche procedura che non si capisce bene che cosa dovrebbe farne.

Ovviamente il ticket e' "chiuso" ed il "chiusore" e' lo stesso pinguino (PG) che non risponde alle chiamate di emergenza.

Ergo, gli rigiro il nuovo ticket con nota di documentare la cosa.

Fast forward di un paio di giorni, quando CL della ditta di CL di sopra, chiama per sapere che cosa ne e' stato del suo ticket e della sua procedura. A questo punto, non avendo la piu' pallida idea di come sono andate le cose, gli dico che mi informo e vado direttamente a rompere le balle a DumBoss.

DB - Ma PG che ha detto?
IO - A me non ha detto niente, e dato che i Ticket che sono assegnati a qualcuno non sono visibili da nessuno che non sia super-mega-admin, non ho la piu' pallida idea.
DB - Ma lo hai domandato a PG?
IO - Come potrei domandarglielo se non e' in ufficio e non compare "on line" nella chat?
DB - Hummm... Non mi pare sia in ferie...
IO - Questo lo sai tu e non io...
DB - Ok, vediamo quando arriva cosa dice...
IO - Sono le 10.30... L'orario "ufficiale" non sarebbe dalle 8~8.30 in poi ?
DB - ...eh...

In ogni cao PG decide di arrivare "con comodo" dopo le 11. A questo punto viene placcato immediatamente.

DB - Che e' successo con il ticket di CL?
PG - Quale ticket di CL?
IO - Quello che ti ho girato Lunedi', riferito alla procedura che tu avresti dover fatto per loro e che non e' documentata da nessuna parte.
PG - Ah, non ho avuto tempo di guardarlo.
IO - Ottimo e lo hai detto a CL?
PG - No. Non ho avuto tempo.
DB - Ok, avvisa CL allora.
IO - Tanto per curiosita', che hai combinato da Lunedi' ad oggi?
PG - Ah, quella roba per $megaditta...
IO - Quella che ho risolto io la settimana scorsa e l'ho anche detto Lunedi' durante la Riunione Settimanale?
PG - ...Ah l'hai risolta ?
IO - Ma dormivi durante la riunione o facevi solo finta?

Ottimo, quindi PG ha passato 3 giorni a fare un cazzo probabilmente, comunque il problema e' sempre suo e lo lascio nel suo brodo. Passano un altro paio di giorni e mi ritrovo di nuovo CL al telefono, che si lamenta che non ha sentito un fico secco. Ri-andiamo a trovare PG, che goduria!

IO - Ho di nuovo CL al telefono che chiede di sapere che succede.
PG - Ah, niente.
IO - Niente cosa?
PG - Non sta succedendo niente.
IO - Lo so, perche' non lo dici anche a CL?
PG - Voglio dire, la procedura funziona.
IO - Non secondo CL.
PG - Vabbe' io non posso farci niente.
IO - Visto che l'hai fatta tu, dovresti poterci fare qualche cosa e come minimo dovresti spiegarlo a CL.
PG - La procedura gira, io non so perche' a CL non funzioni.
IO - Dillo e domandalo a CL allora.

E me ne vado prima di cominciare a tirargli delle madonne...

La settimana successiva CL ritorna alla carica, questa volta pero' chiama direttamente DumBoss, il quale, per qualche anomalo motivo, viene da me!

DB - ...quindi secondo CL la procedura non funziona.
IO - E perche' lo dici a me? La procedura l'ha fatta PG.
DB - Si ma PG pare che non sappia come farla funzionare...
IO - Senti, se io faccio uno script e a te non ti funziona, tu non dici a PG di guardarlo, lo dici a me. Percui perche' non lo dici a PG di sistemarsi il suo script? Non dovrebbe essere troppo difficile. Se l'ha fatta questa cazzo di procedura.

Ovviamente dopo un po' mi metto a guardare questa cazzo di "procedura", che si rivela essere uno "script" Ansible.
Se non sapete che roba e' Ansible vuole dire che siete rimasti indietro in tutta la faccenda DevOps e compagnia cantante, non vi siete persi niente effettivamente.

Ansible e' un... "coso" che in sostanza implementa una versione un pelo migliorata di "Expect". Consente id mandare comandi via SSH ad un server e ricevere risposte. Fa anche altre cose ma lo scopo in generale e' quello di copiare ed eseguire roba su server remotamente. Il problema e' che... Non e' un linguaggio di programmazione. Anche se molta gente lo considera tale.

Per esempio, non e' possible fare una costruzione del tipi "Se questo Allora quello...". E' possibile dirgli "verifica che X sia installato e se non lo e' installalo", ma non "Se X e' installato allora..."

Ora, apparentemente quello che PG ha realizzato e' un modo molto convoluto di copiare dei files da una parte all'altra e poi farci girare sopra un "grep"... Una cosa che sarebbe stata molto piu' semplice fare direattamente senza scomodare Ansible.

Faccio girare quell'arnese e mi ritorna un errore. Sembra che qualche cosa non sia come dovrebbe essere.

IO - Eccoti il problema: non funziona.
PG - Quello e' solo la parte iniziale.
IO - E non funziona. Se la parte iniziale non funziona, probabilmente la parte finale non viene nemmeno eseguita. Hai provato questo affare?
PG - Ma no, non e' un problema se la parte iniziale non funziona.
IO - Vediamo questo "script"... La parte iniziale e' quella che copia un file da una parte ad un'altra. E gia' quella non funziona. Come fai a procedere se quella parte non funziona.
PG - Probabilmente perche' il file non e' li'.
IO - E se non e' li' come dovresti elaborarlo?
PG - Se non e' li' non lo elaboro, semplice.
IO - (fai login sul server, ls, il file e' presente) Il file e' li'.
PG - ....
IO - (rilancia procedura: errore) Quindi non e' che il file non e' li'.
PG - ...questo non lo avevo visto.
IO - Bene, adesso lo hai visto. Puoi procedere a debuggare.
PG - E come faccio?
IO - Non lo so. Tu hai detto che facevi la procedura, adesso hai visto dove sta' il problema, adesso procedi. Ed avvisa CL.

Tanto lo so gia' che non succedera' niente di tutto cio'. La procedura continuera' a non funzionare e nessuno avvisera' CL.

Davide
02/05/2018 15:35

Precedente Successivo

I commenti sono aggiunti quando e soprattutto se ho il tempo di guardarli e dopo aver eliminato le cagate, spam, tentativi di phishing et similia. Quindi non trattenete il respiro.

9 messaggi this document does not accept new posts

Naxos

Di Naxos postato il 23/05/2018 09:01

Questa moda del DevOps passerà, prima o poi: spero più prima che poi. Riguardo ad Ansible: hai perfettamente ragione; chi non ne ha mai saputo niente non si perde niente - a quanto pare serve solo ai pinguini per farli sentire struzzi...

-- Naxos

emi_ska

Di emi_ska postato il 23/05/2018 09:07

Ciao, sono daccordo che il linguaggio usato da Ansible (yaml) non sia un linguaggio di programmazione, ma come programma è ottimo se devi realizzare installazioni in serie su molti servers...

Certo che usarlo per spostare un file e poi fare una grep... faceva prima con uno script sh!!!

P.S. Sono sempre felice quando arrivo in ufficio, accendo e c'e' una tua storia!!

-- emi_ska

Nik

Di Nik postato il 23/05/2018 11:03

Ma PG ci è o ci fa? (o entrambe?)

-- Chronicles of a Broken Heart

Guido

Di Guido postato il 24/05/2018 07:36

PG - Ah, quella roba per $megaditta...

IO - Quella che ho risolto io la settimana scorsa e l'ho anche detto Lunedi' durante la Riunione Settimanale?

PG - ...Ah l'hai risolta ?


 

Signori ecco un genio! Uno che sta due giorni a fare qualcosa gia' fatto da altri...

-- who uses Debian learns Debian but who uses Slackware learns Linux

Anonymous coward

@ Guido Di Anonymous coward postato il 24/05/2018 13:45

> "Signori ecco un genio! Uno che sta due giorni a fare qualcosa gia' fatto da altri"

 

...lo scemo sono io, che dopo 40 giorni che qualcuno non riesce a fare un restore, in seguito all'ennesima escalation ci provo, e nel giro di 4 ore ho finito.

 

-- Anonymous coward

Guido

@ Anonymous coward Di Guido postato il 25/05/2018 07:43

...lo scemo sono io, che dopo 40 giorni che qualcuno non riesce a fare un restore, in seguito all'ennesima escalation ci provo, e nel giro di 4 ore ho finito.

Consolati non sei da solo - figurati da questo lato dello schermo io oltre a fare il mio lavoro (sviluppare sw) mi tocca anche fare assistenza sistemistica a $HOSTING_PAMPERS (si hai letto bene! Sono io che devo dire a loro qual'e' il problema e come si risolve)

 

 

 

-- who uses Debian learns Debian but who uses Slackware learns Linux

Anonymous coward

Di Anonymous coward postato il 25/05/2018 18:51

Ma licenziare PG? Dopotutto uno che arriva quando gli pare e non fa le cose che dovrebbe fare, che lo pagate a fare?

-- Anonymous coward

Messer Franz

Di Messer Franz postato il 26/05/2018 10:37

Riguardo la storia: ma PG è almeno il parente o l'amante del boss? Cioè, un motivo ce l'ha per stare in ditta? O semplicemente la trafila per un licenziamento è troppo lunga in quell'azienda?

A parte: hai presente che (se ho capito bene) non ti stava troppo simpatico l'Ubuntu? Ecco, per lavoro (vari motivi) ho dovuto sviluppare sotto linux, e , dato che non avevo dieci anni e rotti* per imparare le basi di come installare un programma sotto un linux "vero"  (bestemmiare liberamente su quelle <censura> di librerie mancanti inesistenti non documentate vecchia versione ma il codice non c'è più o non va con l'ultima versione dello gnu ecc.) e quindi sono andato di ubuntu (xubuntu, per la precisione); bene, prima hanno tolto il supporto per i pc "vecchi" (perchè si sa che un linux "leggero" non viene mai usato per pc di quel tipo) , ma ora con l'ultima versione che ho provato ad installare un mesetto fa ti posso dire che è andato a schifìo; non installa, non "legge" i repository, capriole per fargli solo compilare del codice... ho reistallato la precedente (la 16, mi pare) e tutto ok.

Quindi non sono io (non del tutto , per lo meno).

Quindi gioisci, l'Ubuntu sta non per morire come un qualsiasi prodotto schifoso, ma si sta suicidando teatralmente emettendo rantoli in faccia a chi lo usa...

 

*UNIX is basically a simple operating system, but you have to be a genius to understand the simplicity - Dennis Ritchie

-- Messer Franz

Daniele Lupo

Di Daniele Lupo postato il 01/06/2018 14:05

Tutto molto bello ma io ancora aspetto la storia di $succhiasangue dopo quella di $formaggini...

-- Daniele Lupo

9 messaggi this document does not accept new posts

Precedente Successivo


Il presente sito e' frutto del sudore della mia fronte (e delle mie dita), se siete interessati a ripubblicare uno degli articoli, documenti o qualunque altra cosa presente in questo sito per cortesia datemene comunicazione (o all'autore dell'articolo se non sono io), cosi' il giorno che faccio delle aggiunte potro' avvisarvi e magari mandarvi il testo aggiornato.


Questo sito era composto con VIM, ora e' composto con VIM ed il famosissimo CMS FdT.

Questo sito non e' ottimizzato per la visione con nessun browser particolare, ne' richiede l'uso di font particolari o risoluzioni speciali. Siete liberi di vederlo come vi pare e piace, o come disse qualcuno: "Finalmente uno dei POCHI siti che ancora funzionano con IE5 dentro Windows 3.1".

Web Interoperability Pleadge Support This Project
Powered By Gojira