Panoramica
Il server SnapCenter consente di implementare e gestire le applicazioni come plug-in per SnapCenter. Le applicazioni di tua scelta possono essere collegate al server SnapCenter per la protezione dei dati e. funzionalità di gestione.
SnapCenter consente di sviluppare plug-in personalizzati utilizzando diversi linguaggi di programmazione. È possibile Sviluppare un plug-in personalizzato utilizzando Perl, Java, BATCH o altri linguaggi di scripting.
Per utilizzare plug-in personalizzati in SnapCenter, è necessario eseguire le seguenti operazioni:
-
Creare un plug-in per l'applicazione seguendo le istruzioni di questa guida
-
Creare un file di descrizione
-
Esportare il plug-in personalizzato per installarlo sull'host SnapCenter
-
Caricare il file zip del plug-in nel server SnapCenter
Gestione di plug-in generici in tutte le chiamate API
Per ogni chiamata API, utilizzare le seguenti informazioni:
-
Parametri del plug-in
-
Codici di uscita
-
Registrare i messaggi di errore
-
Coerenza dei dati
Utilizzare i parametri del plug-in
Un insieme di parametri viene passato al plug-in come parte di ogni chiamata API effettuata. La seguente tabella elenca le informazioni specifiche per i parametri.
Parametro | Scopo |
---|---|
AZIONE |
Determina il nome del flusso di lavoro. Ad esempio, Discover, backup, fileOrVolRestore o. CloneVolAndLun |
RISORSE |
Elenca le risorse da proteggere. Una risorsa è identificata da UID e Type. L'elenco viene presentato al plug-in nel seguente formato: "<UID>,<TYPE>;<UID>,<TYPE>". Ad esempio, "Instance1,Instance;Instance2,DB1,Database" |
NOME_APP |
Determina quale plug-in viene utilizzato. Ad esempio, DB2, MYSQL. Il server SnapCenter dispone di un supporto integrato per le applicazioni elencate. Questo parametro fa distinzione tra maiuscole e minuscole. |
APP_IGNORE_ERROR |
(Y o N) questo causa l'uscita di SnapCenter quando si verifica un errore dell'applicazione. Ciò è utile quando si esegue il backup di più database e non si desidera un singolo errore interrompere l'operazione di backup. |
<RESOURCE_NAME>__APP_INSTANCE_USERNAME |
La credenziale SnapCenter è impostata per la risorsa. |
<RESOURCE_NAME>_APP_INSTANCE_PASSWORD |
La credenziale SnapCenter è impostata per la risorsa. |
<RESOURCE_NAME>_<CUSTOM_PARAM> |
Il valore della chiave personalizzata di ogni livello di risorsa è disponibile per i plug-in con prefisso "<RESOURCE_NAME>_". Ad esempio, se un La chiave personalizzata è "MASTER_SLAVE" per una risorsa Denominato "MySQLDB", sarà disponibile come MySQLDB_MASTER_SLAVE |
Utilizzare i codici di uscita
Il plug-in restituisce lo stato dell'operazione all'host mediante i codici di uscita. Ciascuno il codice ha un significato specifico e il plug-in utilizza il codice di uscita destro per indicare lo stesso.
La tabella seguente illustra i codici di errore e il relativo significato.
Codice di uscita | Scopo |
---|---|
0 |
Operazione riuscita. |
99 |
L'operazione richiesta non è supportata o implementata. |
100 |
Operazione non riuscita, ignorare e uscire. Unquiesce è per impostazione predefinita. |
101 |
Operazione non riuscita, continuare con l'operazione di backup. |
altro |
Operazione non riuscita, eseguire senza problemi e uscire. |
Registrare i messaggi di errore
I messaggi di errore vengono passati dal plug-in al server SnapCenter. Il messaggio include il messaggio, il livello di log e l'indicatore di data e ora.
La tabella seguente elenca i livelli e i relativi scopi.
Parametro | Scopo |
---|---|
INFO |
messaggio informativo |
ATTENZIONE |
messaggio di avviso |
ERRORE |
messaggio di errore |
DEBUG |
messaggio di debug |
TRACCIA |
messaggio di traccia |
Preservare la coerenza dei dati
I plug-in personalizzati mantengono i dati tra le operazioni della stessa esecuzione del workflow. Per ad esempio, un plug-in può memorizzare i dati alla fine di quiesce, che possono essere utilizzati durante le richieste operazione.
I dati da conservare vengono impostati come parte dell'oggetto risultato tramite plug-in. Segue un formato specifico ed è descritto in dettaglio in ogni stile di sviluppo del plug-in.