Argomento precedente: Convenzioni di denominazione per entitàArgomento successivo: Guida di riferimento dell'interfaccia utente


Implementazione dei comandi CLI

Tutti i comandi eseguibili dalla shell di CA AppLogic® possono essere eseguiti anche da un client remoto tramite SSH.

In tutti gli esempi di sintassi, controllerhost è il nome host del controller di CA AppLogic® a cui si accede. Si presuppone che il client ha configurato un agente SSH per fornire le chiavi di identità necessarie ai fini dell'autorizzazione di accesso o che una chiave di accesso valida venga fornita altrimenti all'utilità SSH (ad esempio, tramite un'opzione di riga di comando o un file di configurazione). A prescindere dal metodo impiegato per fornire le opzioni di accesso, il client può utilizzare solo una chiave privata SSH2 (RSA o DSA) e deve richiedere l'accesso al controller come 'root'. È necessario aver installato la chiave pubblica corrispondente sul controller tramite l'interfaccia Web o mediante un altro utente con accesso di shell al controller.

Se si utilizza la bash GNU come shell, è disponibile un insieme di funzioni shell per accedere facilmente ai comandi CLI dalla shell, sia in modo interattivo, sia con uno script. Consultare la sezione Macro sul lato client.

ssh root@controllerhost entity command [args]

esegue un comando di shell 3t singolo (comando) sul controller

ssh root@controllerhost command entity [args]

come sopra, con il comando e il nome di entità scambiati. Entrambe le varianti di sintassi sono accettate dalla shell 3t

Note:

Comandi CLI solo con script

Di seguito sono riportati i comandi remoti per script avanzati e per implementare interfacce di shell interattive che dispongono del codice sul lato client. Consultare la sezione Macro sul lato client per un esempio di interfaccia, implementata per la shell Bash GNU.

Accesso alla shell dell'appliance
ssh [-t] controllerhost sh [args] 

Questo comando ha la stessa funzione del comando SSH nell'interfaccia CLI, ma serve solo all'attivazione diretta come illustrato in precedenza e non è possibile accedervi tramite il prompt interattivo della shell di CA AppLogic®. Consente l'installazione automatica dello pseudo-terminale sull'appliance di destinazione, per un uso trasparente dei comandi interattivi che richiedono un tty (ad esempio, l'editor 'vi').

Attivazione dei comandi con l'applicazione corrente
ssh controllerhost =appname command [args] 

Questa è una variante della normale attivazione di comando non interattiva descritta sopra, che fornisce un'applicazione corrente per il comando CLI di CA AppLogic®. È equivalente all'esecuzione dei due comandi, riportati di seguito, di shell interattiva:

ca appname 
command [args] 

Sebbene ciascun comando CLI che supporta l'applicazione corrente consenta anche di specificare un nome di applicazione esplicito, questo modo alternativo per fornire un nome di applicazione è utile per script client con la propria nozione di applicazione corrente, che utilizzano anche una funzione comune per richiamare i comandi remoti di CA AppLogic®. In questo modo per la funzione che esegue effettivamente l'attivazione del comando remoto non è necessario conoscere la sintassi del comando; se il comando particolare usa un'applicazione come argomento, il nome dell'applicazione corrente viene inserito come prima parola nel comando consentendo alla shell remota di CA AppLogic® di applicare le proprie regole per l'utilizzo dell'applicazione corrente.

Ecco un esempio semplice (bash GNU) in cui si definisce una funzione denominata 3t da utilizzare per l'attivazione di comandi remoti:

function 3t() { ssh $CONTROLLER =$APP "$@" ; } 

Con questa funzione è sufficiente impostare l'host del controller e l'applicazione corrente per iniziare a utilizzare i comandi remoti dalla shell locale inserendo, ad esempio, il prefisso 3t:

CONTROLLER=ctl.3tera.net 
APP=TWiki 
3t grid info 
3t app list  # in questo comando, il nome dell'applicazione corrente non è importante 
3t app start # il nome dell'applicazione corrente verrà utilizzato da questo punto