Da vSphere 5.5 - La distribuzione di Centos 7 dal modello ignora le personalizzazioni


10

Ho avuto problemi durante la distribuzione di CentOS7 dal modello in quanto le personalizzazioni non hanno effetto. Per l'impostazione del sistema operativo VM - Ho selezionato RHEL7 come sistema operativo anziché CentOS (in precedenza avevo imparato quella lezione con Oracle Linux 6.5 nel mio lavoro precedente). Dovrebbe funzionare giusto? Non esattamente.

Sintomo :
dopo aver distribuito una nuova macchina virtuale dal modello CentOS7, al primo avvio il server fornisce il nome host corretto, quindi vengono eseguiti gli script di personalizzazione e dopo il riavvio della macchina virtuale ha nuovamente il nome host del modello originale e mentre / etc / sysconfig / network-scripts / ifcfg-ether ha le impostazioni corrette, le impostazioni ifcfg per il nic corretto (ifcfg-e *) non sono state implementate.

Contesto :

Ho seguito le istruzioni di VMWare per l'installazione di CentOS: http://partnerweb.vmware.com/GOSIG/CentOS_7.html

Dopo alcune aggiunte al pacchetto (inclusi net-tools richiesti per le personalizzazioni di vSphere), ho quindi abbottonato il modello come segue usando il mio "script templatize" (credito a http://lonesysadmin.net/2013/03/26/preparing -linux-template-vms / per passi):

#!/bin/bash    
# clean yum cache
/usr/bin/yum clean all
#remove udev hardware rules
/bin/rm -f /etc/udev/rules.d/70*
#remove nic mac addr and uuid from ifcfg scripts
/bin/sed -i '/^\(HWADDR\|UUID\)=/d' /etc/sysconfig/network-scripts/ifcfg-eth0
#remove host keys (important step security wise.  similar to system GUID in Windows)
/bin/rm /etc/ssh/ssh_host_*
#engage logrotate to shrink logspace used
/usr/sbin/logrotate -f /etc/logrotate.conf
#and lets shutdown
init 0

Versioni supportate in cui le soluzioni alternative non sono più necessarie :

  • vSphere 5.5u3 (build 3000241 o successiva)
  • vSphere 6.0 e versioni successive

"Matrice di supporto per la personalizzazione del sistema operativo guest" di VMWare : http://partnerweb.vmware.com/programs/guestOS/guest-os-customization-matrix.pdf


È necessario incorporare il sys-unconfigprocesso di creazione del modello.
ewwhite,

@ewwhite Grazie. Bel consiglio. Lo inserirò nel mio kit di strumenti. Guardandolo, è più utile per le immagini bare metal in cui non ci sono personalizzazioni vSphere o KVM in cui sono disponibili Virt-Tools.
Jeff Burns,

Qual è la tua versione di aggiornamento esx?
kikicarbonell,

Il mio vcenter 5.5 2001466 non mostra RedHat Enterprise 7 come opzione.
kikicarbonell,

kikicarbonell - Ho aggiornato la mia domanda per riflettere dove non sono più necessarie le soluzioni alternative e le versioni supportate del sistema operativo guest. Nel tuo caso, devi aggiornare a 5.5u3. Saluti
Jeff Burns,

Risposte:


5

AGGIORNAMENTO: appena testato, funziona ancora in Centos 7.1 utilizzando RHEL 6 come opzione del SO guest e il comando seguente.

FYI redhat-release è collegata alla release centos. Se modifichi redhat-release, stai effettivamente modificando centos-release.

Per seguire la raccomandazione della soluzione di non modificare i file di versione specifici della distro, procedere come segue:

rm -f /etc/redhat-release && touch /etc/redhat-release && echo "Red Hat Enterprise Linux Server release 7.0 (Maipo)" > /etc/redhat-release

Grazie. Non riesco a credere di non aver notato che erano collegati in modo simbolico ... Ho spostato la soluzione alla tua risposta in quanto carina, concisa e precisa per quello che avevo inizialmente previsto.
Jeff Burns,

6

Soluzione : ho modificato / etc / redhat-release in un valore riconosciuto da vSphere di "Red Hat Enterprise Linux Server versione 7.0 (Maipo)", e ora posso distribuire una VM dal mio modello CentOS7 con personalizzazioni applicate perfettamente. Assicurati prima di tutto di rm il link simbolico esistente / etc / redhat. Vedi la risposta di mjevange per l'elegante soluzione a una fodera.

Sfondo : dopo aver creato e distribuito un nuovo modello Oracle Linux 7 (OEL7) usando lo stesso metodo di cui sopra per CentOS 7 e averlo FUNZIONATO, ho subito capito quale fosse il problema. Controlla:

File di rilascio predefinito / etc / redhat in Centos7:

 cat /etc/redhat-release
 CentOS Linux release 7.0.1406 (Core)  

File di rilascio predefinito / etc / redhat in RHEL7 / OEL7:

 cat /etc/redhat-release
 Red Hat Enterprise Linux Server release 7.0 (Maipo)

(Si noti che i file di versione per CentOS e Oracle Linux sono rispettivamente centos-release e oracle-release. NON toccare quelli in quanto sono i file di versione specifici della distro.)

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.