Microsoft Deployment Tool ile Katılımsız Server Kurulumu
Bu makalemizde Microsoft’un ücretsiz olarak sunduğu Microsoft Deployment Tool ile fiziksel server ortamlarına çoklu olarak Windows Server işletim sisteminin nasıl dağıtımını yapıp hizmete hazır hale getireceğimiz anlatılacaktır.
Öncelikle neden işletim sistemi dağıtımı yapılır bundan kısaca bahsedeyim. Bir iki işletim sistemi kuracaksanız CD’yi takıp işletim sistemi kurduktan sonra Windows Update’ini yapıp hizmete hazır hale getirmeniz mantıklı olabilir. Fakat Cloud’a doğru giden gelişen dünya teknolojisinde eğer aşağıdaki gibi ihtiyaçlarınız varsa hazır imajdan dönme size hem zaman hem de maliyet avantajı sağlayacaktır. İşletim sisteminin dağıtımının en çok kullanıldığı yerler;
· Ondan fazla Windows client işletim sistemlerinizi tek seferde, hiçbir soru sormadan (Katılımsız / Unattended / Otomatik) , ücretsiz ve sorunsuz olarak son sürüm Windows client işletim sistemine geçirme.
· Belli bir amaç için kurulumu hazırlanmış (önceden gerekli tüm program ve bileşenleri yüklenip, full Windows Update’i yapılıp çalışır duruma getirilen) bir bilgisayarın referans imajını alarak çoğalmak.
· Üzerinde data tutmayan kritik bir sistemde bir sorun olduğunda veya sorunu çözmenin uzun süreceği durumlarda hızlı aksiyon alma adına önceden hazırlamış olduğunuz imajdan dönülmesi
· Yatay büyümenin gerektirdiği durumlarda (RDS, IIS, HyperV) hızlı aksiyon alma adına imajdan dönerek performans daralması problemlerinin çözümünde.
Data Center yönetimi eskiden çok külfetli ve zaman alan süreçlerdi. Şimdi ise Mimarinin gelişmesiyle birlikte az elaman ile çok iş yapılması sağlanmıştır. Data Center bakım maliyetleri arasında yer alan adam/gün iş kalemini azaltan süreçlerin başında işletim sistemi imaj dağıtımıdır. Bu sürecin nasıl yönetildiğini şimdi birlikte inceleyelim.
Server Deployment konusunu anlatımına başlamadan önce bilinmesi gereken bazı terminolojileri hızlıca değinelim.
UDP (User Datagram Protocol); gönderilen paketin ulaşıp ulaşmadığının kontrolünün yapılmadığı, büyük veri paketlerinin daha rahat gönderilmesinin yapıldığı veri iletişim alt protokolüdür. Gönderilen paketin doğru ulaşıp ulaşmadığına bakmadığından daha hızlı iletişim mümkündür.
TFTP (Trivial File Transfer Protocol); 1980’li yıllarda geliştirilen UDP protokolü üzerinden çalışan güvensiz ve hızlı dosya transfer protokolüdür. Basit yapısı ve az kaynak (CPU, RAM) kullanımından dolayı kullanılmaya devam etmektedir. Tek dezavantajı aynı anda sadece tek bir paketin dağıtımını yapmaktadır.
PXE (Preboot EXecution Environment); bilgisayarın disk ve işletim sistemine ihtiyaç duymadan network kart desteğiyle BootP protokolü üzerinden DHCP sunucudan yayın edilen TFTP server’a bağlanıp gerekli ön yükleme dosyalarını alarak açılmasını sağlayan bir arabirim ortamıdır.
Sysprep; Windows kurulumu yapılan makinenin Hostname, SID, Driver Cache ve Lisans verilerini resetleyen arabirim programdır. Bu uygulamanın kullanım amacı; aynı özelliklere sahip bilgisayarların imajını alıp hızlı bir şekilde dağıtımını yapmak için kullanılmaktadır. Kullanımıda şu şekildedir: Öncelikle bilgisayarlardan birisine normal kurulum yapılır. Ayrıca isteğe bağlı olarak diğer bilgisayarlarda kurulu olmasını istediğiniz uygulamalarda bu bilgisayara kurulur. Ardından sysprep (C:\Windows\System32\Sysprep) programı çalıştırılır. Bu program çalıştırıldığı kaynak bilgisayardaki bilgisayara özel bilgileri silerek bilgisayarı restart eder. Bu aşamadan sonra üçüncü parti bir image programı (ImageX, Norton Ghost, Acronis gibi) aracılığıyla hard diskin imajı diğer bir hard diske alınır. Daha sonra bu hard disk hedef bilgisayara takılır ve bilgisayar açıldığında kullanıcının karşısına mini bir setup programı çıkar ve bilgisayara özel bilgilerin girilmesi sağlanır. İstenirse bu bilgisayara özel bilgiler setup manager programı kullanılarak oluşturulan bir inf (sysprep.inf) dosyasından da alınarak otomatik hale getirilebilir.
Not: Aynı bilgisayarı en fazla 3 defa sysprep yapabilirsiniz. Değişik yöntemlerle sysprep işleminde sayacın artmaması sağlanabiliyor fakat bu yapılan işlem sonrasında ürünün tamamen unsupported olmasına neden olmaktadır. Bilgisayarınızın kaç defa sysprep yapıldığını görmek için “RunAs Administrator” ile açacağınız komut satırına “slmgr.vbs /dlv” yazıp enterlayarak görebilirsiniz. Aşağıda örnek ekran görüntüsünü verdiğim makine sadece 1 kere sysprep yapılmış olduğunu görüyorsunuz
WAIK; XP’nin katılımsız kurulumu için kullandığımız “unattended setup”la oluşturduğumuz winnt.sif isimli konfigürasyon dosya yapısı Vista için gelen WAIK aracıyla yerini “autounattend.xml” aldı. Bu yeni XML formatlı yanıt dosyası ile çok daha fazla şeyi özelleştirebiliyoruz. Ayrıca GUI arayüzü sayesinde daha anlaşılabilir gelişmiş seçenekler sunduğundan daha hızlı ve bilinçli autounattend.xml dosyası oluşturmanızı sağlamaktadır. Bu özelleştirdiğimiz dosyayı sysprep yaparken veya imajdan dönerken kullanabiliriz. Ayrıca SP1’li Win7 ve 2008r2 dağıtımı yapacaksanız WAIK 3.0’ın SUPPLEMENT update’ini kullanmanız gerekmektedir.
WinPE (Windows Pre Environment); WAIK ile gelen ve komut satırından bootable bir iso oluşturmamızı sağlayan bir araçtır. WinPE, Windows Vista/2008 sonrası işletim sistemlerinin en basit halidir desek, herhalde yanlış olmaz. WinPE ile işletim sistemi olmayan bir bilgisayar boot edilerek belirli lokasyonlardan imaj yükleyebilir. Çeşitli exe uzantılı araçların Winpe ile oluşturulmuş imaj içerisine entegre edilerek işletim sistemi olmadan kullanılabilir yani gelişmiş ThinPC yapılabilir.
WIM (Windows Imaging Format); Microsoft’a ait bir dosya uzantısıdır. Windows / DVD’si içerisindeki yükleme dosyası da .wim uzantılıdır. imagex ile aldığımız imaj’lar .wim uzantılıdır. Ayrıca WDS (Windows Deploymet Server) üzerinden network’e dağıtacağımız işletim sistemi imaj’larınında .wim uzantılı olması gerekir. Bu yüzden imageX.exe bizim için önemli bir araç olmaktadır.
İmagex Tool; Vista işletim sistemi ile birlikte tanıştığımız bir araçtır. Kendisi bir imaj alma ve geri yükleme aracı olarak kullanılmaktadır. Ghost, Acronis gibi bildiğimiz imaj alma programlarından farklı olarak WIM formatında imajlar alıp bunları geri yükleyebiliyor. Alınan imajlar sektör tabanlı olmadığından daha sorunsuz dönüşler yapılması hedeflenmiştir. Böylelikle 80 Gb’lik diskten alınan 4 Gb’lik imajı 40 Gb’lik diske dönebilirsiniz. Dönüşlerde mini Windows setup çalıştırmaktadır. Bu işlem size DISM’i kullanma imkanı sağlayacaktır.
DISM (Deployment Image Servicing and Management); Windows 7 ile beraber gelen ve imaj yönetim uygulamalarından biridir. Bu tool ile wim imaj dosyasını bilgisayarımıza mount (disk olarak bağlayarak) ederek role, feature veya Windows update pack kurabiliriz. Böylelikle imaj yedeği aldığınız bir sistemi güncellemek için başka bir makinede açmak zorunda kalmayacaksınız.
WDS (Windows Deployment Services); Windows Server 2003’te kullanılan Remote Installation Service’in Windows Server 2008 gelişmiş versiyonudur. Network tabanlı wim formatlı Windows işletim sistemi kurulumlarda kullanılmaktadır. 2008r2 ile birlikte Çoklu deployment’ı desteği ile aynı anda birden fazla katılımsız kurulumu başlatıp çok kısa sürede bitirebilirsiniz. MDT ile birlikte kullanıldığında bizim için güvenli PXEBoot ve TFTP sunuculuğu yapacaktır.
MDT (Microsoft Deployment Toolkit); Windows XP’nin çoklu ve katılımsız dağıtımı için 2003 yılında Microsoft içindeki bazı Premier Field Engineering (PEF)’lerin özel gayretleriyle oluşturdukları script tabanlı hazırlanmış internal tool olan sonradan ise sadece SA (Microsoft Software Assurance) müşterilerine sunulan Automated Deployment Services (ADS)’in gelişmiş versiyonudur. Ürün SCCM ürününü birebir takip etmektedir. SCCM üzerindeki her güncellemede MDT’de gücellenmektedir. Bu uyumluluğun nedenine daha sonradan değineceğimizde burada kısaca kesiyorum.
MDT 2012 ile Server Deployment işlemi için gerekenler:
DHCP Server :
Network üzerinden kurulum yapılabilmesi için bilgisayarın açıldığında PXE client servisinin ortamdaki DHCP servisinden ip adresi BootP servis bilgilerini alması gerekiyor. Bu nedenle öncelikle eğer Windows domain ortamında Windows DHCP servisi kullanılacaksa DHCP server’a DC tarafından delegasyonu (ip dağıtma yetkisi) yapılmış olması gerekmektedir. Daha sonrasında ise işletim sistemi dağıtımı yapılacak ip adresi scope’unda ek olarak aşağıdaki options’ların girilmesi gerekmektedir.
#060 = Client Identifier olarak adlandırılan bu alana “PXEClient” olarak girin. (Bu alanı WDS kullanacaklar girmeyedebilir. Sorunsuz çalışıyor )
#066 = Boot Server Host Name (Biz WDS kullanacağımızda WDS sunucusunun ip adresi girilmeli)
#067 = BootFile Name (default olarak boot\x64\wdsnbp.com yazmanız yeterli, bu dosya hem 32 hem de 64 bit bootP file içermektedir.)
Not: Eğer DHCP ile dağıtım yapılacak makineler arasında firewall varsa UDP 67 portuna izin verilmeli.
DNS:
DHCP servisi tarafından verilen bilgilere ulaşılması için çalışır durumda DNS servisine ihtiyaç bulunmaktadır.
AD :
Eğer dağıtım yapılacak sunucular domain’e alınacaksa ortamda erişilebilir Domain Controler olması gerekmektedir. Bunun dışında güvenlik gerekçesiyle imajların paylaşıldığı alanlara verilecek yetkilendirmelerde domain hesapları kullanılabilir. Biz çalışmamızı domain ortamında kullanacağız.
WDS:
2008r2 ile birlikte ; daha geniş driver desteği, driver ekleme, EFI, VHD disk desteği, Çoklu kurulum desteği, IPv6 ve AD olmaksızın dağıtım yapılabilme imkanı gelmiştir. Biz server dağıtımı yapacağımızdan 2008r2 üzerinde WDS’i kullanacağız. Bildiğiniz üzere deployment sürecinde iki önemli etken bulunmaktadır. Bunlar; network ve disk performansıdır. Bu yüzden imajınızı storage üzerinden yaymanız size artı sağlayacaktır. Fakat imajın dağıtımını sunucu üzerinden yapacaksanız Diskte I/O performans sorunu yaşamamak için ve en önemlisi yeni kurulum yapacaksanız diski ikiye bölüp kurulum yapmanız. Diskin bir bölümünde işletim sistemi diğer bölümde ise dağıtım imajlarının bulunmasıdır. Biz bu çalışmamızda sunucu kaynaklarını kullanacağımızdan dağıtım imajlarını da sunucu üzerinde barındıracağım. WDS kurulumu Daha önce portalımız yazarlarından Belgin Taştan’ın yazdığı “Microsoft Deployment Toolkit (MDT) 2010 Bölüm 1 Organizasyon Gereksinimleri“ isimli makalesinde anlatıldığı için burada tekrarlamayacağım.
Not: WDS ile dağıtım yapılacak makineler arasında firewall açık ise UDP 4011 portunun açılması gerekmektedir. Ayrıca Eğer sunucunuz 6 ve üstü core’a sahip CPU’lu ise KB2121690 numaralı hotfix’ini yükleyiniz.
WAIK:
MDT sizin yaptığınız işlemleri arka planda WAIK’e yaptırdığından projemiz için önemli bir yazılım olmaktadır. Ayrıca ileride değineceğimiz bazı bileşenler için aktif olarak kullanılacaktır. Kurulum ve yapılandırma yönüyle bir değişiklik olmadığından Belgin Taştan’ın yazdığı “Microsoft Deployment Toolkit (MDT) 2010 Bölüm 1 Organizasyon Gereksinimleri“ isimli makalesinde anlatıldığı için burada nasıl kurulacağını tekrarlamayacağım. Sadece biz Sp1’e sahip 2008r2 dağıtımı yapacağımızdan şuan için en güncel versiyon olan Waik3.0 ü indirip kurulumu bittikten sonra “waik_supplement_en-us” isimli dosyayı indirip uygun bir yere açın. Sonra [ xcopy E:\waik_supplement_en-us “C:\Program Files\Windows AIK\Tools\PETools” /ERDY ] komutunu kullanarak güncel WinPE imajlarını WAIK altına kopyalamış oluyoruz. Kopyalama bittiğinde WAIK’i repair ederek WinPE’yi 3.1’e yükseltmiş olursunuz. WinPE 3.1 bize daha fazla donanım desteği sağladığı gibi dağıtımını yapacağımız Sp1 içerikli Win7 ve 2008r2 desteğini sağlamaktadır.
Not: kuruluma başlamadan önce .Net 3,5 ve 4’ü kurmayı unutmayın.
MDT:
Aslında MDT 2012, kurulum ve yapılandırma olarak bakındığında 2010 versiyonundan bir farkı görülmemektedir. Peki neden 2012? Bu soruya portalımız yazarlarından Belgin Taştan’ın “MDT 2012 Beta 1 ve MAP 6.0 Beta Yayınlandı” başlıklı yazdığı makalede anlatıldığı için ben tekrarlamayacağım. Fakat bizimle alakalı bir özellik var ki o da sunucu dağıtımında çok baş ağrıtan gelişen donanım yapısı içerisinde Unified Extensible Firmware Interface (UEFI) arabirimi tanıyıp GPT partition table tipi üzerine yazabiliyor olması. Bu sayede 2011 ve sonrası tüm sunucu donanımlarında, blade sistemlerine artık sorunsuz ve SSCM’e ihtiyaç kalmadan daha az uğraşla ZeroTouch kurulum yapılabilecek olmasıdır.
Gerekli kurulumlar tamamlandıktan sonra simdi çalışmamıza başlayabiliriz. Öncelikle bu çalışmamızın kapsamını sizlerle paylaşayım. Burada yapacağımız çalışma WDS&MDT2012 ikilisi ile;
1. Tüm ayarları yapılmış, gerekli uygulama ve güncellemeleri yüklenmiş makinenin önce sysprep yapılmadan imajını almak. Sonra aldığımız imajı bir başka fiziksel sunucuya kurmak. Hemen akıllara “madem master imaj alıyoruz neden sysprep yapmadık?” Sorusu gelebilir. Buradaki amacımız Sysprep kısmında bahsettiğim lisans sayacına takılmadan istediğimiz gibi güncellenecek master imaj sunucusunu muhafaza etmek. İlk başta süreci uzatmış gibi görünebiliriz fakat bu her üç seferde bir sıfır master imaj sunucusu kurma zahmetinden bizi kurtaracaktır.
2. İmajdan Kurulumu yapılan makinenin sysprep yapılıp imajını almak
3. Sysprep’li master imajımızı kullanarak katılımsız çoklu sunucu kurulumunu gerçekleştirmek.
MDT’nin Yapılandırılması
Gerekli ön hazırlıkları bitirdiğimize göre şimdi MDT’nin yapılandırılmasına geldi.
1. Biz Sp1’li 2008r2 sunucusunun dağıtımını yapacağımız için öncelikle “Operating Systems” tabına daha önceden bir klasöre açtığımız (ben 7zip programını kullanarak bu işlemi gerçekleştirdim) iso dosyası içerisindeki işletim sistemine ait wim imajını import edelim. Bu işlem için mouse ile “Operating Systems” sağ ile tıklayıp “import” deyiniz. İmport işlemi sonrasında kullanmayacağınız OS çeşitlerini silelim.
Not: Dağıtım ve imaj alacağınız işletim sistemi dili ne ise oluşturacağınız Task’ler de o OS CD imajını kullanın. Hatta mümkünse WAIK’de aynı dilde olsun. Değişik dillelere ait bileşenleri veya değişik OS’leri bağladığınızda boot hataları alınmaktadır. (Tecrübe ile sabittir)
2. Dağıtım yapılacak OS import’u bittikten sonra yukarıda belirttiğimiz amacımıza uygun “Task Sequences” tanımlarını yapalım. Bu kısımda amacımız sadece genel hatlarıyla TASK’leri oluşturmak. Makalemizin ilerleyen kısımlarında bazı TASK’lerin yapılandırmasına geri dönülecektir.
Bu işlem için “Task Sequences” üzerinde sağ tıklayarak “New Task Sequences” deyin.
a. Karşınıza gelecek ekranda “Task Sequence ID” tabına ilgili işlem numarasını girin. Daha sonradan bu ID numaralarını kullanarak kendimize katılımsız kurulumlar gerçekleştireceğiz.
i. Kapsamımızda belirttiğimiz ilk Task’imiz “sysprepsiz imaj almak” olduğundan bu işlemi gerçekleştirmek için “Sysprep and Capture” i secin. (Sysprep yazıyor ama biz ilerleyen adımlarda Sysprep’i disable ederek Sysprep yapmasını engelleyeceğiz.)
ii. Opeting System altına daha önceden eklemiş olduğumuz işletim sistemi dosyasını gösterip sorduğu sorulara uygun cevap vererek işlemi tamamlıyoruz.
iii. Yaptığımız “task sequence”’de imaj alırken sysprep yapma dememiz için tanımladığımız task üzerinde sağ ile tıklayıp Propertise’i seçin.
iv. Gelen ekranda “Task Sequence” tabı içerisindeki “Execute Sysprep”’lar bulunup tıklayın. Yan tarafta açılan alanda Options tabına girip “Disable this step” alanı işaretlenir.
b. Kapsamımızda belirttiğimiz ikinci adımımız olan “master imaj sunucunun sysprep yapmadan alınan disk imajının dağıtımı” işlemi için “Standart server task squence” seçilir ve işlem tamamlanır. Master Imaj sunucumuzun imajı alındıktan sonra TASK’ımızı yapılandırmaya devem edeceğiz. Bu yüzden şimdilik genel olarak oluşturup ilerleyelim.
c. Kapsamımızda belirttiğimiz üçüncü adımımız olan “sysprepsiz imajdan döndüğümüz makineyi sysprep yapıp imajını almak” için bir değişiklik yapılmadan “Sysprep ve Capture” seçeneği seçilip işleme konulur
d. Son task için “Server Deploy” isminde “Standart Server Task Sequence” seçilip işlem genel olarak tamamlanır. Sysprepli imajımız alındıktan sonra TASK’ımızı yapılandırmak için geri geleceğiz.
3. Eğer işlem yapılacak sunucuda WinPE’nin tanımadığı driver varsa “Out-of-box Drivers” altına ilgili donanım sürücülerinin inf dosyalarının bulunduğu dizini göstererek import işlemini yapınız.
4. Şimdi sıra full unattended olarak deployment yapabilmek için MDT’nin yapılandırılmasına geldi. MDT Deployment Workbench yapılandırılmasına geçmeden önce dağıtımını yapacağımız ortama göre MDT’nin şekillendirilmesi gerekmektedir. Bu işlem için “MDT Deployment Share” üzerinde sağ tıklanarak Properties’i tıklayın.
Amacımız Sp1’li 2008r2 Server dağıtımı olduğundan General sekmesi altında x86 platformuna ait işareti kaldıralım ki her update ve yenilemede kullanmayacağımız x86 dosyalarını oluşturmak için bizi bekletmesin (sürecin ne kadar uzun sürdüğünü görünce hak vereceksiniz). MDT’yi amacımıza göre ne kadar ince yapılandırırsak o kadar hızlı ve sorunsuz olur.
Not: Eğer Siz aynı WDS&MDT ikilisine ait sunucu üzerinde client dağıtımı da yapacaksanız bu ayarı YAPMAYIN.
Deployment sürecinde oluşacak hataları incelemek için WDS sunucusu üzerinde bir klasör açarak içerisine SCCM’in Trace64 isimli log okuma programını ekleyin. Sonra bu eklediğiniz klasörün yolunu WindowsPE tıklayıp Platform olarak x64’ü seçtikten sonra “Extra directory to add” kısmına klasör yolunu yazın. İlerleyen bölümde Trace64 ile nasıl hata ayıklaması yapılacağı anlatılacağından burada bahsetmeyeceğim.
MDT Management’i amacımıza uygun olarak şekillendirdikten sonra unattended deployment için kurallarımızı oluşturmaya başlayalım. MDT’de Deployment iki kısımdan oluşmaktadır. Birincisi WinPE ile açılan ön işletim sisteminin yüklendiği aşamadır ki biz bu aşamada sorulan soruları üzerinde çalıştığı sunucuya göre cevaplandırıp hiç bize sormadan deployment aşamasına gelmesini sağlayacağız. Diğer kısım ise WinPE’nin çalışması sonrasında WMI ile envanter bilgisi alınan sunucunun mac adresine göre bizim belirleyeceğimiz şekilde ilgili MDT Task’ini çalıştırmasıdır.
İlk kısım olan WinPE ile başlayan sistemin bize sormadan üzerinde çalıştığı sunucunun mac adresine göre deploy aşamasına gelebilmesi için aşağıda örnek olarak oluşturduğumuz ve sizin isteklerinize göre daha da geliştirebileceğiniz tanımlamaları “MDT Deployment Share Properties” içerisindeki Rules tabına girip “Edit BootStrap.ini” butonuna tıklayarak girebileceğiniz gibi “\deploymentshare$\Control” klasörü altından da BootStrap.ini dosyasına ulaşıp yazabilirsiniz. Unutulmaması gereken nokta klasör üzerinden ulaşıyorsanız sadece NotePad programını kullanın ki karakter yapısı değişmesin.
Ek Bilgilendirme ;
[ ile başlayıp ] ile biten kısım kuralın tipini belirtir
# ile başlayıp # ile biten kısım size özel tek satırlık açıklama alanı sağlar.
# ile başlayan komutlar çalıştırılmaz
Aşağıda göreceğiniz işlemlerin olabilmesi için bir domain kullanıcısına ihtiyacımız bulunmaktadır. Kullanıcının ismi ve şifresinin sunucu üzerinde BootStrap ve CustomSettings dosyalarında yer alacağından güvenlik gerekçesiyle kullanıcının RDP erişiminin kapatılıp sadece WDS sunucusunda dosya erişimi ve AD üzerinde obje oluşturma yetkisi verilmesi gerekmektedir.
Örnek BootStap.ini Dosyası:
[Settings]
Priority=Default
[Default]
SkipBDDWelcome=YES
SkipLocaleSelection=YES
UserLocale=tr-TR
KeyboardLocalePE=041f:0000041f
SystemLocale=tr-TR
UILanguage=en-US
#oluşturmuş olduğumuz task’leri ve dosyaları download edebilmesi için share adresinin FQDN bilgisini erişecek hesap bilgilerini giriyoruz#
DeployRoot=\\sunucunun_full_domain_adresi\DeploymentShare$
UserID=domain_user_name
UserDomain=domain
UserPassword=domain_user_şifresi
WinPE ile sorgusuz başlayan sistemimizin hangi sunucunun oluşturduğumuz TASK’e göre işlem yapacağını belirlemek için Rules kısmına veya “\deploymentshare$\Control” klasörü altındaki CustomSettings.ini dosyasına aşağıda örnek yazmış olduğum kuralları inceleyip kendi sistemine göre geliştirerek yazınız.
Eğer birden fazla network interface’i varsa önerim hepsini yazmanız. Bazen yazılan mac adresini alamadığını gördüm. Bu sorunu gidermek için en az iki mac adresini girerek kural oluşturun.
Örnek CustomSettings.ini Dosyası:
[Settings]
Priority=MACAddress, Default
# Priority ile işlem yapılacak sistemde neye göre önceliklendirme yapılacağı belirtiliyor#
#Biz burada önceliği mac adresine göre belirledik. Mac adresi tutmayan sunucular default ayarlarla açılacak#
Properties=MyCustomProperty
# MyCustomProperty ile benim belirlediğim ayarlara göre kurulum yapılacağı bildiriliyor#
[Default]
#Tüm sunucular için genel ayarları buraya girilir#
SkipLocaleSelection=Yes
#WinPE ile başlayan her soru başlığını ilgili skip parametresi ile geçilmesini sağlıyoruz#
#Eğer verdiğimiz skip parametresi sonrasında uygun cevapları vermezsek anlaşılamayan değişik hatalara neden olabilir. Bu yüzden Skip ile göstermediğiniz kısmın cevaplarını veriyor olmanız gerekmektedir.# SkipTimeZone=YES
KeyboardLocale=tr-TR
TimeZone=130
TimeZoneName=GTB Standard Time
SkipAdminPassword=YES
AdminPassword=$ifreGirin01
#Eğer referans olarak oluşturacağınız imajın lokal Administrator kullanıcısının şifresini her seferinde kendiniz belirlemek istiyorsanız AdminPassword’u yazmayın
SkipSummary=YES
SkipFinalSummary=YES
#arada ve iş sonunda rapor göstermesini istiyorsanız SkipSummary ve SkipFinalSummary yazmayın#
SkipProductKey=YES
SkipBitLocker=YES
#Eğer BitLocker i enable etmek istiyorsanız SkipBitLocker yazmayın#
EventService=http://sunucu_ismi.domain.name:9800
#REFERANS ALINAN SUNUCU#
#Sysprepsiz alınacak imaj#
[00:10:18:AB:01:18]
[00:10:18:AB:01:1A]
DoCapture=YES
#imaj alma komutu#
SkipTaskSequence=YES
TaskSequenceID=1
#Bu mac adresine sahip makinenin çalıştıracağı TASK buradan belirlenir#
SkipComputerBackup=YES
ComputerBackupLocation=\\sunucu_ismi.domain.name\deploymentshare$\captures
BackupFile=masterimaj.wim
#Alınacak imajın nereye kopyalanacağını bildirilir#
SkipComputerName=YES
ComputerName=masterimaj
SkipDomainMembership=YES
JoinWorkgroup=COZUMPARK
#Master imajımız her an güncellenebilir olcağından domain e almayacağız#
#SYSPREPLI RDS SUNUCUSU#
#bu sunucuya hem imaj basılıp hemde imaj alınacağından karışıklığa neden olmamak adına tam otomatik kod yazılmamıştır#
[00:10:18:9F:BE:A4]
[00:10:18:9F:BE:A6]
SkipComputerName=YES
ComputerName=RDSSysprep
SkipDomainMembership=YES
JoinWorkgroup=TFKBRDS
#SUNUCU DAĞITIMI 01#
[00:10:18:AB:05:F8]
[00:10:18:AB:05:FA]
SkipTaskSequence=YES
TaskSequenceID=4
SkipComputerName=YES
ComputerName=RDS01
SkipDomainMembership=YES
JoinDomain=COZUMPARK
DomainAdmin=domain_user_name
DomainAdminDomain=domain_ismi
DomainAdminPassword=$ifre
#her bir kullanıcı default’ta 3 makineyi domain’e alabilir. Yazılacak şifre cleartext olacağından önerim RDP yetkisi olmayan ve AD üzerinde obje oluşturma yetkisine sahip basit bir System hesabı oluşturmanız#
MachineObjectOU=OU=FCS,OU=ComputeR,DC=Cozumpark,DC=com
# MachineObjectOU ile domain e aldığını makinenin hangi OU altında oluşturulacağını belirtirsiniz. BU OU üzerinde service user için yetki oluşturmayı unutmayın#
# MachineObjectOU da yazacağınız OU yolunda boşluk bırakmadan yazılacaktır#
SkipComputerBackup=YES
SkipCapture=YES
Böylelikle değişik sunucular için değişik task’ler çalıştırıp süreci katılımsız olarak yönetmemizi sağlayacak kuralları girdikten sonra şimdi ayarların uygulanabilmesi için “MDT Deployment Share” üzerinde sağ tıklanarak “Update Deployment Share” diyeceğiz. Her yaptığınız değişiklikten sonra bu işlem tekrarlanması gerekmektedir.
MDT yapılandırmasından sonra eğer ilk defa update işlemini yapacaksanız veya WinPE’nin boot dosyası üzerinde bir değişiklik yaptıysanız “Completely regenerate the boot images” kısmını işaretleyerek ilerleyin diğer şartlarda ise sadece “Optimize the boot image updating process” i işaretleyerek devam ediniz. Artık ufak bir kahve molası J verebiliriz.
MDT ile oluşturduğumuz WinPE’nin WDS ile dağıtımı için WDS yönetim arabirimini açınız. “Boot Images” sekmesine sağ ile tıklayıp “DeploymentShare\Boot” altındaki LiteTouchPE_x64.wim’i ekleyiniz. WDS birden fazla boot dosyasının PXE server’lığını yapabiliyor. Fakat böyle bir durumda PXEClient’ın önüne gelen seçeneklerden birisini seçmesini bekleyecektir/belirleyeceksiniz. Böyle bir ortamda otomatik kurulum gerçekleştirilmesi zorlanacağından yapmamamız daha sağlıklı olacaktır.
İlerleyen zamanda MDT’nin bootstap.ini dosyası üzerinden yaptığınız her değişiklik için öncelikle MDT’yi “Completely regenerate the boot images” olarak update edip sonra WDS boot dosyasını Replace Image seçip üzerine yazmanız gerekmektedir.
Kapsamımız dahilinde belirlediğimiz 3 iş adımlarımızı şimdi sırayla oluşturmaya başlayalım
1) Sysprepsiz Master Sunucunun Imajını almak:
Boot imajımızı oluşturup açılışa hazır hale getirdikten sonra öncelikle master imaj olarak oluşturduğumuz makinenin üzerinden \\sunucu.domain.com\DeploymentShare$\Scripts\LiteTouch.vbs dosyasını çalıştırın. Eğer oluşturmuş olduğunuz kodda hata yoksa gerekli işlemleri yapıp makinenin imajını almak için restart yapacaktır. Bu aşamada öncelikle mevcut diskin içerisinde geçici bir bölüm oluşturarak restart sonrasında kullanacağı dosyaları buraya kaydetmektedir. Daha sonrasında restart sonrası yeni oluşturduğu bu geçici disk bölümünü boot sector’e işlemektedir. Imaj alma işlemi bittiğinde bu oluşturmuş olduğu geçici dizini silip boot sector’ü düzeltecektir.
Not: Tüm imaj alma işlemleri işletim sistemi açıkken sunucu üzerinde paylaşılan LiteTouch.vbs dosyasının çalıştırılmasıyla olmaktadır.
Eğer sunucu açılırken aşağıdaki gibi Status: 0x000000f hatası verip açılmazsa telaşlanmayın. Sebebi oluşturmuş olduğu geçici pattition’ı boot sektor’den açamaması. (UEFI ve GPT’li her sistemde bu sorunu yaşadım) Bu soruna ilişkin internette çok değişik öneriler bulunmakta fakat sunucumuz master imaj olarak kullanacağımızdan bizim için büyük önem arz eden sunucuda çözüm olarak biz fazla değişiklik yapmadan F12 ile PXEBoot olarak sistemi açıp sürecin kaldığı yerden başlamasını sağlayın.
2) Sysprepli Master Imajın Oluşturulması:
Captures klasörü altına Sysprepsiz imajı alınan master sunucumuzun wim dosyasını “Deployment Workbench” altındaki “Operationg System” altına “Custom image file” seçeneğini seçerek import edelim.
Dosyanın yerini gösterirken move seçeneğini aktif edersek alınan imajı “DeploymentShare\Operating Systems” altına taşıyarak yerden tasarruf etmemizi sağlayacaktır.
Almış olduğumuz imaj dosyasına her hangi bir işleme tabi tutulmayacağı için “Setup and Sysprep files are not needed” seçeneğini seçip işlemi tamamlayın
Almış olduğumuz sysprepsiz master imaj dosyasının sysprep yapılacak sunucuya deploy edilmesi için daha önceden “Master imaj Deploy” isimli TASK’ı çift tıklayıp açılan ekranda “Task Sequence” tabında aşağıdaki ayarları yaparak yapılandırın.
a) Bu task’imiz deployment olduğundan öncelikle “State Capture” ve “State Restore” gruplarını tıkladıktan sonra sağ tarafta açılan Option sekmesi altındaki “Disable this step” işaretlenerek çalışmasını engelleyin.
b) “Format and Partition Disk” işaretlenerek hangi diskinize kurulum yapılacağı seçilir. Bu çalışmayı yürüttüğümüz sunucular Raid1 tek partition üzerinde GPT disk tipini kullandığından ben aşağıdaki gibi yapılandırdım. Sizde kendi yapınıza uygun olan seçenekleri buradan belirleyin
c) Son olarak deploy edilecek imaj dosyasının “install Operating System” altında gösterilmesi gerekiyor. Bu işlem için “Operating System to install” altındaki Browser sekmesi tıklanarak seçiniz.
Aynı fiziksel sunucu hem imaj alınıp hem de imaj basılacağından full unattended işleme tabi tutulamayacağından bizim yazmış olduğumuz kodlarla en azından daha az soru sormasını sağlamış olduk.
Bu işlemler bittiğinde MDT ve WDS’i yukarıda tarif ettiğimiz şekilde update ederek Sysprepsiz master imajın basılacağı sunucuyu restart edip F12 ile PXEBoot ile açın. “Master imaj Deploy” isimli TASK’ı seçerek deployment sürecini başlatın.
Deploy işlemi tamamlanıp işletim sistemi açılıp gerekli kontrolleri yaptıktan sonra \\sunucu.domain.com\DeploymentShare$\Scripts\LiteTouch.vbs dosyasını çalıştırıp “Sysprep and Capture” isimli oluşturduğumuz TASK’ı çalıştırın. Uygun isim vererek Capture klasörü altına imaj alınmasını sağlayın.
3) Server Deployment
Sysprepli imajı alma işlemi bittikten sonra öncelikle alınan imajın yukarıda ayrıntılı olarak bahsettiğimiz gibi “Operationg System” altına import edilir. Sonra daha önceden oluşturduğumuz “Sysprepli RDS Deploy” TASK çift tıklanarak açılıp aşağıdaki ayarlamalar yapılır.
a) “State Capture Group” disable edilir
b) Preinstall grubu altındaki “Format and Partition Disk” tıklanıp sol tarafda açılan menüde sunucunuzun disk tipine göre ayarlama yapılır.
c) “İnject Drivers” disable edilir
d) “Install Operating System” tıklanıp sysprepli aldığımız imaj dosyası eklenir
e) “State Restore” grubu altında “Recover from Domain” ve “Restore group” hepsi disable edilir.
Çalışmamız tamamlanmış bulunmaktadır. Siz örnek MDT Rule’unu istediğiniz gibi genişletip arttırabilirsiniz. Başarılar. . .
HATA AYIKLAMA (Troubleshooting)
Tüm işlem bu kadar kolay ve sorunsuz görünse de Murphy Kanunlarını unutmamak lazım. Peki ya her şey beklediğimiz gibi gitmezse? Bu durumda imdadımıza yetişecek araç WinPE’nin içine yerleştirdiğimiz Trace64’dür.
Genelde hataların büyük bir bölümü kod veya TASK’ın düzgün yapılandırılmamasından kaynaklanmakta olsa da bunu ekranda görülen hata mesajından çıkarma imkanımız bazen olmayabilir. Hatalara yönelik nokta atışı tespitlerimizi WinPE ekranında F8 e basarak açacağımız komut satırı penceresini kullanarak yapacağız.
MDT loğlarının dışında hata ayıklama adımlarımız:
1) Komut satırında root dizine düştükten sonra (cd\ komutu ile) trace64 yazıp enterlayın. Eğer daha önceden formatlanmış Windows diski üzerine MDT’yi çalıştırıyorsanız loğları c:\MININT\SMSOSD\OSDLOGS altında toplamaktadır. Formatlanmamış disk üzerine kurulum yapılıyorsa X:\MININT\SMSOSD\OSDLOGS altındaki loğları inceleyiniz.
Hatanızı anlayıp MDT üzerinde gerekli değişikliği yapıp update ettikten sonra hata ekranını kapatıp komut satırından wpeinit yazıp enterlayarak Wizard’ı yeniden başlatabilirsiniz.
2) MDT Kuralımızı mac adresine göre yaptığımız için öncelikle “ipconfig /all” ile sunucu üzerindeki mac adresleri ile kuralımızı karşılaştırın
4) WDS sunucusuna ping atın. Paket kaybı var mı?
5) Disk tanımlarınızı kontrol edin bu işlem için diskpart yazıp enter ile diskpart yönetiminin içine girin. “list disk” ve “list volume” komutları ile disk durumunu görüntüleyin. Disk tipi ile TASK’de belirtiğiniz aynı mı? kontrol edin.
Emeği ve desteğinden dolayı Yağmur Şahin ve Ozan Köksal Hocalarıma’a sizler huzurunda teşekkürü borç bilirim.
Üstadım merhaba, yıllarca okullarda faz 1 ve faz 2’lerde kendi ihtiyacımıza göre win kurup clonezilla ile imaj alıyoruz ve bu imajı tahtalara kurarken clonezilla ayarlarından “IP adreslerını dikkate alarak win adını değiştir” seçeneğini işaretliyoruz. Bugüne kadar faz 1-2 de hıc sorun yaşamadık ama faz3 arçeliklerde aynı sistemi kurduğumda internet hızımız inanılmaz düşüyor. Şimdi sorum şu; zamanında vestel’in imajı faz1-2 lerde direkt açılıyor sanırım sysprep yapılmamış cunku ımajı yükleyince açılıştaki yükleme ayarları çıkmıyor. Yükleme ayarları çıkmadan direkt imajı olusturabılmek mumkun mudur yoksa bazı çakışmaları engellemek adına mutlaka sysprep yapmak mı gerekir. Her akıllı tahta için Sysprep yapmak demek her cihaz için ayrı ayrı vakit kaybı malesef 🙂