Si applica a SUSE Linux Enterprise Server 12

21 Installazione automatizzata

AutoYaST consente di installare SUSE® Linux Enterprise su un ampio numero di computer in parallelo. La tecnologia AutoYaST offre una grande flessibilità per adeguare le distribuzioni ad hardware eterogenei. Questo capitolo illustra come preparare una semplice installazione automatizzata e disporre uno scenario avanzato che coinvolge diversi tipologie di hardware e scopi di installazione.

21.1 Installazione semplice su larga scala

Importante
Importante: hardware identico

In questo scenario si presume che si installi SUSE Linux Enterprise in una serie di computer con la stessa configurazione hardware.

Per preparare un'installazione di AutoYaST su larga scala, eseguire le operazioni riportate di seguito:

  1. Creare un profilo AutoYaST contenente i dettagli di installazione necessari per la distribuzione, secondo quanto descritto nella Sezione 21.1.1, «Creazione di un profilo AutoYaST».

  2. Determinare l'origine del profilo AutoYaST e il parametro da passare alle routine di installazione, come descritto nella Sezione 21.1.2, «Distribuzione del profilo e individuazione del parametro AutoYaST».

  3. Determinare l'origine dei dati di installazione di SUSE Linux Enterprise come descritto nella Sezione 21.1.3, «Inserimento dei dati di installazione».

  4. Definire e configurare lo scenario di avvio per l'installazione automatica, come descritto nella Sezione 21.1.4, «Configurazione dello scenario di avvio».

  5. Passare la riga di comando alle routine di installazione aggiungendo manualmente i parametri o creando un file info, come descritto nella Sezione 21.1.5, «Creazione del file info».

  6. Avviare il processo di installazione automatica, come descritto nella Sezione 21.1.6, «Avvio e controllo dell'autoinstallazione».

21.1.1 Creazione di un profilo AutoYaST

Un profilo AutoYaST indica ad AutoYaST i componenti da installare e come configurare il sistema installato per ottenere un sistema pronto all'uso. È possibile installare in molti modi diversi.

  • Clonare una nuova installazione da un computer di riferimento in una serie di computer uguali

  • Utilizzare la GUI di AutoYaST per creare e modificare un profilo in base alle esigenze

  • Utilizzare un editor XML e creare un nuovo profilo

Per clonare una nuova installazione di riferimento, procedere come indicato di seguito:

  1. Avviare una normale installazione come descritto nel Capitolo 6, Installazione con YaST e configurare il sistema in base alle esigenze. Nella schermata Impostazioni dell'installazione, (Sezione 6.13, «Impostazioni di installazione») scegliere Clona configurazione del sistema e attivare Scrivi profilo AutoYaST in /root/autoinst.xml.

  2. In /root/autoinst.xml verrà creato un profilo pronto all'uso. Può essere usato per creare cloni di questa particolare installazione.

Per utilizzare la GUI di AutoYaST per creare un profilo da una configurazione di sistema esistente e modificarlo in base alle esigenze, procedere come indicato di seguito:

  1. Avviare YaST come utente root.

  2. Selezionare Varie › Installazione automatica per avviare il front-end grafico di AutoYaST.

  3. Selezionare Strumenti › Crea profilo di riferimento per preparare AutoYaST a eseguire la copia speculare della configurazione di sistema esistente in un profilo AutoYaST.

  4. Oltre alle risorse di default (come il boot loader, le partizioni e la selezione del software), è possibile aggiungere molti altri aspetti del sistema al profilo, selezionando gli elementi nell'elenco di Crea un file di controllo di riferimento.

  5. Fare clic su Crea affinché YaST raccolga tutte le informazioni di sistema e le scriva in un nuovo profilo.

  6. Per continuare, selezionare una delle seguenti opzioni:

    • Se il profilo è completo e soddisfa i requisiti, selezionare File › Salva come e immettere un nome di file per il profilo, ad es. autoinst.xml.

    • Modificare il profilo di riferimento selezionando gli aspetti di configurazione appropriati (come «Hardware/Stampante») dalla vista struttura a sinistra e facendo clic su Configura. Viene avviato il modulo YaST, ma le impostazioni vengono scritte sul profilo AutoYaST e non applicate al sistema. Al termine, selezionare File › Salva con nome e specificare un nome adatto per il profilo.

  7. Uscire dal modulo AutoYaST selezionando File › Esci.

Modifica di un profilo AutoYaST con il front-end di AutoYaST
Figura 21.1 Modifica di un profilo AutoYaST con il front-end di AutoYaST

21.1.2 Distribuzione del profilo e individuazione del parametro AutoYaST

È possibile distribuire il profilo AutoYAST in molti modi diversi. In base al protocollo utilizzato per distribuire i dati di profilo, vengono utilizzati diversi parametri di AutoYaST per rendere nota l'ubicazione del profilo alle routine di installazione nel client. L'ubicazione del profilo viene passata alle routine di installazione per mezzo del prompt di avvio o di un file info caricato all'avvio. Sono disponibili le seguenti opzioni:

Ubicazione profilo

Parametro

Descrizione

File

autoyast=file://percorso

Indica alle routine di installazione di cercare il file di controllo nel percorso indicato (relativo alla directory principale dell'origine—file:///autoinst.xml se si trova nella directory superiore di un CD-ROM).

Dispositivo

autoyast=device://percorso

Indica alle routine di installazione di cercare il file di controllo in un dispositivo di memorizzazione. È richiesto solo il nome del dispositivo—/dev/sda1 è errato, utilizzare invece sda1.

NFS

autoyast=nfs://server/percorso

Le routine di installazione recuperano il file di controllo da un server NFS.

HTTP

autoyast=http://server/percorso

Le routine di installazione recuperano il file di controllo da un server HTTP.

HTTPS

autoyast=https://server/percorso

Le routine di installazione recuperano il file di controllo da un server HTTPS.

TFTP

autoyast=tftp://server/percorso

Le routine di installazione recuperano il file di controllo da un server TFTP.

FTP

autoyast=ftp://server/percorso

Le routine di installazione recuperano il file di controllo da un server FTP.

Sostituire i segnaposto server e percorso con i valori corrispondenti alla effettiva configurazione.

AutoYaST include una funzione che consente di associare alcuni profili all'indirizzo MAC di un client. Senza dover modificare il parametro autoyast=, è possibile installare con la stessa configurazione diverse istanze utilizzando profili differenti.

A tale scopo, procedere come indicato di seguito:

  1. Creare profili separati con l'indirizzo MAC del client come nome file e inserire i profili sul server HTTP che contiene i profili AutoYaST.

  2. Omettere il percorso esatto includendo il nome del file alla creazione del parametro autoyast=, ad esempio:

    autoyast=tftp://192.168.1.115/
  3. Avviare l'autoinstallazione.

YaST tenta di determinare la posizione del profilo come indicato di seguito:

  1. YaST cerca il profilo utilizzando il proprio indirizzo IP in formato maiuscolo esadecimale, ad esempio 192.0.2.91 è C000025B.

  2. Se il file non viene trovato, YaST rimuove una cifra esadecimale ed effettua un altro tentativo. L'azione viene ripetuta otto volte fino a quando non viene trovato il nome del file corretto.

  3. Se l'azione si conclude con un errore, l'applicazione tenta di trovare un file il cui nome contenga l'indirizzo MAC dei client. L'indirizzo MAC del client di esempio è 0080C8F6484C.

  4. Se il file con il nome dell'indirizzo MAC non viene trovato, YaST cerca un file denominato default (minuscolo). Una sequenza di esempio degli indirizzi in cui YaST ricerca il profilo AutoYaST si presenta come segue:

    C000025B 
    C000025 
    C00002 
    C0000 
    C000 
    C00 
    C0 
    C 
    0080C8F6484C 
    default
         

21.1.3 Inserimento dei dati di installazione

I dati di installazione possono essere forniti mediante i CD o DVD del prodotto o utilizzando una fonte di installazione di rete. Se si utilizzano i CD del prodotto come origine dell'installazione, è necessario l'accesso fisico al client da installare perché il processo di avvio deve essere eseguito manualmente e i CD devono essere sostituiti.

Per fornire le origini di installazione in rete, configurare un server di installazione di rete (HTTP, NFS, FTP) come descritto nella Sezione 14.2.1, «Configurazione di un server di installazione con YaST». Utilizzare un file info per trasmettere la locazione del server alle routine di installazione.

21.1.4 Configurazione dello scenario di avvio

Il client può essere avviato in diversi modi:

Avvio dalla rete

Come per la normale installazione remota, l'installazione automatica può essere avviata con Wake on LAN e PXE, l'immagine di avvio e il file di controllo possono essere ottenuti tramite TFTP e le origini dell'installazione da qualsiasi server di installazione di rete.

CD-ROM

È possibile utilizzare il supporto di SUSE Linux Enterprise originale per avviare l'autoinstallazione e ricavare il file di controllo da una locazione di rete o un supporto rimovibile. In alternativa, creare un CD-ROM personalizzato contenente sia le origini di installazione sia il profilo AutoYaST.

Le sezioni seguenti illustrano le procedure di base per l'avvio dalla rete o da CD-ROM.

21.1.4.1 Preparazione all'avvio dalla rete

L'avvio dalla rete con Wake on LAN, PXE e TFTP viene illustrato nella Sezione 14.1.3, «Installazione remota tramite VNC - Avvio PXE e Wake on LAN». Per utilizzare la configurazione per l'autoinstallazione, modificare il file di configurazione PXE Linux (/srv/tftp/pxelinux.cfg/default) per contenere il parametro autoyast indicante la posizione del profilo AutoYaST. Una voce di esempio per un'installazione standard è la seguente:

default linux 

# default label linux 
    kernel linux
    append initrd=initrd install=http://192.168.1.115/install/suse-enterprise/ 
	  
	

Lo stesso esempio per l'autoinstallazione è il seguente:

default linux 

# default label linux 
    kernel linux
    append initrd=initrd install=http://192.168.1.115/install/suse-enterprise/ \
           autoyast=nfs://192.168.1.110/profiles/autoinst.xml
	

Sostituire gli indirizzi IP e i percorsi con i dati utilizzati nella configurazione.

21.1.4.2 Preparazione all'avvio da CD-ROM

Per le autoinstallazioni di AutoYaST l'avvio da CD-ROM può avvenire in diversi modi. Scegliere una delle seguenti opzioni:

Avviare dal supporto di SUSE Linux Enterprise e ottenere il profilo dalla rete

Utilizzare questo approccio se uno scenario basato totalmente su rete non è possibile (ad esempio, se l'hardware in uso non supporta PXE) e si dispone di accesso fisico al sistema da installare durante la maggior parte del processo.

Sono necessari:

Avviare e installare dal supporto di SUSE Linux Enterprise e ottenere il profilo da un supporto rimovibile

Utilizzare questo approccio nel caso in cui uno scenario di installazione basato totalmente su rete potrebbe non funzionare. Questo approccio richiede l'accesso fisico al sistema da installare per l'indirizzamento al computer di destinazione o, nel secondo caso, l'immissione dell'ubicazione del profilo al prompt di avvio. In entrambi i casi, potrebbe essere necessario cambiare supporto a seconda dell'ambito di installazione.

Sono necessari:

  • Il supporto di SUSE Linux Enterprise

  • Un supporto rimovibile contenente il profilo e il file info

    o

    Accesso al prompt di avvio del computer di destinazione per immettere il parametro autoyast=

Avvio e installazione da un supporto personalizzato, recupero del profilo dal supporto

Se si desidera installare un numero limitato di pacchetti software e il numero di destinazioni è relativamente basso, si consiglia di creare un CD personalizzato contenente sia i dati di installazione sia il profilo stesso, soprattutto se la rete non è disponibile.

21.1.5 Creazione del file info

Le routine di installazione nella destinazione devono essere a conoscenza dei diversi componenti del framework AutoYaST. Per eseguire l'operazione, creare una riga di comando contenente tutti i parametri necessari per individuare i componenti AutoYaST, le origini di installazione e i parametri necessari per controllare il processo di installazione.

Trasmettere manualmente i parametri al prompt di avvio dell'installazione o fornire un file denominato info che viene letto dalle routine di installazione (linuxrc). La trasmissione dei parametri al prompt di avvio richiede l'accesso fisico a tutti i client da installare, rendendo l'approccio non adatto alle grandi distribuzioni. Il secondo metodo consente di fornire il file info su un supporto che viene preparato e inserito nell'unità dei client prima dell'installazione automatica. In alternativa, utilizzare l'avvio PXE e includere i parametri linuxrc nel file pxelinux.cfg/default come illustrato nella Sezione 21.1.4.1, «Preparazione all'avvio dalla rete».

I parametri seguenti sono usati comunemente per linuxrc. Per ulteriori informazioni, fare riferimento alla documentazione del pacchetto AutoYaST in /usr/share/doc/packages/autoyast.

Importante
Importante: separazione dei parametri e dei valori

Quando si trasmettono i parametri a linuxrc al prompt di avvio, utilizzare = per separare il parametro dal valore. Quando si utilizza un file info, separare il parametro dal valore utilizzando :.

Parola chiave

Valore

netdevice

La periferica di rete da utilizzare per la configurazione della rete (per richieste BOOTP/DHCP). Necessaria solo se sono disponibili più periferiche di rete.

hostip

Se vuoto, il client invia una richiesta BOOTP, altrimenti il client viene configurato utilizzando i dati specificati.

netmask

Maschera di rete per la rete selezionata.

gateway

Gateway di default.

nameserver

Server dei nomi

autoyast

Ubicazione del file di controllo da utilizzare per l'autoinstallazione, ad esempio autoyast=nfs//192.168.1.110/profiles/.

installazione

Posizione dell'origine di installazione, ad esempio install=nfs://192.168.1.110/CDs/.

vnc

Se impostato su 1, consente l'installazione remota via VNC.

vncpassword

La password per VNC

usessh

Se impostato su 1, consente l'installazione remota via SSH.

netsetup

Se impostata su 1 viene configurata la rete. Di norma questa operazione viene effettuata automaticamente, ma è necessario impostare netsetup=1 qualora l'archivio di installazione sia disponibile localmente (ad esempio via DVD o immagine iso locale) e il file info venga caricato dalla rete.

Se lo scenario di installazione automatico prevede la configurazione del client tramite DHCP e un'origine dell'installazione di rete, e si desidera monitorare il processo di installazione tramite VNC, il file info avrebbe questo aspetto:

autoyast:profile_source install:install_source vnc:1 vncpassword:some_password

Se si preferisce una configurazione di rete statica al momento dell'installazione, il file info potrebbe avere il seguente formato:

autoyast:profile_source \
install:install_source \ 
hostip:some_ip \ 
netmask:some_netmask \ 
gateway:some_gateway

La barra rovesciata (\) indica che le interruzioni di riga sono state aggiunte solo per migliorare la leggibilità. Tutte le opzioni devono essere inserite in una stringa continua.

I dati info possono essere resi disponibili a linuxrc in diversi modi:

  • Come file in un supporto rimovibile disponibile sul client in fase di installazione. Aggiungere un parametro informazioni simile a info=cd:/info.

  • Come file nella directory principale del disco RAM originale utilizzato per l'avvio del sistema fornito dal supporto personalizzato di installazione o mediante PXE.

  • Come parte del profilo AutoYaST. In questo caso, il file AutoYaST deve essere denominato info per consentire l'analisi da parte di linuxrc. Di seguito viene riportato un esempio per questo approccio.

  • Per mezzo di un URL che punta all'ubicazione del file info. La sintassi sarà simile a info=http://www.example.com/info.

linuxrc cerca una stringa (start_linuxrc_conf) nel profilo che rappresenta l'inizio del file. Se la stringa viene trovata, linuxrc analizza il contenuto compreso tra questa stringa e la stringa end_linuxrc_conf. Le opzioni vengono memorizzate nel profilo come indicato di seguito:

....
  <install>
....
    <init>
      <info_file>
<![CDATA[
#
# Don't remove the following line:
# start_linuxrc_conf
#
install: nfs:server/path
vnc: 1
vncpassword: test
autoyast: file:///info

# end_linuxrc_conf
# Do not remove the above comment
#
]]>

      </info_file>
    </init>
......
  </install>
....

linuxrc carica il profilo contenente i parametri di avvio invece del file info tradizionale. Il parametro install: punta all'ubicazione delle origini di installazione. vnc e vncpassword indicano l'utilizzo di VNC per il monitoraggio dell'installazione. Il parametro autoyast indica a linuxrc di trattare info come un profilo AutoYaST.

21.1.6 Avvio e controllo dell'autoinstallazione

Dopo aver fornito l'infrastruttura indicata in precedenza (profilo, origine di installazione e file info), è possibile procedere all'avvio dell'autoinstallazione. In base allo scenario selezionato per l'avvio e il controllo del processo, potrebbe essere necessaria una interazione fisica con il client:

  • Se il sistema client esegue l'avvio da qualsiasi tipo di supporto fisico, supporto del prodotto o CD personalizzato, è necessario inserire il supporto nell'opportuna unità del client.

  • Se il client non viene avviato via Wake on LAN, è necessario almeno attivare il computer client.

  • Se non si è scelta l'autoinstallazione automatica, il feedback grafico di AutoYaST viene inviato al monitor del client o, se si utilizza un client headless, a una console seriale.

Per attivare l'autoinstallazione automatica da remoto, utilizzare i parametri VNC o SSH descritti nella Sezione 21.1.5, «Creazione del file info» e connettersi al client da un altro computer come illustrato nella Sezione 14.5, «Monitoraggio del processo di installazione».

21.2 Autoinstallazione con definizione di regole

Le sezioni seguenti illustrano il concetto base dell'installazione con definizione di regole mediante AutoYaST e forniscono uno scenario di esempio che consente di creare una configurazione di autoinstallazione personalizzata.

21.2.1 Autoinstallazione con definizione di regole

L'autoinstallazione di AutoYaST con definizione di regole consente di utilizzare ambienti hardware eterogenei:

  • Il sito contiene hardware di diversi fornitori?

  • I computer del sito hanno diverse configurazioni hardware (ad esempio, utilizzano periferiche diverse o dimensioni della memoria e del disco diverse)?

  • Si intende eseguire l'installazione su domini diversi o occorre effettuare una distinzione tra di essi?

L'autoinstallazione basata su regole genera un profilo personalizzato per soddisfare uno scenario eterogeneo unendo diversi profili in un unico profilo. Ciascuna regola descrive una funzione particolare della configurazione (ad esempio le dimensioni del disco) e indica a AutoYaST il profilo da utilizzare quando le regole corrispondono. Più regole che descrivono diverse funzioni della configurazione vengono inserite in un file rules.xml di AutoYaST. Lo stack di regole viene quindi elaborato e AutoYaST genera il profilo finale unendo i vari profili che corrispondono alle regole AutoYaST in un profilo unico. Per informazioni sulla procedura, fare riferimento alla Sezione 21.2.2, «Esempio di scenario per l'installazione automatica basata su regole».

AutoYaST basato su regole offre una maggiore flessibilità per la pianificazione e l'esecuzione della distribuzione di SUSE Linux Enterprise. È possibile effettuare le seguenti operazioni:

  • Creare regole da associare a qualsiasi attributo di sistema predefinito in AutoYaST

  • Combinare più attributi di sistema (ad esempio dimensioni del disco e architettura del kernel) in un'unica regola utilizzando operatori logici

  • Creare regole personalizzate eseguendo script di shell e passando i relativi output al framework di AutoYaST. Il numero di regole personalizzate è limitato a cinque.

Nota
Nota

Per ulteriori informazioni sulla creazione di regole e sull'utilizzo con AutoYaST, fare riferimento alla documentazione del pacchetto disponibile in /usr/share/doc/packages/autoyast2/html/index.html, capitolo Regole e classi.

Per prepararsi a un'installazione di massa di AutoYaST basata su regole, eseguire le operazioni riportate di seguito.

  1. Creare diversi profili AutoYaST che contengano i dettagli relativi all'installazione necessari per una configurazione eterogenea, come descritto nella Sezione 21.1.1, «Creazione di un profilo AutoYaST».

  2. Definire regole da associare agli attributi di sistema della configurazione hardware in uso, come illustrato nella Sezione 21.2.2, «Esempio di scenario per l'installazione automatica basata su regole».

  3. Determinare l'origine del profilo AutoYaST e il parametro da passare alle routine di installazione, come descritto nella Sezione 21.1.2, «Distribuzione del profilo e individuazione del parametro AutoYaST».

  4. Determinare l'origine dei dati di installazione di SUSE Linux Enterprise come descritto nella Sezione 21.1.3, «Inserimento dei dati di installazione».

  5. Passare la riga di comando alle routine di installazione aggiungendo manualmente i parametri o creando un file info, come descritto nella Sezione 21.1.5, «Creazione del file info».

  6. Definire e configurare lo scenario di avvio per l'installazione automatica, come descritto nella Sezione 21.1.4, «Configurazione dello scenario di avvio».

  7. Avviare il processo di installazione automatica, come descritto nella Sezione 21.1.6, «Avvio e controllo dell'autoinstallazione».

21.2.2 Esempio di scenario per l'installazione automatica basata su regole

Per nozioni di base sulla modalità di creazione delle regole, fare riferimento all'esempio riportato di seguito, illustrato nella Figura 21.2, «Regole di AutoYaST». Con una esecuzione di AutoYaST, si installa la seguente configurazione:

Un server di stampa

Questo sistema richiede un'installazione minima senza ambiente desktop e un insieme limitato di pacchetti software.

Workstation nel reparto progettazione

Questi sistemi richiedono un ambiente desktop e una vasta gamma di prodotti software per lo sviluppo.

Computer portatili nel reparto vendite

Questi sistemi richiedono un ambiente desktop e un insieme limitato di applicazioni specializzate, quali software per ufficio e gestione del calendario.

Regole di AutoYaST
Figura 21.2 Regole di AutoYaST

Innanzitutto, applicare uno dei metodi descritti nella Sezione 21.1.1, «Creazione di un profilo AutoYaST» per creare profili adeguati a ogni tipo di utilizzo. In questo esempio vengono creati print.xml, engineering.xml e sales.xml.

A questo punto, creare regole per distinguere tra loro i tre tipi di hardware e per segnalare ad AutoYaST quale profilo utilizzare. Per impostare le regole, ricorrere a un algoritmo simile al seguente:

  1. Il computer possiede un IP di 192.168.2.253? In caso affermativo, utilizzare il sistema come server di stampa.

  2. Il computer possiede hardware PCMCIA ed è dotato di un chipset Intel? In caso affermativo, considerarlo come un sistema portatile Intel e installarvi il software per il reparto vendite.

  3. Se nessuna delle condizioni sopra indicate risulta vera, considerare il sistema come una workstation per sviluppatori ed eseguire un'installazione adeguata.

Per semplificare, tutto questo si traduce in un file rules.xml con i seguenti contenuti:

<?xml version="1.0"?>
<!DOCTYPE autoinstall SYSTEM "/usr/share/autoinstall/dtd/rules.dtd"> 
<autoinstall xmlns="http://www.suse.com/1.0/yast2ns" xmlns:config="http://www.suse.com/1.0/configns">
  <rules config:type="list">
    <rule>
       <hostaddress>
	    <match>192.168.2.253</match>
            <match_type>exact</match_type>
       </hostaddress>
       <result>
            <profile>print.xml</profile>
            <continue config:type="boolean">false</continue>
        </result>
    </rule>
    <rule>
       <haspcmcia>
            <match>1</match>
            <match_type>exact</match_type>
       </haspcmcia>
       <custom1>
           <script>
if grep -i intel /proc/cpuinfo > /dev/null; then
echo -n "intel"
else
echo -n "non_intel"
fi;
           </script>
           <match>*</match>
           <match_type>exact</match_type>
       </custom1>
       <result>
            <profile>sales.xml</profile>
            <continue config:type="boolean">false</continue>
        </result>
        <operator>and</operator>
    </rule>
    <rule>
        <haspcmcia>
            <match>0</match>
            <match_type>exact</match_type>
        </haspcmcia>
 	<result>
            <profile>engineering.xml</profile>
            <continue config:type="boolean">false</continue>
        </result>
    </rule>
  </rules>
</autoinstall>

Al momento della distribuzione del file delle regole, verificare che la directory rules risieda nella directory profiles specificata in autoyast=protocol:serverip/profiles/ URL. Innanzitutto, AutoYaST ricerca una sottodirectory rules che contenga il file rules.xml e quindi carica e unisce i profili specificati nel file delle regole.

La parte restante della procedura di installazione automatica viene eseguita come di consueto.

21.3 Ulteriori informazioni

Per informazioni dettagliate sulla tecnologia AutoYaST, fare riferimento a AutoYaST o , la documentazione in dotazione con il software (/usr/share/doc/packages/autoyast2).