Ana içeriğe atla

Visual Studio 2008 Test Edition Web ve Load Test İncelemesi (Bölüm 5) - Ağ Dışında (Workgroup) Agent ve Controller Servisleri için Kullanıcı ve Grupların Düzenlenmesi

Kurulum ve kullanım ile ilgili bölümlere başladığımız makale serimizde (Bölüm 1, Bölüm 2, Bölüm 3, Bölüm 4), yük testi sırasında  uzak makineler için metriklerin toplanmasında yaşayabileceğimiz olası bir probleme ve çözümüne değineceğiz. Böyle bir problem ile karşılaşıldığında, yük testi raporunda şöyle bir hata görülür;
“Exception LoadTestCounterCategoryNotFoundException-The performance counter category ‘Network Interface’ cannot be accessed on computer '….' (Access is denied) ; check that the category and computer names are correct.”
Uzak bir makinenin performans metriklerini toplayabilmek için, eğer çalıştırılan sistem bulunduğunuz ağın dışında (örn: sanal makinelerden oluşan ağ) ise, öncelikle, “controller” ve “agent” servislerinin kurulu olduğu sistemler üzerinde gerekli erişim haklarına sahip kullanıcıların yaratılması ve bu kullanıcıların, bazı özel test gruplarına dâhil edilmesi gerekmektedir. Bunun için, bu makinelerde önceden belirleyeceğimiz kullanıcı isimlerini ve şifrelerini birebir girmemiz gerekmektedir. Bunu bir tablo yapısı ile göstermek istersek eğer;
Servisin Kurulu Olduğu Makine
Kullanıcı Adı
Şifresi
ControllerService
ControllerUserName
ControllerPass
ControllerService
AgentUserName
AgentPass
AgentService1
ControllerUserName
ControllerPass
AgentService1
AgentUserName
AgentPass
AgentService2
ControllerUserName
ControllerPass
AgentService2
AgentUserName
AgentPass

Bu kullanıcıları yaratırken birkaç noktaya dikkat etmemiz gerekiyor. Öncelikle, ilgili kullanıcının “User must change password on next logon” seçeneğindeki işareti kaldırmalı ve “Password never expires” seçeneğinin işaretli olması gerekir.

image
Bu kullanıcılar “Administrators” grubuna dâhil edilmeli ve ilgili servisler de bu kullanıcılar ile başlatılır hale getirilmelidir. Bütün bunlara ek olarak, az önce bahsettiğimiz uzak makineden performans metriklerinin toplanması için “agent” ve “controller” servislerinin kurulu olduğu makinelerde aşağıdaki adımların da uygulanması gerekmektedir.
“Agent” servisinin kurulu olduğu makinelerde yapılması gerekenler:
1. Windows güvenlik duvarı uygulamasını açıp
  • Performance Logs & Alerts servisinin
  • File And Printer Sharing servisinin
Güvenlik duvarından geçmesine izin verilmelidir.
2. Lusrmgr.msc (Local Users and Groups) konsolunu açıp “agent” kullanıcısı
  • Performance Log Users
  • Performance Monitor Users
  • Event Log Readers
Gruplarına eklenmeli. Ayrıca, yine “agent” kullanıcısının “Administrators” grubuna dahil olduğu kontrol edilmelidir.
3. Services.msc konsolunu açıp
  • Performance Logs & Alerts
  • Remote Registry
Servislerinin başlangıcı “Otomatik” e çekilmelidir.
4. Secpol.msc (Local Security Policy) konsolunu açıp
  • Local Policies -> User Rights Assignment  altından “Log On as Batch Job” seçeneğine
    • Performance Log Users
    • Performance Monitor Users
Grupları eklenmelidir. Bütün bu işlemlerden sonra ise komut istemini açıp;
Lodctr /r
Komutu ile seçilen bu bilgiler için erişim yetkilerinin tekrar oluşturulması sağlanmalıdır.
“Controller” servisinin kurulu olduğu makinelerde yapılması gerekenler:
1. Lusrmgr.msc (Local Users and Groups) konsolunu açıp “Groups” altındaki
  • TeamTestAgentService grubuna “agent” servisi için tanımlanan kullanıcı
  • TeamTestControllerAdmin ve TeamTestControllerUsers gruplarına da “controller” servisi için tanımlanan kullanıcı eklenmelidir.
Bu şekilde, artık ağ dışında, “controller” ve “agent” servisleri herhangi bir engele takılmadan iletişime geçebilecek ve uzak makineden “agent” servisleri aracılığı ile istenilen metrikler toplanabilecektir. Unutmamız gereken bir nokta da, bütün bu işlemlerin yapıldığı sistemlerde, VS2008 SP1 güncellemesinin kurulu olması gerekmektedir. Aksi halde, bütün bu ayarlamalara rağmen, uzak makinedeki servisler “agent” olarak kullanılmak istendiği durumda API uyuşmazlığından dolayı hata alınabilir.
Ali KALFAOĞLU

Yorumlar

Bu blogdaki popüler yayınlar

UML ve Modelleme – Bölüm 4 (Class (Sınıf) Diyagramları)

Bir önceki makalemizde UML modellemede kullanılan ilk diyagram olan Use Case diyagramını incelemiştik. Bu makalemizde nesne tabanlı programlamada kullanılan sınıflar ve sınıfların arasındaki ilişkileri modelleyebileceğimiz diyagramlar olan Class(Sınıf) diyagramlarını inceleyeceğiz. UML’de sınıflar, nesne tabanlı programlama mantığı ile tasarlanmıştır. Sınıf diyagramının amacı bir model içerisinde sınıfların tasvir edilmesidir. Nesne tabanlı uygulamada, sınıfların kendi özellikleri (üye değişkenler), işlevleri (üye fonksiyonlar) ve diğer sınıflarla ilişkileri bulunmaktadır. UML’de sınıf diyagramlarının genel gösterimi aşağıdaki gibidir. Şekil 1. Class Diyagram Şekil1’de görüldüğü üzere bir dikdörtgeni 3 parçaya bölüyoruz. En üst bölüm sınıf adını, orta kısım özellik listesini (üye değişkenler) ve en son kısım, işlev listesini (üye fonksiyonlar) göstermektedir. Çoğu diyagramlarda alt iki bölüm çıkarılır. Genelde tüm özellik ve işlevler gösterilmemektedir. Ama

Yazılım Maliyet Tahmineleme Tecrübeleri

Yazılım mühendisliğinde maliyet hesabı her zaman problem olmuştur. "Bu iş kaç Adam/Gün tutar?" sorusuyla sıkça karşılaşıyoruz. Adam/gün veya Adam/ay ölçütleri bir kaynağın/kişinin belirtilen zaman dilimindeki iş gücü anlamına gelir. Tabi bu noktada yine kafa karışıklıkları başlar. 6 A/G'lik bir işi hızlandıralım diye 2 kişi ile yapmaya çalışsak ve kaynak/kod, modül, altyapı, insan vb. her bir şeyi bir kenara bıraksak, matematiksel basit formülle 6/2=3 A/G'de biter? Gerçek hayat böyle değil, öncelikle bunu anlamamız lazım. Hep şu örnek verilir; "Aynı bebeği 2 kadın birlikte daha kısa sürede doğurur mu?" Eğer bunun cevabı "Evet" ise (veya bir gün böyle bir durum ortaya çıkarsa), yazımı değiştirmem gerekecek:) Mevzu gerçekten derin...Maliyet hesabı; bulunduğunuz firmanın yazılım süreçlerini hangi methodlarla uyguladığına, ilgili işin o dönemdeki aciliyetine, (şirket yönetiminin baskısına:)) vb. bir çok duruma bağlı olabilir. Örneğin; bizim firmada e

UML ve Modelleme – Bölüm 3 (Use Case Diyagramlar)

Önceki iki makalemizde ( 1 , 2 ) UML’e genel olarak değinip ve modellemede kullanacağımız dokuz diyagram hakkında bilgiler vermiştik. Bu makalemizde Use Case diyagramından detaylı bahsedeceğiz. Öncelikle, genel Use case diyagramının tanımını hatırlayalım. “Bir kullanıcı ve bir sistem arasındaki etkileşimi anlatan senaryo topluluğudur.” Ivar Jacobson Senaryo tanımı için der ki: “Aktörle sistem arasında gerçekleştirilen, sonucunda aktöre farkedilir getirisi/ faydası oluşan etkileşimli diyalogdur. ” UML Use Case Diyagramları  sistemin işlevselliğini açıklamak amacıyla kullanılır. Sistemin birbirinden ayrı özelliklerinin detaylarını göstermekten ziyade, Use Case Diyagramlar, tüm mevcut işlevselliği göstermek için kullanılabilir. Buradaki en önemli noktalardan biri,   Use Case Diyagramlar temelde sequence diyagram ve akış diyagramlarından farklıdır. Use Case diyagramlar dört ana elemandan oluşmaktadır. Aktörler , Sistem (Proje kapsamını belirtir) , Use Caseler ve bunlar ara