SMS 2003

Murat Yıldırımoğlu 30/10/2005

 

Niçin Systems Management Server (SMS) Benzeri Programlara Gerek Duyuyoruz?

 

Dört beş bilgisayarlık küçük ağları bir kenara bırakıp orta ve büyük ölçekli ağları düşünelim. Bu tür ağlarda onlarca, bazen yüzlerce bilgisayar bulunur. Bu bilgisayarlara ilişkin olarak çeşitli yönetim işleri yapmamız gerekir.

 

Örneğin, böyle bir ağda yöneticimiz bizden bilgisayarlar konusunda bir rapor isteyebilir: Kaç bilgisayarın işlemcisi Pentium II, kaçında 128 MB bellek var? Kaçında Microsoft Office programları yüklü? Sabit diskleri ne büyüklükte? Bu raporun alınmasıyla da iş bitmiyor. Belli zamanlarda bu tür raporlar almak gerekir ki bir değişiklik olursa haberimiz olsun. Bu tür işlemleri yapmazsak bir bilgisayarın 256 MB belleği 128 MB’a iniverebilir. Ya da sabit disk 40 GB’dan 20 GB’a inebilir. Ya da lisansız yazılım kullanmama kuralımız olduğu halde çalışanlarımızdan birisi bizden habersiz olarak bilgisayarına Office XP’yi yükleyebilir (BSA baskına geldiğinde “haberimiz yoktu” ifadesi bir mazeret olarak kabul edilmez).

 

Başka bir iş şu olabilir: Yöneticilerden birisi Excel’de bir işin nasıl yapılacağını öğrenmek ister. Sizin yanına gidip bu işin nasıl olduğunu göstermeniz gerekebilir. Ya da onun bilgisayarına yeni bir sürücü yüklenecekse yine o bilgisayarın başına gitmeniz gerekir.

 

Yine başka bir iş şu olabilir: Ağımızdaki 100 bilgisayarda bulunan Office 2000 yazılımlarını Office XP’ye yükseltmemiz gerekebilir. Normalde bu yükseltim bilgisayar başına yaklaşık yarım saat alır. 100 bilgisayar için toplam süre 50 saat yapar ki bu da bir kişinin bir haftalık çalışmasına bedeldir.

 

Sonuncusu da lisanslama ile ilgili bir iş olabilir. Office XP için 100 lisans almışsınızdır ve belli bir anda 100 kişiden fazlasının Office XP’yi kullanmamasını isteyebilirsiniz.

 

İşte SMS yazılımı yukarıda yazdığımız bütün bu yönetim işlerini yapmaya yarar.

              

SMS 2003’ün dört işlevi bulunur: 1) Yazılım ve donanım envanteri çıkartmak 2) Uzaktan kumanda  3) Yazılım dağıtımı   4) Yazılım ölçümü.

 

Yazılım ve donanım envanteri sayesinde ağınızdaki makinelerin donanım ve yazılım özellikleri bir veritabanında  ( o veritabanı da Microsoft SQL Server oluyor) toplanıyor. Bu işlem periyodik olarak yapılıyor (örneğin her gün ya da her hafta). Bu sayede bir bilgisayarın yazılım ve donanımdaki değişikliklerini izleyebiliyorsunuz. Buradan çok çeşitli raporlar da çıkartabiliyorsunuz (“Windows 98 yüklü kaç bilgisayar var ?” ya da “Sabit diski 20 GB’dan büyük bilgisayarlar hangileri?” gibi).

 

Uzaktan kumanda (Remote Control) özelliği sayesinde uzaktaki bir bilgisayarın monitörüne, klavyesine ve faresine el koyuyorsunuz ve sanki o makinenin başındaymış gibi iş yapabiliyorsunuz. O makinedeki çeşitli aksaklıkları bu yolla çözebileceğiniz gibi bu işlevi eğitim için de kullanabilirsiniz. Siz o makinede bir işlem yaparken o makinenin başında oturan kişi işlemleri izleyebiliyor.

 

Yazılım dağıtımı özelliği sayesinde bilgisayarlara topluca Service Pack yüklemesi yapılabiliyor, virüs tanıma dosyaları güncellenebiliyor, işletim sistemleri yükseltilebiliyor vb.

 

Yazılım ölçümü (Software metering) sayesinde ağınızda bulunan bilgisayarlarda çalışan programların sayısını belirleyebiliyorsunuz. Hatta BSA, yazılım envanteriyle birlikte bu tür bir ölçümün yapılmadığı yerlerde yöneticilerin bilgisayarlarda kullanılan yazılımlar konusunda hiç bir zaman emin olamayacaklarını söylüyor.       

 

 

SMS üzerine genel bilgiler

SMS 2003 bir sistem yönetim yazılımı. Bu yazılım iki bileşenden oluşuyor: Sunucu ve istemci. SMS 2003’ü bir sunucuya kuracağız, istemci bileşenini de yöneteceğimiz bilgisayarlara yükleyeceğiz. SMS programı yöneteceği sisteme ilişkin bilgileri bir veritabanında saklıyor. Bu veritabanı Microsoft SQL Server 2000 ya da SQL Server 7.0 olabilir.

SQL Server ile SMS 2003 farklı  makinelere kurulabileceği gibi aynı bilgisayara da kurtulabilir. Benim tercih ettiğim yöntem de SQL Server ile SMS Server'ı aynı makinede tutmaktır. Böyle bir sistemi yönetmek çok kolay olmaktadır. SMS Server ile SQL Server arasındaki olası sorunlar da en aza indirilmektedir.

O zaman ilk işimiz sunucumuza SQL Server'ı yüklemek. Yükledikten sonra da SQL Server’ın hizmet paketini (Service Pack) yüklemek gerekiyor.

Kurulum öncesinde nelerin yüklü olması gerekir?

SMS 2003 Server şu işletim sistemlerine kurulabilir: Windows 2000 Server ailesi ve Windows 2003 Web Edition dışındaki Windows 2003 Server ailesine. Kurulacak bilgisayarın hızlı bir işlemciye, en az 256 MB RAM’e ve en az 2 GB’lık bir NTFS bölüme sahip olması gerekiyor. SMS kurulacak makinede yalnızca NTFS dosya sisteminin bulunması öneriliyor.  SMS kurulacak bilgisayarın bir AD etki alanına üye olması gerekiyor (DC olması zorunlu değil).

 

Kurulum öncesinde IIS’in yüklü olmasında yarar var. SMS 2003 raporları için çeşitli Web siteleri yaratıyor, IIS’i de bu Web sitelerini oluşturmak için kullanıyor. Windows 2003’de IIS otomatik olarak kurulmuyor, sonradan elle kurulması gerekiyor. IIS kuruluşu sırasında Background Intelligent Transfer Service (BITS) Server Extensions öğesini kurmakta yarar var.

 

SMS Server Kuruluşu

 

SMS Server kurulurken bizden bir site (SMS sitesi) oluşturmamız isteniyor. SMS sitesi bir yönetim bütünü ve genel olarak birbirine hızlı hatlarla bağlı bilgisayarları  gösteriyor.

 

Sitenin bir adı, bir de üç karakterlik kodu var. Kod genelde S01, S02 gibi ifadeler şeklinde veriliyor.

 

SMS 2003, Win2K ile birlikte gelen Active Directory (AD) yapısını tanıyor ve istenirse AD’nin şemasını değiştiriyor (bu değişikliği yapmakta yarar var; yeni bazı işlevler bu değişikliğe gerek duyuyor). Yine kuruluş sırasında bazı yeni kullanıcılar ve gruplar oluşturuluyor.

 

Eğer AD şemasını değiştirmeye karar verdiysek, SMS’i kuracak kişinin Schema Admins grubuna üye olması gerekiyor. Yeni kullanıcılar ve gruplar yaratabilmek için de kurulumu yapacak kişinin Domain Admins grubuna üye olması gerekiyor.

 

SMS 2003 kurulurken Network Monitor otomatik olarak kurulmuyor. Network Monitor’ı SMS 2003 CD’sinden \Netmon\i386 klasöründen Netmonsetup.exe komutuyla kurmak gerekiyor.

 

SMS kurulunca neler oldu?

 

Yeni gruplar yaratıldı:

 

1)SMS Admins

2) SMS Reporting Users

3) SMS_SiteSystemToSiteServerConnection_S01

4) SMS_SiteSystemToSQLConnection_S01

5) SMS_SiteSystemToSiteConnection_S01

 

Yeni servisler eklendi:

 

1) SMS_SQL_MONITOR

2) SMS_SITE_BACKUP

3) SMS_SERVER_LOCATOR_POINT

4) SMS_SERVER_BOOTSTRAP_BIGMSAVAS

5) SMS_REPORTING_POINT

6) SMS_EXECUTIVE

7) SMS Agent Host

 

Yeni paylaşımlar yaratıldı:

 

1) CAP_S01    G:\CAP_S01

2) SMS_S01    G:\SMS

3) SMS_SITE G:\SMS\inboxes\despoolr.box\receive

4) SMS_SUIAgent       G:\SMS\SUIAgent

 

Otomatik olarak yaratılmayan ama istemci kurulumu için gereken bir paylaşımı elle yaratmakta yarar var. SMS’in kurulduğu klasörün altındaki client klasörünü (örneğin, g:\sms\client)  smsclient adıyla paylaşıma açmakta yarar var.

 

Yeni bir program grubu yaratıldı:

Start, Programs altında Systems Management Server adıyla yeni bir program grubu oluşturuldu. Bu grupta SMS 2003’ü yönetmek için gereken araçlar var. Bu araçlar SMS Server yüklü olmayan makinelere de kurulabilir (diğer makinelerde SMS kurulum programı çalıştırılır, yalnızca yönetim öğesinin yüklenmesi seçilir).  

 

Yönetim İşleri

SMS’in yönetimi SMS Yönetim Konsolu (SMS Administrator Console) ile yapılır. Bu konsolu açtığımızda SMS veritabanına bağlanılır.

 

Şekil 1: SMS Yönetim Konsolu

 

İlk iş olarak Site Hierarchy altında sitemizi bulup onun sınırlarını belirtiyoruz. SMS kurulduğunda bilgisayarın IP adreslerine bakarak bir site sınır belirler. Bunu geliştirmemiz ve AD sitelerini SMS siteleri olarak belirtmemiz de mümkündür. Bu iş siteye sağ tıklayıp  Site Boundaries (Site Sınırları) sekmesine giderek yapılabilir.

 

İkinci iş olarak SMS sunucumuzun sistem içindeki rollerini belirtmemiz gerekir. Bu iş de Site Hierarchy altındaki Site Systems kabından sunucumuzu bulup özelliklerine geçip onun çeşitli rollerini belirterek yapılır.

 

SMS'de Sunucuların Rolleri (Site System Roles)

1) Client access point

    Legacy istemcilerle SMS Site Server arasında ilişki noktası. CAP, bütün eski istemci bilgilerini Site server'a iletir.

2) Distribution point

            Yazılım dağıtım paketlerini içerir ve bunları istemcilere gönderir. Dağıtım noktaları Background Intelligent Transfer Service (BITS) mekanizmasını kullanır.

3) Management point

            Advanced istemciler yönetim noktalarını kullanarak SMS siteleriyle ilişki kurarlar. Yönetim noktaları istemcilere yapılandırma ayrıntıları ile program duyurularını iletir. İstemcilerden de envanter, yazılım ölçümü ve istemci durumu bilgilerini alırlar. Management point için makinede IIS'in kurulu ve etkin olması gerekir.

4) Server locator point

            Eski ve yeni istemciler için CAP'lere ve yönetim noktalarına ilişkin bilgiler verir. İstemci kuruluşunda kullanılırlar.Yalnızca primary sitelerde bulunabilirler.

5) Reporting point

            Report viewer kodunu ve tamamlayıcı raporları içerir. IIS gerektirir.

 

Başta sunucumuzda Reporting Point, Management Point ve Server Locator Point rolleri yoktur, bu rolleri vermekte yarar vardır.

  

Şimdi sitemizin sınırlarını ve sunucumuzun rollerini belirlediğimize göre artık sıra istemcilere geldi.

 

Burada şöyle bir sıra izleyeceğiz: Önce istemcileri ve ağdaki diğer kaynakları (örneğin sunucuları) keşfedeceğiz (Discovery), sonra da bu istemcilere SMS istemci programlarının yüklenmesini sağlayacağız.  

 

İstemci Saptama Yöntemleri

 

İstemciler ve diğer kaynaklar aşağıdaki yöntemler kullanılarak keşfediliyor:

 

1) Network Discovery

2) Heartbeat Discovery

3) Windows User Account Discovery

4) Windows User Group Discovery

5) Active Directory System Discovery

6) Active Directory User Discovery

7) Active Directory System Group Discovery

 

Yukarıdaki yöntemler kullanılarak saptanan bilgisayarlar Site Database altında çeşitli topluluklar (collection) altında görüntüleniyor.

 

 

Şekil 2:  Hazırgelen istemci toplulukları

 

Bu istemci topluluklarına ek olarak çeşitli ölçütlere dayanan yeni istemci toplulukları yaratılabilir (örneğin, belleği 128 MB’dan az olan ve C: sürücüsünde 500 MB’dan az boş yeri kalmış bilgisayarlar topluluğu gibi).

 

İstemci programlarının yüklenişi

 

SMS istemci programı Windows 98 ve yukarısı makinelere SMS istemcisi yüklenebiliyor.

 

İstemci programları ikiye ayrılıyor:

a-      Legacy Client (Eski Usül İstemci)

b-     Advanced Client (Yeni Usül, Gelişmiş İstemci)

 

Legacy Client’ı 2000 öncesi sistemlere kuruyoruz. 2000 ve sonrasına Legacy Client’ı da Advanced Client’ı da kurabiliriz ama yeni işletim sistemlerine sahip makinelerde gelişmiş istemciyi kullanmakta yarar var (yeni işlevlerden yararlanabilmek amacıyla).

 

Legacy Client Kurulumu

1) Logon-Script ile kurulum

2) Client push ile kurulumu

3) Elle kurulum

 

Advanced Client Kurulumu

1) Logon-Script ile kurulum

2) Client push ile kurulumu

3) Software Distribution ile kurulum

 

Advanced client programı SMS Site Server’daki SMS_01 paylaşımı altında, Client\i386 klasörünün altında bulunur. Programın adı: ccmsetup.exe

Advanced client programını logon script ile kurmak için Capinst.exe programını kullanabiliriz. 

 

Legacy client programının adıysa smsman.exe

Legacy client programını logon script ile kurmak için Capinst.exe programını kullanabiliriz. 

Legacy client programını elle kurmak istediğimizde bizden bir Site System’in adresini belirtmemiz istenir. Bu alana SMS Server’daki CAP paylaşımının UNC adresini vermek gerekir. Örneğin, \\Sibelpc\cap_06 gibi.

 

Advanced client kurulumu ile ilgili sorunlar için SMS Server’da SMS\Logs klasöründeki ccm.log dosyasına bakılmalı. İstemci tarafında %Windir%\system32\ccmsetup klasöründeki ccmsetup.log ve client.msi.log dosyalarına bakılabilir. Advanced client programı %Windir%\system32\ccm klasörüne kurulur.

 

Eğer SMS sitesinde bir yönetim noktası (Management Point) yapılandırılmamışsa Client Push kurulumu ile Advanced Client kurulamaz.

 

Logon betikleri ile kurulum yapıldığında çıkan sorunlar ekranda görüntülenmez. Bunlar %Temp%\capinst.log dosyasına yazılır.

 

İstemci Ajanlarının Yapılandırılışı

 

İstemciler kurulduktan sonra bu istemcilerde neler yapılabileceğini gösteren istemci öğelerini (client agent)  yapılandırmak gerekir. Bu iş Site Hierarchy altındaki Client Agents kabından yapılır. Şu istemci öğeleri yapılandırılabilir:

1)      Hardware Inventory Client Agent

2)      Software Inventory Client Agent

3)      Remote Tools Client Agent

4)      Advertised Programs Client Agent

5)  Software Metering  Advertised Programs Client Agent

 

Bu istemci öğeleri tek tek etkinleştirilir ve yapılandırılır (örneğin, donanım envanterinin hangi aralıklarla alınacağı belirtilir).

 

İstemcilerin donanım ve yazılımlarının raporlanması

Bir toplulukta bulunan bir istemciye sağ tıkladığımızda çıkan menüden Start Resource Explorer şıkkını seçerek o istemcinin son saptanan yazılım ve donanımını görebileceğimiz gibi donanım ve yazılımdaki değişiklikleri de görebiliriz.

 

İstemcilere uzaktan kumanda

Bir toplulukta bulunan bir istemciye sağ tıkladığımızda çıkan menüden Start Resource Explorer şıkkını seçerek o istemciye uzaktan kumanda edebiliyoruz. Remote Control öğesinin yapılandırılmasına dayanarak kullanıcıdan onay istenebiliyor ya da istenmeden uzaktan kumanda yapılabiliyor.

 

İstemcilere Yazılım Dağıtımı

Yazılım dağıtımı şu aşamalardan oluşur:

1)      Yazılım için bir paket oluşturulur. Burada Windows Installer dosyalarını (.msi uzantılı dosyalar), SMS için özel üretilmiş dosyaları (package definition file) ya da programın .exe dosyasını gösterebiliyoruz. Yine burada yazılımın yükleme dosyalarının nerede bulunduğunu da gösteriyoruz.

2)      Yazılımı kurmak için gereken bir programı gösteriyoruz.

3)      Yazılım paketini istemcilere duyurmak için bir duyuru (advertisement) yaratıyoruz. Bu sayede yazılımın hangi istemci topluluğunu hedeflediğini belirtebiliyoruz.   

 

İstemcilere yazılım güncellemesi (Software Update) dağıtımı

 

İstemcilere kendi başına bütünlüğü olan yazılım paketleri dağılabileceği gibi yazılım yamaları da dağıtılabilir. Bu iş Software Updates kabı altından yapılır.

Bu iş için öncelikle istemcilerdeki yazılımlara yönelik güncellemeleri tarayan yazılımların yüklenmesi gerekir. Bu iş Software Updates kabına sağ tıklayıp All tasks menüsünden Download inventory scanning programs şıkkını seçerek yapılabileceği gibi tarama yazılımlarını elle de Microsoft’un sitesinden indirebiliriz.

 

Microsoft’un sitesinde şu anda iki adet tarama programı bulunmaktadır:

1)      SecurityPatch_ENU.exe: İşletim sistemi ve diğer sistem yazılımlarına yönelik yamaları tarar.

2)      OfficePatch_ENU.exe: Office öğelerine yönelik yamaları tarar.

 

Zaman içinde başka ürünler için de bu türlü tarama programları çıkabilir.

 

Tarama programları Microsoft’tan kataloglar indirir. Microsoft’un şu anda iki kataloğu var: Güvenlik için MSsecure.xml ve Office için Invcif.exe.

 

Tarama programları çalıştırıldıktan, kataloglar yüklendikten sonra Software Updates kabında istemcilere yönelik yamalarınbilgisi listelenir. Bu yamalardan birine sağ tıklayıp Distribute Software Update şıkkını seçtiğimizde bu yama Microsoft’tan indirilir ve ve indirilen yamöa için bir yazılım dağıtım paketi yaratılır, duyuru hazırlanır.

  

Güvenlik yamalarının taranması ve yüklenmesi ile ilgili bazı programlar şu şekildedir.

Win32_Patchstate: İstemcilerin yama durumunu gösteren sınıf.

PatchInstall.exe: Software Update Installation Agent

PatchAuthorize.xml: Software Update Installation List

MSsecure.xml: Security Patch Bulletin Catalog

MBSA: Microsoft Baseline Security Analyser

Invcm.exe: Microsoft Office Update Tool

Invcif.exe: Microsoft Office Update Database

 

 

Security Update Inventory Tool senkronizasyon öğesi MSsecure.xml’in son sürümünü indirir ve Distribution Point’ler yardımı ile bunları bilgisayarlara dağıtır.

 

Software Update Installation Agent: Distribute Software Update wizard’ı tarafından yüklenir.

 

Yapılacak İşler:

1)      Software update inventory tool’u indir ve çalıştır ve bu aracın öğelerini istemci bilgisayarlara dağıt. Tek bir sefer yapılır.

2)      Hangi güncellemelerin dağıtılacağına karar ver (authorize) ve dağıt.

3)      Yazılım güncellemelerinin dağıtımını izle.

 

Yazılım güncellemeleri paketlerinin her biri bir installar paketi (.exe dosyası şeklinde) içinde gelir. Bu exe programı gerekli collection’ları advertisement’ları programları yaratır. Her installer paketinde iki öğe bulunur:

a-      Tarama öğesi: S_scan.exe ya da O_scan.exe

b-     Senkronizasyon öğesi: Syncxml.exe

 

SecurityPatch_xxx.exe: Site sunucu üzerinde çalışır.

S_scan.exe: Tarama programı istemci üzerinde çalışır.

OfficePatch_xxx.exe: Site sunucu üzerinde çalışır.

O_scan.exe: Tarama programı istemci üzerinde çalışır.

Syncxml.exe: Senkronizasyon programı istemci üzerinde çalışır. Bu programın çalışacağı istemci Yazılım Güncellemesi Envanter Programı yüklenirken belirtilir. Bu programın yüklendiği bilgisayar İnternet’e çıkar, Microsoft’a bağlanır, yazılım güncelleme kataloğunun son halini yüklemeye çalışır.

 

Security Updates: Microsoft işletim sistemlerine ve diğer sistem öğelerine yönelik.

Office Updates: Microsoft Office’e yönelik.

 

Software Update Inventory Tool tarafından yaratılan öğeler:

1)      Scan tool (pre-production collection): İçinde yalnızca test bilgisayarı olarak belirtilen bilgisayarın olduğu collection

2)      Syncronization component collection    sync host: tek bir bilgisayarı içerir.

3)      Software Update Inventory Tool Package: Security Update Inevntory Tool’un istemci öğelerini istemcilere dağıtmak için yaratılır. Bu paketin altında üç program bulunur.

4)      Scan component advertisement: Tarama öğelerini istemcilere dağıtma için yaratılan duyuru öğesi

5)      Syncronization component advertisement   sync: Senkronizasyon öğesi duyurusu. Yedi günde bir çalışır.