Blog ID-INFO

Lanciamo un SAVE21!

Avete bisogno di centralizzare tutti i dati del vostro sistema IBM i in un unico backup? È facile: lanciamo un SAVE21!

Tutti nella comunità IBM i conoscono questo termine grazie a un’opzione di menu: ci si collega al menu nativo di gestione dei backup (GO SAVE), si seleziona l’opzione 21 e tutto ciò che si deve fare è seguire le istruzioni a schermo.

D’altra parte, non avete le risorse per stare davanti a uno schermo tutta la notte? Facile: inviate questo backup come file batch! Come lo facciamo? È così facile! Seguite questo articolo e vi mostreremo come preparare il vostro SAVE21 in batch.

Che cosa salvaguarda SAVE21?

Questo include il firmware, il sistema (compresi i dati di sicurezza e di configurazione), tutte le librerie e l’intero IFS (compresa la directory QDLS, il famoso “DLO”). Si parla anche di “backup dell’intero sistema”, in contrapposizione al semplice “backup del sistema”, che in realtà si riferisce a un SAVSYS o all’opzione 22 del menu SAVE.

I due termini non sono del tutto indipendenti. SAVE21 include un SAVSYS, a cui aggiunge un backup completo dei dati dell’utente, equivalente all’opzione 23 del menu SAVE.

Per tutti i comandi elencati in questo articolo, <device> si riferisce all’unità in cui è inserito <volume>, il supporto di backup utilizzato. I comandi di backup inclusi in SAVE21 sono i seguenti:

Backup del firmware e del sistema :

SAVSYS DEV(<dispositivo>)
VOL(<volume>)
ENDOPT(*LEAVE)

Backup del resto delle librerie (librerie “non di sistema”) :

SAVLIB LIB(*NONSYS)
DEV(<dispositivo>)
VOL(<volume>)
ENDOPT(*LEAVE)

Salvataggio di “DLO” (contenuto di /QDLS) :

SAVDLO DLO(*TUTTI)
DEV(<dispositivo>)
VOL(<volume>)
ENDOPT(*LEAVE)

Backup dell’intero IFS (tranne /QDLS e /QSYS.LIB, che sono già stati sottoposti a backup) :

SAV DEV(‘/qsys.lib/<device>.devd’)
OBJ((‘/*’)
(‘/QSYS.LIB’ *OMIT)
(‘/QDLS’ *OMIT))
VOL(<volume>)
ENDOPT(*REWIND)

 

Quando devo presentare il mio SAVE21?

SAVE21 deve salvare TUTTO. Ciò significa che tutti gli oggetti del sistema devono essere disponibili per il processo di backup. Per garantire ciò, IBM ha limitato l’accesso a SAVE21 al periodo in cui il sistema è in modalità ristretta, cioè quando tutti i lavori e i sottosistemi sono fermi.

Tuttavia, questa modalità ristretta ha gravi conseguenze: l’IBM i è inaccessibile e solo un lavoro può essere eseguito sul sistema: il lavoro di backup. Tutte le applicazioni saranno disattivate e il sistema sarà inaccessibile, gestibile solo tramite una console (HMC o LAN).

Il tempismo è tutto, e bisogna essere in grado di trovare l’intervallo in cui tale operazione ha il minor impatto possibile. È inoltre necessario verificare nel pianificatore di sistema se sono stati pianificati lavori durante il periodo di modalità ristretta, in modo da poterli riavviare (se necessario) al termine del backup.

 

Come posso inviare il mio backup?

La domanda “come” è la più complessa da rispondere nel contesto di SAVE21. Poiché la modalità ristretta impedisce di reagire una volta avviato il backup, è necessario prevedere le possibili cause di interruzione prima dell’invio: è necessario verificare che la cartuccia di backup sia inserita nell’unità e utilizzabile:

CHKTAP DEV(<device>) ENDOPT(*REWIND)

 

Verificare sempre prima che il nastro sia montato correttamente nell’unità. Questo comando rilascia anche il messaggio “CPC6778 “, in cui il nome del volume montato nell’unità può essere recuperato tramite un RCVMSG.

Nel caso di una libreria a nastro o di un VTL, si evita di dover inserire il nome del volume di backup codificato nel codice sorgente. Si noti, tuttavia, che il comando CHKTAP non funziona direttamente su una libreria a nastro; viene inviato il messaggio CPF415A. In questo caso, iniziare a trovare la banda desiderata. Utilizzare l’opzione 5 per verificare la categoria (ed eventualmente il sistema) di questa cartuccia.
Installare la cartuccia, quindi utilizzare il comando :

SETTAPCGY DEV(<dispositivo>) OPZIONE(*MONTATO) CGY(<categoria> <sistema>)

 

<Il sistema> è necessario solo se la categoria è *NOSHARE. In genere si riferisce al nome visualizzato nel DSPNETA. È inoltre necessario prestare attenzione all’inizializzazione del nastro prima di utilizzarlo:

INZTAP DEV(<dispositivo>) CHECK(*NO)

 

Successivamente, è necessario assicurarsi che il lavoro venga inviato correttamente e che sia possibile la modalità ristretta.

 

Durante la modalità ristretta, sarà attivo solo il sottosistema di controllo, con un solo lavoro all’interno. La modalità ristretta viene attivata arrestando tutti i sottosistemi e viene abbandonata riavviando il sottosistema di controllo, che attiva il programma di avvio.

Il sottosistema di controllo è indicato nel valore di sistema QCTLSBSD. Nella maggior parte dei sistemi, il sottosistema di controllo è QSYS/QCTL, e la sessione che viene eseguita al suo interno è QSYS/DSP01. È necessario assicurarsi che questi vengano avviati. Il programma di avvio è indicato nel valore di sistema QSTRUPPGM. Questo può essere personalizzato a seconda delle esigenze. È quindi necessario assicurarsi che avvii l’intera applicazione. È inoltre necessario assicurarsi che il JOBQ collegato al sottosistema di controllo sia rilasciato e che la sessione a cui è collegato il lavoro sia libera.

Infine, è necessario prendere in considerazione le prestazioni del sistema su cui si sta lavorando. Non esitate a inserire i DLYJOB, che vi permetteranno, ad esempio, di non lanciare SAVSYS prima che sia stata raggiunta la modalità ristretta. È anche possibile attendere il rilascio del messaggio CPF0968 prima di avviare il backup.

Inoltre, alcuni ordini possono attendere un risultato prima di proseguire con l’ordine successivo. Questo tempo di attesa per un risultato può essere modificato se le prestazioni sono scarse:

CHGJOB DFTWAIT(<duration_in_seconds>)

 

Infine, le prestazioni complessive del lavoro dovrebbero essere prese in considerazione anche nel comando di avvio del batch per la modalità ristretta del sistema:

ENDSBS SBS(*ALL) OPTION(*IMMED) BCHTIMLMT(<maximum_restricted_mode_time_in_minutes>)

 

Il valore indicato nel parametro BCHTIMLMT definisce la durata massima della modalità ristretta, anche se il lavoro è bloccato in un modo o nell’altro.

Occorre fare attenzione a non lasciare che questo tempo sia troppo breve per completare normalmente il lavoro, ma nemmeno troppo lungo, perché in tal caso si rischia di non essere in grado di ripristinare il sistema quando gli utenti devono collegarsi.

Una volta trascorso questo tempo, il sottosistema di controllo si riavvia, indipendentemente dal fatto che il lavoro sia stato completato o meno. Se si intende creare un programma che funzioni sia in modo interattivo che in modalità batch, è necessario condizionare questo comando: se viene specificato *NOMAX (o se il parametro viene lasciato al suo valore predefinito), il comando non funzionerà in modalità batch. Se viene specificato un valore diverso da *NOMAX, il comando non funziona in modo interattivo.

 

Altri parametri di backup :

I comandi di backup possono essere eseguiti in qualsiasi ordine, tranne SAVSYS, che deve essere eseguito per primo in modo da avere il microcodice all’inizio del backup per poter lanciare un IPL da questa sorgente.

Il parametro ENDOPT deve quindi essere adattato in base a questo ordine per indicare *LEAVE per i backup successivi e *REWIND o *UNLOAD (come richiesto) alla fine del backup. In effetti, *LEAVE consente di risparmiare molto tempo quando si riavvolge il nastro.

Il backup funziona bene, ma non è presente alcuno spool dopo il ripristino di una coda? Se gli spool sono importanti per la vostra applicazione, è essenziale specificare un parametro aggiuntivo il cui valore predefinito non consente il backup dei file di spool. In questo caso, è necessario specificare SPLFDTA(*ALL). Lo stesso vale per il contenuto dei *DTAQ: QDTA(*DTAQ).

Infine, se lo stato dei backup deve essere monitorato da un team, può essere vantaggioso modificare il parametro OUTPUT.

*PRINT recupera un file di spool, che può essere “archiviato” in uno specifico OUTQ.

*OUTFILE viene utilizzato per memorizzare il risultato di un backup in un file esterno. OUTFILE e OUTMBR devono essere indicati con *OUTFILE per specificare la posizione del file. È possibile, ad esempio, avere un membro con data e ora per ogni backup per mantenere una cronologia. Le informazioni di uscita vengono quindi impostate dal parametro INFTYPE. Per il comando IFS backup SAV, l’opzione *OUTFILE non è disponibile per il parametro OUTPUT.

Attenzione: per il comando SAVLIB LIB(*NONSYS) […] OUTPUT(*OUTFILE) OUTFILE(<biblioteca>/<outfile>), SAVE21 includerà sistematicamente un oggetto non salvato, il famoso file di uscita <biblioteca>/<outfile>. Il lavoro di backup può finire con un codice finale diverso da 0, il che può causare problemi per il monitoraggio e il reporting.

 

Come si può beneficiare di un SAVE21?

Lo svantaggio principale di un SAVE21 è che il sistema passa in modalità ristretta. Ma ogni svantaggio può essere sfruttato per diventare un punto di forza. La necessità di una modalità ristretta può essere utilizzata per presentare ordini che non sono possibili in “modalità normale”.

Ad esempio, è possibile sfruttare la modalità ristretta per lanciare un reclaim storage (RCLSTG), un’operazione hardware o operazioni che funzionano meglio in assenza di attività (interruzione della registrazione, modifica di un sottosistema, modifica del modello di test delle connessioni, ‘riorganizzazione’ dei file utilizzati più di frequente, applicazione di PTF e così via).

 

Avete domande su un argomento particolare di IBM i? Allora contattateci al numero 04 30 96 97 32 o tramite il modulo di contatto.

Partager cet article