SC Configuration Manager + MDT: join domain

Un problema col quale mi sono scontrato nella configurazione di un task sequence per il deployment automatico di Vista e', strano a dirsi, la join al dominio.

In lab

In laboratorio (ambiente ideale, network semplice e privilegi massimi su tutto) ho instalalto e configurato SC Configuration Manager integrandolo con Microsoft Deployment Toolkit per poter sfruttare le maggiori funzionalita' di quest'ultimo.

Di default, se configurate una task sequence "importata" da Microsoft Deployment Toolkit (vedi sotto)...

image

...la parte per fare la join al dominio si trova nella action "Apply Network Settings" cosi' da me impostata:

 image

In pratica siamo nella fase di PostInstall: l'immagine syspreppata (Reference altrimenti detta Core Image) e' appena stata "deployata" sul disco fisso, tramite questa action si aggiungono nel file unattend.xml (che che sara' a breve "letto" dalla procedura di installazione) le informazioni riguardo alla eventuale Join an un dominio, OU di appartenenza e account da utilizzare (chiaramente con password cifrata).

La cosa importante da notare e' questa: l'esito della action risulta positivo SE correttamente riesce a scrivere queste informazioni nel file unattend.xml. Quindi il fatto che questa action non dia errori non significa che necessariamente la macchina sia stata joinata al dominio.

Cosa succede quindi ora?

La procedura continua:

  1. vengono individuati tramite l'action "Auto Apply Drivers" i driver necessari per l'immagine e vengono copiati localmente
  2. Viene riavviato il computer e si parte con il Minisetup, ovvero la configurazione automatica di Windows secondo quanto scritto nell'unattend.xml

E' solo in questa fase, dopo aver correttamente installato tutti i driver, che, seguendo passo passo quanto riportato nell'unattend.xml, viene effettuata la Join al dominio. Ma di un eventuale fallimento non c'e' traccia nei log di Configuration Manager. Ma in realta' questo funziona benissimo in laboratorio... e' in produzione che ho avuto qualche problema!

In produzione

La procedura si conslude senza errori... peccato che la macchina non e' in dominio!

Come scoprire l'eventuale problema? Innanzitutto l'operazione di Join al dominio, essendo contenuta nel file Unattend.xml, viene loggata dal file SETUPACT.LOG che a fine deployment si trova nella cartella c :\windows\panther\unattendGC. Solo li, leggendo il log del componente [unattendedjoin.exe] potrete vedere se e' fallita o meno e il motivo. Evidentemente a me era fallita. Ma perche'?

In generale ci potrebbero essere due motivi:

  1. latenza della rete (quando cerca di fare la join la scheda di rete non ha ancora un indirizzo IP);
  2. Non si e' configurata la parte relativa all'"Apply Network Settings": basta, come da immagine, cliccare sulla stellina gialla (1) e poi OK alla finestra successiva per ottenere una Lan di default configurata con DHCP (2).

image

In realta' alla fine l'ho risolta in un altro modo...

Soluzione

Esiste una action che non e' configurata di default nel task sequence: Join domain!

image image

Una volta aggiunta all'inizio della fase di State Restore, l'action permette di fare la join al dominio questa volta segnalando direttamente nello status log della task sequence (quindi sulla console di SC Configuration Manager) eventuali errori. Fortunatamente non sono solo e ho trovato altre persone che hanno avuto un problema simile. A titolo in formativo vi segnalo questo ottimo (ma purtroppo non spesso aggiornato) blog sull'OS Deployment:

https://blogs.technet.com/inside_osd/archive/2007/06/22/joining-a-domain-during-an-os-deployment.aspx

ciao!

ale

image