Argomento precedente: Installazione di appliance di Windows

Argomento successivo: Riferimento per l'installazione di Windows


Kit di installazione di appliance di Windows

Per Windows Server 2003 (32 e 64 bit) e Windows Server 2008 (32 bit e 64 bit).

File
Compatibilità

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

Per installare l'APK, occorre quanto segue:

Preparazione dell'immagine

I seguenti passaggi possono variare a seconda del modo in cui è stato originariamente installato il sistema operativo. Lo script di installazione di APK non esegue queste fasi, che possono essere eseguite a discrezione dell'operatore. Alcune di queste fasi richiedono l'accesso all'interfaccia utente grafica e uno script automatizzato potrebbe non essere in grado di eseguirli. Altre fasi sono invasive e possono essere distruttive. Perciò, arrestando queste fasi, uno script automatizzato può essere sconsigliato.

Ignorare i passaggi non appropriati.

  1. Disabilitare tutte le risorse visive del desktop (menu animati, ombreggiature, trascinamenti finestre, e così via) per ottimizzare il funzionamento su VNC o sul desktop remoto.
  2. Disabilitare screen saver e blocco schermo.
  3. Impostare una password complessa per l'account dell'amministratore.
  4. Disinstallare o disabilitare i servizi del sistema operativo che non verranno utilizzati (ad esempio, il servizio Browser e il servizio Server).
  5. Installare tutti gli aggiornamenti rapidi di Windows (ciascun aggiornamento rapido richiederà un riavvio separato).

    Nota: un'installazione non riuscita degli aggiornamenti di Windows 2008 potrebbe causare un cattivo funzionamento di APK.

  6. Abilitare Amministrazione remota (mediante Servizi terminale) -

    Nota: l'abilitazione dell'amministrazione remota è differente dalla configurazione del sistema operativo come Server Terminale. Per la configurazione del sistema operativo come Server terminale sono necessarie licenze pagate per ciascun client. Abilitare amministrazione remota solamente se questo è l'uso desiderato dell'installazione.

  7. Configurare la rete con un indirizzo IP pubblicamente accessibile. Ora è possibile eseguire le fasi restanti mediante il desktop remoto.
  8. Installare CygWin (www.cygwin.com). Eseguire l'installazione come amministratore e fare clic su Installa per tutti gli utenti. Aggiungere almeno il seguente set di base per i pacchetti: server ssh. NON configurare il server sshd da sé, consentire ad APK di configurare il server sshd.
  9. Verificare che le seguenti utilità di GNU siano installate (dovrebbero essere nei pacchetti di base, ma controllare bene e aggiungerle, se mancano): bash, wget, gzip e tar.
  10. Installare il driver dei dispositivi Xen-aware (paravirtuali o PV) se si desidera. Se si utilizzano driver PV, si consiglia di riavviare Windows dopo avere installato i driver e prima di installare l'APK. Verificare che i driver PV funzionino normalmente.

Nota: l'installazione minima di Windows 2003 richiede più di 1 GB di spazio su disco. Windows 2008 richiede quasi 8 GB per l'installazione completa (meno per i componenti di base del server). Lasciare spazio sufficiente per l'installazione di CygWin e degli aggiornamenti rapidi di Windows Update (tenere a mente che Windows conserva tutte le versioni precedenti dei file binari sostituiti dagli aggiornamenti rapidi). Verificare che ci siano almeno 5-10 MB di spazio libero per installare l'APK e per garantire uno spazio extra per file di registro, file temporanei eccetera.

Installazione di APK

Installare l'APK su un sistema live. Non è possibile installare l'APK per Windows in un'immagine disco di sistema operativo non attivo. Per ottenere risultati ottimali, utilizzare un'immagine del sistema operativo che dispone di accesso esterno alla rete configurata e accedere ad essa utilizzando un client del desktop remoto dal sistema operativo preferito (ad esempio, rdesktop). Questa operazione fornisce una migliore interattività rispetto all'utilizzo di VNC per vedere la schermata video emulata HVM.

  1. Accedere come amministratore e aprire una shell CygWin.
  2. Copiare i file APK nella directory /tmp.
  3. Passare alla directory root CygWin (/) e decomprimere l'archivio binario di APK nella directory root, ad esempio:
    cd / gtar -zxf tmp/apk-2.0.10-windows.tar.gz 
    
  4. Eseguire lo script di installazione:
    bash tmp/apk-install 
    

In tal modo si dovrebbe completare l'operazione senza messaggi di errore. Se sono presenti messaggi di errore, controllare i passaggi preparatori e ripetere la procedura.

Nota: è consigliabile eseguire lo script di installazione più volte; questo non danneggerà in alcun modo l'installazione.

La procedura di installazione e il file tar di APK possono essere rimossi effettuando le seguenti operazioni:

  1. Eseguire il seguente comando
    rm tmp/apk-install  tmp/apk-*.tar.gz 
    
  2. Spegnere il sistema operativo.

Se la preparazione dell'immagine è stata eseguita all'esterno di una griglia di CA AppLogic, l'immagine può ora essere copiata in una griglia e utilizzata per creare un'appliance.

Se l'immagine è stata creata in una griglia come una nuova installazione del sistema operativo: disabilitare l'opzione di appliance non gestita deselezionando la casella di controllo Codice di progettazione di campo.

Verificare che lo Schema periferica sia impostato su hda/hdb/hdc/hdd per le unità disco IDE o su sda/sdb/sdc/sdd per le unità disco SCSI (nell'Editor: Modifica limite, Generale, Modalità di virtualizzazione, Avanzate).

Importanti informazioni specifiche di Windows

Nomi dei file

Se non diversamente specificato, i nomi nel documento sono nello spazio dei nomi dei file di CygWin, che emula un sistema Posix.

Nota: i nomi dei file non possono essere utilizzati con nessuna utilità che non sia di CygWin. Ciò include gli stessi file binari APK (vme e udlparse) e tutti gli strumenti nativi della riga di comando di Windows. La maggior parte delle utilità di CygWin accettano un nome CygWin (tipo posix) o un nome di Windows (ad esempio, C:\path\), ad eccezione di quelli che comprendono stringhe con "." per intendere computername:filename, ad esempio, scp, rsync, e in particolare tar. Quest'ultimo può essere costretto ad accettare un nome di Windows con l'opzione --force-local.

Per convertire un nome di file tra lo spazio dei nomi di Windows e quello di CygWin, utilizzare cygpath.

windowspath=`cygpath -w /var/applogic/appliance.desc`

Montaggio disco

Quando si specifica un punto di montaggio per i dischi, utilizzare i seguenti nomi a proprio piacimento:

X - una lettera singola (A, B,D-Z) renderà il disco accessibile come X:\.

X:\ - uguale a X

C:\dir1\[dir2\...] - Rende il disco accessibile nella sottodirectory fornita nel file system di avvio. Se la directory non esiste, verrà creata.

Nota: è consigliabile non consentire all'APK di creare la directory, perché le autorizzazioni della directory predefinita potrebbero non corrispondere a quelle desiderate.

Se si lascia il disco senza un punto di montaggio specificato nel descrittore di classe, APK ignorerà il disco e lascerà inalterata l'assegnazione di montaggio in Windows. In questo caso, ogni assegnazione del punto di montaggio per quel disco eseguita manualmente da Windows è permanente e avrà la priorità su un'assegnazione dello stesso punto di montaggio a un altro disco effettuata mediante il descrittore di classe (la seconda assegnazione non avrà alcun effetto e lascerà il disco smontato). Ad esempio, se i seguenti elementi sono stati specificati nell'editor di classe/nella finestra di dialogo Modifica:

disk 0 -> (avvio)
disk 1 -> (nessun montaggio assegnato)
disk 2 -> Z:\ 

ed è stato eseguito l'accesso all'appliance, rimuovere Z da disk2 e assegnarlo a disk1. Z resterà assegnato a disk1 anche dopo il riavvio e l'assegnazione di 'disk2 -> Z" nel descrittore di classe non verrà eseguita. Disk2 non verrà montato in alcuna posizione, fino alla rimozione di Z da disk1 o all'impostazione di un valore diverso da Z per disk2.

C:\ è riservato e non può essere assegnato come punto di montaggio per nessun disco. Qualsiasi assegnazione per il disco di avvio verrà ignorata e il disco verrà segnalato come montato su C:\ nel descrittore dell'istanza di appliance.

Non utilizzare percorsi di montaggio con le sottodirectory nelle unità tranne che in C:. Se si esegue questa operazione, il montaggio potrebbe risultare non utilizzabile, e questo dipende dall'ordine in cui i dischi sono stati montati.

Tenere presente che Windows non rifiuta di montare un disco non formattato (o un disco formattato con un file system che non è riconosciuto da Windows). Non apparirà nessun errore o avviso quando il montaggio è assegnato da APK, ma i tentativi di accesso al punto di montaggio e a qualsiasi suo sottopercorso non avranno esito.

Nomi utente

Lo script di installazione di APK farà sì che l'alias di CygWin per l'amministratore sia una radice. Di conseguenza, la radice sarà il nome utente visualizzato da qualsiasi CygWin binario e verrà visualizzata come il nome utente corrente in una shell di CygWin e negli elenchi della directory. Questa impostazione consente l'accesso all'appliance utilizzando il comando di shell remoto ( 3t ssh component-name).

Notare che il mapping tra i nomi utente di CygWin e i nomi utente di Windows non è automatico, è descritto nei file /etc/passwd e /etc/group, che non vengono aggiornati automaticamente durante l'aggiunta o la rimozione di utenti di Windows. Cygwin include utilità per mantenere i file /etc/passwd e /etc/group Quando si utilizzano queste utilità, assicurarsi di mantenere il mapping speciale per la directory principale creato da APK, in caso contrario l'accesso a ssh dalla griglia smetterà di funzionare.

Comportamento di appliance personalizzate - Riferimento rapido

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 si connette alle appliance tramite la corrispondente chiave privata. L'impostazione predefinita è /home/Administrator/.ssh. Se impostata su una stringa vuota, la chiave non verrà archiviata.
Se il percorso specificato è un file esistente, il titolare e le autorizzazioni verranno mantenuti. In caso contrario, il file verrà creato con il titolare 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 Configura file trovata nella finestra di dialogo Visualizza/Modifica limite. Trasferire l'elenco dei file nell'impostazione APK_CONFIG_FILES nell'appliance.

APK_HOSTNAME_UPDATE

L'impostazione del parametro su No disabiliterà il comportamento predefinito che cambia il nome host (noto anche come nome computer in Windows) con una stringa derivata dal nome dell'istanza di appliance.
La disabilitazione della modifica automatica del nome host può essere consigliata per appliance "Virtual Private/Dedicated Server", in cui il titolare dell'appliance conserva tutti gli aspetti della propria configurazione, incluso il nome host.
Nota: Se APK_HOSTNAME_UPDATE è impostato su Sì (o non impostato), la modifica del nome host attiverà un riavvio del sistema operativo. Ciò si verifica al primo avvio, o quando il nome dell'istanza dell'appliance viene modificato e riavviato. Poiché il riavvio viene terminato prima che APK riporti un avvio corretto, l'appliance sembra richiedere il doppio di tempo per partire. L'operatore vedrà un messaggio di accesso alla modalità di manutenzione nei dettagli sullo stato di avanzamento dell'avvio, se un riavvio è stato attivato da APK.

APK_AUTOMOUNT

L'impostazione del parametro su No disabilita l'assegnazione automatica di lettere di unità o punti di montaggio, come specificato nella classe di appliance. Questo volume, inoltre, disabilita tutti i controlli di stato in APK.

Importante: Questa opzione deve essere utilizzata se l'appliance è dotata di una periferica CD-ROM configurata (assegnando un'immagine in formato ISO a uno dei dischi virtuali). L'auto-montaggio di APK non funziona in questa particolare combinazione e non consentirà l'avvio dell'appliance.

Importante: il file /etc/sysconfig/applogic_init viene eseguito prima che i dati di configurazione vengano recuperati o applicati, e di conseguenza lo script non può basarsi sulla presenza di nessuno dei file di configurazione dell'appliance. Non utilizzare questo file per l'esecuzione di codice di inizializzazione, utilizzarlo solo per le variabili di configurazione definita 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 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 

Non utilizzare /etc/sysconfig/applogic_appliance come script di avvio per avviare i servizi di appliance. Questo impedisce l'utilizzo o la verifica del modulo di installazione all'esterno di un'appliance con APK installato.

Importante: nota specifica per Windows: a differenza delle altre piattaforme supportate da APK, il controllo successivo all'avvio di applogic_appliance viene inizializzato dopo la che la gestione del controllo servizi (SCM, service control manager) di Windows ha caricato tutti i servizi - NON quando questi hanno completato l'inizializzazione. Le cose sono ulteriormente complicate dal fatto che in Windows 2003/2008 alcuni servizi sono avviati da altri servizi tramite una chiamata API, invece che come dipendenza esplicita (e pertanto non possono essere gestiti semplicemente aspettando l'evento di completamento del caricamento automatico dei servizi). Qualsiasi codice 'startup check' aggiunto al file /etc/sysconfig/applogic_appliance deve quindi considerare tale fattore e attendere tutti i servizi che deve monitorare, nel caso non sia stato ancora inizializzato.