Server 2008 R2 Print Server Kurulumu Yönetimi ve Cluster Yapılandırması
Daha önceden Portalımızda “Windows Server 2008R2 Print Server Yönetimi” ve “Windows Yazdırma Süreci ve RHS Easy Printer” isimlerinde yayınlanan makalelerimde Server 2008R2 için yazdırma süreci ve yönetimi detaylı olarak anlatmıştık. Devam niteliğinde olan Windows Server 2008R2 Print Server makalemizin bu üçüncü bölümünde ise Print Server’ı sisteminin mimari yapısında en iyi nasıl yapılandıracağına ait önerilerle birlikte yazdırma hizmetlerinin aksaması durumunda tüm kullanıcılarınızın etkilenme ihtimaline karşılık yapınızı nasıl Microsoft Cluster platformu ile yedekliliğinin sağlayıp erişebilirliğini nasıl arttırabileceği anlatılacaktır.
Portalımız da çok detaylı olarak Microsoft Failover Cluster özelliğinin ne olduğu ve nasıl kurulacağı ile ilgili bilgiler yer aldığı için burada tekrardan değinmek yerine portalımızdaki makalelerde bulunmayan Cluster ve Print servislerine yönelik sorunsuz ve başarılı kurulum için neler yapılması gerektiği yönünde önemli görülen noktalara ağırlık verilecektir.
Kuruluma geçmeden önce yapımızı ve cluster için yapılandıracağımız sunucuların cluster için hazır hale getirilmesiyle başlayacağız. Öncelikle Cluster servisimizin kaç node’dan oluşacaksa ona göre Quorum tipinin belirlenip ihtiyaçlarının belirlenmesi gerekmektedir. Daha önceden “Microsoft Cluster Mimarisinde Quorum Yapilandirmasi ve Split Brain Senaryosu” başlıklı yazdığım makaleden anlatıldığı için burada detaya girmeyeceğim. Sadece tek sayıda node’unuz varsa “Node Majority” seçmelisiniz. Eğer benim gibi 2 node’lu (çift sayıda) cluster kuracaksanız 1 adet en az 256 MB boyutunda Quorum diskine ihtiyacınız bulunmaktadır. Bununla birlikte cluster yapılacak Print Spooler servisi için en az 1024 MB diske ihtiyacınız bulunmaktadır. Bu diski Print Spooler servisinin ihtiyaç duyduğu yazıcı tanımları, yazıcı sürücüleri ve yazdırma sürecince kuyrukta bekletilecek dosyaların konumlandırması için kullanacaktır. Böylelikle servis bir node’da fail verdiğinde diğer node üzerinden kaldığı yerden devam edecektir.
Sunucu Ön Hazırlıklarının Yapılması:
İhtiyaç duyulan diski ve Quorum yapımızı belirledikten sonra sunucuların Cluster Print Servisi için uygun yapılandırmasına gelmiş bulunuyoruz. Bu aşamada temiz ve full update (Optinal sekmesinde yer alan güncellemelerde dahil) yapılarak kurulumu tamamlanmış sunucularda sistem stabilitesini sağlama adına ve olası problemlerin önlenmesi için uzak bağlantı ile gelen port ve printer yönlendirmelerinin kapatılması gerekmektedir. Bunun için Control Panel’inden Administrative Tools >> Terminal Services >> Terminal Services Configuration’u RDP-Tcp üzerinde sağ ile tıklayıp Properties girin. “Client Setting” altında Clipboard hariç hepsini işaretleyin.
Bu işlemi GPO ile yapmak isterseniz Computer Configuration –> Policies –> Administrative Templates –> Windows Components –> Remote Desktop Services –> Remote Desktop Session Host –> Printer Redirectionaltındaki değerler aşağıdaki gibi yapılır.
Ayrıca Computer Configuration –> Policies –> Administrative Templates –> Windows Components –> Remote Desktop Services –> Remote Desktop Session Host –> Device and Resource Redirection altındaki değerler aşağıdaki gibi yapılır.
Vista ile birlikte Network Performansı için gelen “TCP Auto-Tuning” özelliği SQL, File Server, RDS, Print Server gibi yoğun network trafiği oluşturan servislerde sorun oluşturmaktadır. Bu nedenle kapatılması önerilmektedir. Kapatmak için aşağıdaki komutları Runas Administrator ile açtığınız komut penceresinde çalıştırın. File Server, Terminal Server gibi yoğun TCP trafiği oluşturan servis sunucularınızda network performansı için bu komutları kullanabilirsiniz.
netsh int tcp set heuristics disabled
netsh int tcp set global chimney=disabled
netsh int tcp set global rss=disabled
netsh int ip set global taskoffload=disabled
netsh int tcp set global autotuninglevel=disabled
Klasik ve basit cluster yapısında Nodelar arasındaki cluster iletişimi için bir heartbeat dediğimiz PRIVATE network’üne birde cluster’da hizmet verdiğimiz servisin dış ortamla iletişimde bulunduğu PUBLIC network’üne ihtiyaç bulunmaktadır.
Ben Cluster’ımın dışarı ile olan ilişkilerinde kullanacağı ip adresinin bulunacağı interface’e Public, Heartbeat için kullanılacak interface’e de Private isimlerini verdim.
Network ayarlarında dikkat edilecek noktalardan en önemlisi iki cluster node’unun birbirlerinin ayakta olup olmadığını kontrol etmeleri için kullanılan Heartbeat network interface’i yani Private baçağında sadece “Internet Protocol Version 4 (Tcp/IPv4)” ve (Tcp/IPv6)”’nın işaretli olsun diğerlerinde işaret varsa kaldırınız. TCP/IP v6 kullanmasanız bile işaretli olması gerekmektedir. Microsoft tarafından iptal edilmesi önerilmemektedir.
Ayrıca Private interface’inde vermiş olduğunuz ip adresinin DNS ve Wins servislerine register edip olası network erişim problemlerine neden olmaması için ip adresini girdikten sonra Advanced butonuna tıklayın. DNS tabına tıklayın. Aşağıda yer alan “Register this connection’s addresses in DNS” tıklı ise kaldırın. WINS tabına gelip “Disable Netbios over TCP/IP” seçeneği işaretli değil ise işaretleyelim.
Private network interface’i için gerekli tanımlamalar yapıldıktan sonra sunucu network erişimindeki önceliği Public interface’ine vermek için “Control Panel > Network and Internet > Network Connections”a geldiğinizde klavyedeki ALT tuşuna basarak menü tabını çıkartıp Advanced alanı içerisindeki “Advance Settings” e gelip Public network interface’ini yukarı taşıyın.
Windows Server 2008 ve sonrasında Failover Clustering features’I kurduğunuzda komut satırından “ipconfig /all” dediğinizde “cluster virtual network adapter” kendini en üst sıraya aldığını görmektesiniz. TCP/IP bağımlı servisler belli zamanlarda sunucu adını veya servis adını pingler. Bu tip standart kontrollerde eğer “cluster virtual network adapter” isimli interface üst sırada ise virtual adaptor’den gelen APIPA adres bilgisinden dolayı performans kaydı ve hatalara neden olabilir. Bunun çözümü olarak gene Microsoft’un geliştirdiği NVSPBIND isimli internal tool’u indirip aşağıdaki komutları uyguladığınızda Public interface’inin üst sıraya çıktığını göreceksiniz.
ipconfig /all > nvspbind-results.txt
nvspbind /n >> nvspbind-results.txt
nvspbind /o ms_tcpip >> nvspbind-results.txt
Notepad programı ile nvspbind-results.txt isimli dosyayı açın. Public interface’i bulup aşağıdaki tırnak işaretli kısmın arasına yazınız.
nvspbind /++ “NIC-Name-Here” ms_tcpip
Eğer sunucunuzun işlemci CPU core sayınız 24’den fazla ise “Physical APIC Mode”’un enable edilmesi gerekiyor. Privilege (Run as Administrator) mode’da açılan komut penceresine aşağıdaki komut yazılıp Enter’lanıp sunucu restart edilir.
bcdedit /set usephysicaldestination yes
Eğer sunucunuzun RAM’i 25 GB ve üstü ise pagefile’i 22528 Mb olarak set edin. Altında ise RAM kadar pagefile verilmesi önerilir fakat asla otomatikte bırakmayın.
Contol Panel’de PowerOption’a girip “High Performance” a getirin.
Server Manager’ın ana ekranında “Configure IE ESC” tıklayıp IE ESC ( Enhanced Security) kapatın.
Buraya kadar sunucu bazlı mutat yapılması gereken adımları gördük. Bu aşamadan sonra Print Server için gerekenleri yapacağız. Bu adım için her bir node’ta öncelikle Print Server için ihtiyaç duyulan feature’ları yükleyelim. Bunun için Server Manager’dan Feature’a sağ tıklayıp “Add Feature” deyin.
Gelen ekranda öncelikle LPD servisi için “LPR Port Monitor” ; IP printer yönetimi için “Simple TCP/IP Services” ; sorun tespiti için “Telnet Client” ; XPS servisi için “XPS Viewer” işaretliyerek kuruluma başlayın.
Gerekli Feature kurulumları tamamlandığında Server Manager üzerinden Roles’e sağ tıklayıp “Add Roles” deyin.
Gelen ekranda “Print and Document Services” işaretleyip Next deyin.
Gelen ekranda “Print and Document Services” ait hangi servisleri kuracağınız sorulmaktadır.
Role Servis İsmi |
Açıklama |
Print Server |
Temel yazdırma servisidir. |
Distributed Scan Server |
Ağ tarayıcılarının yönetilmesi, tarama süreçlerinin merkezi alandan yönetilmesi için kullanılmaktadır. |
Internet Printing |
Web servisleri üzerinden yazdırma hizmetini sağlamak için kullanılmaktadır. Bunu seçtiğinizde IIS üzerinde default web page oluşturarak yazıcılarınızı web üzerinden paylaşılmasını sağlamaktadır. |
LPD Service |
Line Printer Daemon (LPD) servisi, Unix base yazıcıların ve ip printer olmayan Windows client PC’lere bağlı yazıcıların print server üzerinden paylaşmasını sağlamaktadır. |
Sistemimiz için uygun olan servisler seçildikten sonra Next diyerek kuruluma tamamlayınız. Print Server kurulumları tamamlandıktan sonra aşağıdaki linkten güncel Printer hotfixlerini indirerek sunuculara kurunuz.
Bundan sonra ise artık sunucumuzun Cluster için yapılandırmasına başlıyoruz. Bunun için öncelikle Server Manager’dan Failover Clustering feature’ının eklenip kurulumunun yapılması gerekmektedir. Olası problemlerin yaşanmaması için Print Server için feature eklerken “Failover Clustering” ‘i eklemedik. Printing süreci için gerekli bileşenler hazır olduktan sonra cluster yapılandırmasına geçtiğimizden “Failover Clustering” kurulumu sonrasında yapılmaktadır.
Server Manager Features’a gelip sağ tıklayarak “Add Feature” dedikten sonra gelen ekranda “Failover Clustering” , eğer birden fazla HBA portu kullanıyorsanız “Multipath I/O”, “Windows Server Backup” ‘ı “Command-line Tools” ile birlikte ve .Net3’ü seçip Next diyerek kurulumu tamamlayın. Son durumda kurulu feature listesi aşağıdaki gibi olacaktır.
Cluster feature’ının kurulumu tamamlandığında aşağıdaki linkte yayınlanan güncel Cluster hotfixleri indirilip kurulur. Kurulum tamamlandığında sunucuyu bir kez daha full Windows Update yapın.
http://support.microsoft.com/kb/2545685
Cluster Yapılandırması:
Bu adımdan sonra sizlere Print servisinin Cluster yapılmasına geçmiş bulunuyoruz. Bu adımda Control Panel > All Control Panel Items > Administrative Tools altındaki “Failover Cluster Manager” tıklanarak açılır. Gelen ekranda “Failover Cluster Manager” üzerinde sağ tıklayıp “Create a Cluster” ı tıklayın.
Gelen ekranda oluşturacağınız cluster’a dahil edilecek sunucularınızın ismini yazıp ADD tuşuna basarak validasyon testine geçin.
Validasyon testini başarıyla geçtikten sonra cluster için tahsis edeceğiniz ismi ve ip adresini girip Next dediğinizde Cluster’ınız kurulmuş olacaktır.
Cluster’ımızın kurulumu tamamlandıktan sonra şimdi sıra ön kontrol ve ayarların yapılmasına geldi. Öncelikle Storage sekmesine gelerek disklerinizi cluster görmüş mü? Sorun var mı diye kontrol edin.
Eklenen diskler görülüyorsa ve çift sayıda node’unuz varsa Quorum diski için tahsis ettiğiniz diski mi Cluster Quorum olarak kullanıyor bunu kontrol edin. Eğer doğru disk seçilmemişse Cluster üzerinde sağ tıklayın açılan menüden “More Action > Configure Quorum Setting” e tıklayarak yapabilirsiniz.
Cluster tanımlamasında hata yapılmaması için Disklerinizin ve Network interface’lerinizin ismini güncellemeniz gerekmektedir. Bu işlem için Storage tabına tıklayın ismini değiştirmek istediğiniz diskin üzerinde iken sağ tıklayıp Properties’e girin.
Açılan ekranda Resource Name kısmına vermek istediğiniz ismi girip Apply diyerek kaydedin.
Aynı işlemi Network interface’leri için yaparak düzenleyiniz.
Default olarak 2 interface’li bir cluster’da Default Gateway tanımı yapılan Public olarak secilir ve client network bu interface üzerinden erişime açılır. Fakat sizin eğer birden fazla network interface’iniz varsa onlar üzerinde Properties’e girip “Do not allow cluster network communication on this network” seciniz. Böylelikle bu interface’ler üzerinde olan bir problemden dolayı cluster failover olmaz.
Cluster’a Printer Servisinin Eklenmesi:
Cluster’ımız kurulduktan sonra genel bazı kontrol ve ayarlamaları yaptıktan sonra Printing servisinin cluster yapılmasına geçeceğiz. Bu işlem için “Services and Application” üzerinde sağ tıklayıp “Configure a Service or Application” i secin.
Açılan menüden Print Server’i seçip Next ile ilerleyin.
Açılan menüde Print Server için vereceğiniz ismi ve ip adresini giriniz.
Tüm Node’ların erişeceği ve olası bir failover durumunda veri kaybı olmaksızın iş sürekliliğinin sağlanabilmesi için sizden bir diski belirlemenizi istemektedir.
Uygun diski seçip Next ile devam ettiğinizde Özet ekran karınıza geliyor olup onaylamanız durumunda kurulum tamamlanmış olacaktır.
Print Server Yönetimi:
Print Server hizmetini cluster olarak yapılandırmış olduk. Kurulum sonrası yapılandırma adımlarına gecelim. Bu işlem için Cluster Print Server servisi üzerinde sağ tıklayıp “Manage Printers” seçelim.
Print Server’a Driver Ekleme:
Öncelikle Printer hizmeti vereceğimiz yazıcıların sürücülerini sistemimize kurmamız gerekmektedir. Bu işlem için Driver menüsü üzerinde sağ tıklayarak “Add Driver”’ı secin.
Hangi tip işletim sistemleri için yazıcı paylaşımında bulunacaksanız onlar için ayrı ayrı driver yüklemeniz gerekmektedir. “Add Driver” dedikten sonra gelen ekranda yükleyeceğiniz driver’ın tipini seçip Next diyerek ilerleyiniz.
Gelen menüde “Have Disk” butonuna basarak yazıcı için ekleyeceğiniz güncel driver’ın inf uzantılı file’ın bulunduğu yeri gösteriniz.
Uygun driver’ı seçip yüklemeyi tamamlayınız.
Print Server’a Yazıcı Ekleme:
Driver yüklemesi tamamlandıktan sonra sıra geldi yazıcıları eklemeye. 2 tip yazıcı eklenebilmektedir. Ya IP yani Network printer olacak yada PC’leri ip printer olarak gösteren LPD olarak yapılmaktadır. Daha önceden Portalımızda “Windows Server 2008R2 Print Server Yönetimi” isimli makalemde anlatıldığı için burada detaya girmeden bir adet IP Printer ekleme örneği vereceğim. Bunun için Printer sekmesine gelip sağ tıklayarak “Add Printer”’ı tıklayalım.
Gelen ekranda “Add a TCP/IP or Web Services Printer by IP Address or hostname” seçeneğini işaretleyip Next ile ilerliyelim.
Gelen ekranda eğer yazıcınızın sadece IP üzerinden hizmet veren yazıcı olduğunu net olarak biliyorsanız TCP/IP seçeneğini seçelim. Bilmiyorsak Autodetect’te bırakınız.
Print Server’a eklenecek yazıcının ip adresini giriniz ve “Auto detect the printer driver to use.” Seçeneği işaretli ise işareti kaldırıp Next’e basıp ilerleyiniz.
Gelen ekranda IP Printer yazıcının network kart modelini sormaktadır. Eğer biliyor ve listede bulabiliyorsanız seciniz. Bilmiyorsanız “Generic Network Card” ‘ı seçerek ilerleyiniz.
Gelen ekranda yazıcı için kullanacağınız driver’ın seçilmesi istenilecektir. Bu ekranda önceden eklediğimiz çalıştığından emin olduğumuz güncel sürücüyü göstererek ilerleyiniz veya “install a new driver” diyerek driver ekleyebiliriz. Olası problemlerin yaşanmaması için önerilen driver’ın yazıcı kurulumundan önce yapılmasıdır.
Gelen ekranda önerim “Printer Name” ve “Share Name”’i aynı isimde yazmanız. Çünkü hem bu yazıcının yönetimi hem de Kullanıcılarınızın bu yazıcıya hangi isimde erişeceklerinin tek bir isimde olursa sıkıntı yaşamazsınız. Ayrıca Location ve Comment kısımlarına gireceğiniz bilgiler ile sizin sunucu üzerinden baktığınızda yazıcı ile ilgili ön bilgilere hızlı erişmenizi sağlayacaktır.
Burada dikkat edeceğiniz nokta bazen “Share this printer” sekmesi işaretsiz gelmektedir. Böyle bir durumda kullanıcılarınız yazıcıya erişemez. Next diyerek kurulumu tamamlayınız.
Kurulum sonrasında 2008 Print Server Cluster bug’ından dolayı eklenen yazıcılar Active Directory’de listelenmesi gelmiyor. Bu yüzden ya eklediğiniz Yazıcı sağ tıklayıp Properties’den Sharing’e gelip “List in Directory” seceneğini işaretlemeniz gerekiyor.
Yada tüm yazıcıların eklemesi bittiğinde CTRL+A ile tüm yazıcıları seçtikten sonra sağ tıklayıp “List in Directory” seçin. Böylelikle AD üzerinde Print Server’a ait Computer objesinin altında yazıcıları oluşturmaya başlar.
Eğer başka bir Print Server’daki verileri yeni kurduğunuz Print Server’a aktarmak istiyorsanız 2 farklı yolla bu işlemi yapabilirsiniz. İlk yol Print Management üzerinden print server sağ tıklanarak export denilmesidir. Bu yöntemde Print Server üzerindeki driver’da dahil tüm veriler aktarılmaktadır. Eğer driver’ın aktarılmasını istemiyorsanız bu işlemi ancak komut satırından yapabilirsiniz.
Print Server verilerinin export edilmesindeki ikinci yol ise komut satırı üzerinden yapılmaktadır. Aşağıda örnek komut sunulmuştur.
C:\Windows\system32\spool\tools\PrintBrm.exe -b -S \\printserverismi -f C:\dosyaismi.printerExport –nobin
PrintBrm Komutları:
-b : Backup, yedek al
-r : Restore, yedekten dön
-s : Server, sunucu ismi
-f : file name, nereye hangi isimde yedek alınacak veya neredeki hangi dosyadan dönülecek.Bu komutta sonuna muhakkak .printerExport ekleyiniz
-nobin : sürücü dosyaları hariç
-p : Publish, AD’de yayınla
Print Server Yedekten Dönme::
Alınmış olunan Print Server yedeği hem Print Management hemde komut satırından dönülebilmektedir. Eğer Print Management üzerinden yapılmak istenilirse Print Server üzerinde sağ tıklayarak “import” seçeneğini kullanarak yapabilirsiniz.
Komut satırından yapmak için aşağıdaki komut kullanılabilir.
C:\Windows\system32\spool\tools\PrintBrm.exe -r -S \\printserver -f E:\ps-backupfile-ismi.printerExport -o Force -p All
Kaynakça:
http://technet.microsoft.com/tr-tr/library/cc731636(en-us,WS.10).aspx
http://en.wikipedia.org/wiki/Printer_Command_Language
http://technet.microsoft.com/en-us/library/cc722179(WS.10).aspx
http://msdn.microsoft.com/en-us/library/dd179231.aspx#_Toc208829806
http://blogs.technet.com/b/askperf/archive/2008/02/10/ws2008-client-side-rendering.aspx
http://msdn.microsoft.com/en-us/library/ff560836(v=vs.85).aspx
http://www.speedguide.net/articles/windows-7-vista-2008-tweaks-2574