Argomento precedente: Kit di installazione di appliance per distribuzioni Linux Ubuntu

Argomento successivo: Kit di appliance


Installazione di appliance di Solaris
File
Compatibilità

Le versioni apk-*-solaris sono compatibili con le seguenti distribuzioni del sistema operativo:

Per installare APK è necessario:

Preparazione dell'immagine

I seguenti passaggi possono variare a seconda del modo in cui è stato originariamente installato il sistema operativo. Non vengono eseguiti dallo script di installazione di APK e sono a discrezione dell'amministratore, perché alcuni di essi sono invasivi e potrebbero danneggiare i dati, se eseguiti accidentalmente su un sistema live (anziché sull'immagine in fase di preparazione). Pertanto, è sconsigliabile eseguirli in uno script automatico.

Ignorare i passaggi non appropriati.

NOTA: dopo la pulizia, il volume può essere 'compresso' per produrre un'immagine più piccola del volume di avvio per l'appliance; accertarsi, tuttavia, che restino almeno 5-10 MB di spazio libero, per disporre di spazio sufficiente per installare APK, nonché di avere headroom, file di log, file temporanei, ecc.

Installazione di APK

L'immagine del sistema operativo deve essere montata nel file system. Se l'immagine è già installata come volume in una griglia di AppLogic, è possibile accedere ad essa tramite il comando 'vol manage' (gestione volume). Copiare il file APK nella directory /tmp sull'immagine stessa o in una directory temporanea nell'host quando l'immagine viene montata. Se l'immagine è già in una griglia, copiare i file nell'immagine stessa utilizzando l'interfaccia Web. (Altrimenti eseguire questa operazione in una griglia: notare che le seguenti operazioni devono essere eseguite come utente 'principale'.)

Decomprimere l'archivio binario di APK nella directory principale dell'immagine, ad esempio

cd /mnt/vol
gtar -zxf tmp/apk-2.0.1-solaris.tar.gz 

Installare su un'immagine OpenSolaris preparata per l'esecuzione come  appliance para-virtualizzata (`uname -i` == i86xpv)

bash tmp/apk-install pvm 

Se si esegue l'installazione su un'immagine Solaris 10 od OpenSolaris, essa verrà utilizzata come macchina virtuale assistita da hardware (HVM)

bash tmp/apk-install 

Se l'esecuzione avviene con l'opzione 'pvm' e l'immagine di destinazione ha un kernel paravirtualizzato, lo script sostituisce il file di configurazione di avvio. Il precedente verrà salvato asboot/grub/menu.lst.apksave. Se non si desiderava tale operazione (e l'esecuzione dell'appliance come HVM), ripristinare i file manualmente. Se non è presente alcun kernel paravirtualizzato ma è stato specificato 'pvm', lo script di installazione stamperà un avviso, l'installazione non verrà interrotta e l'immagine sarà ancora valida per l'utilizzo come appliance HVM.

Lo script di installazione (e i file tar, se sono stati copiati nell'immagine stessa) possono essere ora rimossi:

rm tmp/apk-install  tmp/apk-*.tar.gz 

Smontare l'immagine e importarla nella griglia di AppLogic (o chiudere la shell di gestione volume 'vol manage', se l'immagine è già presente nella griglia ed è stata modificata utilizzando 'vol manage').

Se l'immagine è di un'appliance esistente: modificare la classe (utilizzando l'editor della GUI) e rimuovere nomi di file initrd e kernel. Impostare la modalità di configurazione su 'dhcp'.

Comportamento di appliance personalizzate - Riferimento rapido

Per dettagli completi, consultare la Guida per l'utente.

Configurazione di inizializzazione dell'appliance

Se è presente il file /etc/sysconfig/applogic_init, lo script di inizializzazione di APK lo legge come una shell con script (con il comando "."). I seguenti parametri possono essere definiti in /etc/sysconfig/applogic_init :

APK_AUTH_KEY_PATH

posizione in cui archiviare la chiave pubblica di accesso SSH dell'appliance. Il comando '3t comp ssh' esegue la connessione alle appliance tramite la corrispondente chiave privata. Il valore predefinito è /root/.ssh. Se impostata su una stringa vuota, la chiave non verrà archiviata.
Se il percorso specificato è un file esistente, il proprietario e le autorizzazioni verranno mantenuti. In caso contrario, il file verrà creato con il proprietario 'principale'.

APK_CONFIG_FILES

elenco di file delimitato da spazi a cui applicare le proprietà dell'appliance. Tale elenco sostituisce l'elenco dei file di configurazione specificato nella finestra di dialogo "Modifica limite" nella GUI (per appliance che non utilizzano APK). Un'appliance dotata di APK utilizzerà l'elenco APK_CONFIG_FILES trovato nell'appliance stessa, non l'elenco specificato nella GUI.
Importante: se si installa APK in un'appliance esistente, controllare nel descrittore di classe (utilizzando l'editor della GUI) la presenza dei file di configurazione nella scheda "File di configurazione" trovata nella finestra di dialogo Visualizza classe/Modifica limite. Trasferire l'elenco dei file nell'impostazione APK_CONFIG_FILES nell'appliance.

Importante: il file /etc/sysconfig/applogic_init viene eseguito prima che i dati di configurazione siano recuperati o applicati, di conseguenza lo script non può basarsi sulla presenza di alcun file di configurazione dell'appliance. Non utilizzare questo file per l'esecuzione di codice di inizializzazione, ma solo per le variabili di configurazione definite in precedenza.

Esempio

/etc/sysconfig/applogic_init: 
APK_CONFIG_FILES=/etc/httpd/conf.d/myconfig.conf 
APK_AUTH_KEY_PATH=/root/.ssh/alternate_keys 

Controllo di appliance successivo all'avvio

Se il file /etc/sysconfig/applogic_appliance è presente, lo script "late init" di inizializzazione successivo di APK lo legge come una shell con script (con il comando "."), dopo che sono stati avviati tutti i servizi nell'appliance. Lo stato di ritorno dallo script indica se l'avvio dell'appliance deve essere considerato "corretto" o "non riuscito". Se lo script stampa un messaggio in stderr e restituisce un errore, l'ultima riga del messaggio verrà utilizzata come messaggio di errore inviato al controller.

Esempio di file di controllo successivo all'avvio, per un'appliance del server web - Verifica che il server sia attivo e che risponda a HTTP GET per la pagina iniziale:

if ! wget -q -O /dev/null http://localhost/ ; then
echo "start failed - Web server is not responding" >&2
return 1
fi
return 0 

Importante: Alcune appliance nel catalogo di sistema utilizzano uno script personalizzato che si trova in /appliance per inizializzare i servizi. Questa opzione non è più supportata. La directory è eliminata quando viene installato APK, per mantenere la struttura della directory principale pulita e conforme alla gerarchia standard del File System. È possibile spostare il codice da questi script in /etc/sysconfig/applogic_appliance per emulare il comportamento precedente, ma non è questo il proposito del file di controllo successivo all'avvio e l'opzione non è consigliata. Un servizio installato dovrebbe invece disporre di un proprio script di inizializzazione e in generale dovrebbe essere in grado di funzionare perfettamente all'esterno di CA AppLogic.