Mainframe operations significa saper gestire tutta la suite di programmi che gestiscono il funzionamento interno di memoria, processori, dispositivi e file system di un sistema informatico ancora grandemente utilizzato dalle aziende. Nei data center, quando si tratta di rendere efficienti le mainframe operations, è importante considerare che ogni carico di lavoro in esecuzione è legato a uno specifico processo aziendale. I sistemi operativi mainframe, infatti, sono prodotti sofisticati con caratteristiche e scopi sostanzialmente differenti. Pertanto, l’IT deve dimostrare che il carico di lavoro sta generando un ROI e che il costo di esecuzione del carico di lavoro non sia superiore o sproporzionato rispetto alle entrate generate dal processo aziendale associato.
Mainframe operations e gestione dei costi
La gestione dei carichi di lavoro ha dei costi che hanno un impatto diretto sui profitti di un’organizzazione. Per questo è essenziale tenerli costantemente sotto controllo. Lo sanno bene i CIO che da diversi anni sono cablati più in operazioni di sofisticata contabilità tecnologica che di gestione operativa.
Tuttavia, garantire l’affidabilità dei carichi di lavoro del mainframe, per quanto possa avere costi apparentemente elevati, non va dimenticato che un’interruzione del servizio a seguito di bilanciamenti dei carichi sbagliati alzerà il prezzo da pagare. Fortunatamente, esistono alcune strategie per ottimizzare le mainframe operations, rendendole al contempo più efficienti.
Come ottenere processi più efficienti a livello mainframe
È tautologico affermare come l’efficienza del data center si raggiunge armonizzando il lato A (hardware) e il lato B (software) della governance in modo da farli lavorare insieme in modo ottimale. Nella realtà dei fatti, questo concetto che sembrerebbe lapalissiano nei data center ha un gran senso funzionale, considerata la rapida evolutiva dei carichi di lavoro legata a un uso incrementale di dispositivi, soprattutto sull’edge, e alla relativa crescita dei dati e dei flussi da gestire. Dunque, iniziare il processo di ottimizzazione facendo un’analisi aggiornata delle risorse hardware per valutare che non ci siano sprechi o sovraccarichi ha tutta la sua ragion d’essere.
Mainframe operations: un esempio pratico
A questo proposito i mainframe IBM generano un report sull’attività della CPU che è possibile utilizzare per comprendere meglio come vengono consumate le risorse della CPU disponibili. In questo caso, la sezione Attività della CPU riporta l’attività del core logico e del processore logico. Per ogni processore, viene generata una reportistica che fornisce una serie di calcoli granulari, differenti a secondo che il multithreading sia stato disabilitato (parametro LOADxx PROCVIEW CPU attivo) o abilitato (parametro LOADxx PROCVIEW CORE attivo). Ciò significa che:
- Se il multithreading è disabilitato per un tipo di processore, tutti i calcoli sono relativi ai dettagli del processore logico
- Se il multithreading è abilitato per un tipo di processore, alcuni calcoli vengono forniti a livello di granularità del core logico mentre altri sono a livello di granularità del processore logico (thread)
I parametri di calcolo della operatività della CPU
La sezione Attività della CPU visualizza esattamente una riga di report per ogni singolo thread, evidenziando così tutti i calcoli. Più precisamente, i calcoli forniti alla granularità del core vengono mostrati solo nella stessa riga del report che mostra l’id del core nel campo CPU NUM e che rappresenta il primo thread di un core.
I parametri di riferimento dell’elaborazione relativamente al processore logico quando il multithreading è disabilitato tengono conto di:
- Percentuale dell’intervallo di tempo in cui il processore è stato online
- Vista LPAR dell’utilizzo del processore (LPAR – Busy time percentage)
- Percentuale di un processore fisico che il processore logico può utilizzare
- Produttività core multithreading (riportata solo quando il multithreading è abilitato)
- Utilizzo del core multithreading (riportato solo quando il multithreading è abilitato)
I parametri di riferimento del processore logico (indipendentemente se il multithreading sia o meno disabilitato) tengono conto di:
- Vista MVS dell’utilizzo del processore (MVS – percentuale di tempo occupato)
- Percentuale del tempo online in cui il processore è stato parcheggiato (solo in modalità HiperDispatch)
- Tasso di interruzioni I/O (solo processori generici)
- Percentuale di interruzioni I/O gestite dal supervisore I/O senza riabilitazione (solo processori generici)
Mainframe operations: come leggere gli indicatori
Valori elevati LPAR/MVS BUSY TIME PERC potrebbero indicare che c’è un conflitto a livello di CPU. Per effettuare una verifica, bisogna addizionare le percentuali N+1, … N+150 in DISTRIBUTION OF IN-READY WORK UNIT QUEUE (dove N è il numero di processori online). Questa somma è la percentuale di tempo in cui non è stato possibile inviare almeno un’attività. Un valore superiore al 60% implica che c’è un conflitto a livello di CPU.
Anche le performance applicative sono dei rilevatori
Naturalmente, non tutti i problemi prestazionali sono legati all’hardware. Capita altrettanto spesso che a limitare le performance sia un codice di programmazione scritto male. A questo proposito esistono vari strumenti che si possono usare per cercare inefficienze all’interno del codice. Il che non significa che il processo sia facile e poco dispendioso.
Ecco perché gli esperti suggeriscono di restringere il campo dell’analisi, osservando i dati storici sulle prestazioni per vedere quali applicazioni hanno diminuito le loro performance nel tempo. Una volta identificati questi software, è opportuno correlare i cali di prestazioni a eventuali azioni intraprese, come, ad esempio:
- lo spostamento dell’applicazione
- il suo aggiornamento a una nuova versione
- un aumento del carico di lavoro dell’applicazione
- una modifica apportata a un sottocomponente apparentemente non importante
Come migliorare l’efficienza e ridurre i costi operativi
Spesso, il miglioramento dell’efficienza operativa dei mainframe si traduce direttamente in una riduzione dei costi. Tuttavia, potrebbero esserci altri modi per diminuire gli investimenti.
#1 Valutare il passaggio al cloud
Un’opzione consiste nell’eseguire una valutazione economica finalizzata a verificare se l’esecuzione su ogni determinata applicazione potrebbe costare meno gestita in cloud.
#2 Controllare le licenze
Quando il cloud non è comunque un’opzione contemplata o percorribile, la migliore opzione potrebbe essere quella di esaminare attentamente licenze e relativi contratti (supporto e così via). Non è infrequente, infatti, il rinnovo automatico di contratti di cui in realtà non si ha più bisogno. Allo stesso modo, apportare una semplice modifica al modo in cui alcune delle risorse sono concesse in licenza potrebbe consentire un notevole risparmio di denaro.
#3 Evitare la ridondanza applicativa
Un altro modo per ridurre i costi operativi è cercare applicazioni ridondate. Se, ad esempio, si dispone di due applicazioni diverse che svolgono essenzialmente la stessa operazione, è possibile ridurre la spesa consolidando tutto nell’ambito di un’unica applicazione consapevoli del fatto che la scelta, pur riducendo i costi di licenza, difficilmente ridurrà i costi di supporto.
#4 Diminuire il rischio di tempi di inattività
Un’altra area di interesse per coloro che sono interessati a ottimizzare il capitolo delle mainframe operations è cercare di minimizzare il rischio legato ai tempi di inattività. Esistono innumerevoli modi in cui un’organizzazione può migliorare la disponibilità delle applicazioni: dall’installazione di generatori di backup alla creazione di un data center di failover in un’altra regione.
Applicare il ROI in ottica di risk management
Quando si parla di mainframe operations adottare misure per ridurre il rischio di tempi di inattività va di pari passo con il calcolo del ritorno dell’investimento. Il pragmatismo è la prima regola della governance ICT. Di ogni applicazione, è bene determinare il costo orario di un’interruzione per avere un’idea oggettiva di quanto si dovrebbe realisticamente spendere tenendo conto delle misure di mitigazione del rischio. Dopotutto, la ridondanza tende ad essere piuttosto costosa ed è molto probabile che si debbano giustificare tutti gli eventuali investimenti effettuati. Ecco perché confrontare il costo di un tale investimento con il costo e la probabilità di un’interruzione, è il modo migliore e più convincente per ottenere il budget necessario a investire in soluzioni finalizzate alla mitigazione dei tempi di inattività e al miglioramento dell’efficienza dei mainframe.