Performance testing using SQLIO

By Andrei Ungureanu - Last updated: Monday, December 5, 2011

SQLIO este de multe ori gresit inteles ca fiind un tool dedicat SQL Server. Wrong. Este un tool folosit pentru a determina performanta sistemului de stocare (IOs) si poate fi folosit inclusiv pe Windows 2008/R2 chiar daca acest lucru nu este mentionat.

De downloadat il puteti downloada de aici:

http://www.microsoft.com/download/en/details.aspx?id=20163

Iar instalarea este foarte simpla; de fapt pune doar cateva fisiere in folderul SQLIO din Program Files.

image

In acest folder gasim si fisierul param.txt care arata cam asa:

image

Si specifica locatia fisierului de test, numarul de threaduri folosite si dimensiunea acestui fisier (de exemplu vedeti ca eu la ultimele teste am folosit un fisier de 512Mb). Acest fisier trebuie specificat cu parametrul –F la utilizarea SQLIO.

Nu treceti cu vederea nici fisierele Readme.TXT sau Using SQLIO.rtf pentru ca au informatii foarte utile despre folosirea SQLIO. De exemplu in SQLIO.rtf gasim exemple de utilizare:

sqlio -kW -s10 -frandom -o8 -b8 -LS -Fparam.txt
timeout /T 60
sqlio -kW -s360 -frandom -o8 -b64 -LS -Fparam.txt
timeout /T 60
sqlio -kW -s360 -frandom -o8 -b128 -LS -Fparam.txt
timeout /T 60
sqlio -kW -s360 -frandom -o8 -b256 -LS -Fparam.txt
timeout /T 60

sqlio -kW -s360 -fsequential -o8 -b8 -LS -Fparam.txt
timeout /T 60
sqlio -kW -s360 -fsequential -o8 -b64 -LS -Fparam.txt
timeout /T 60
sqlio -kW -s360 -fsequential -o8 -b128 -LS -Fparam.txt
timeout /T 60
sqlio -kW -s360 -fsequential -o8 -b256 -LS -Fparam.txt
timeout /T 60

sqlio -kR -s360 -frandom -o8 -b8 -LS -Fparam.txt
timeout /T 60
sqlio -kR -s360 -frandom -o8 -b64 -LS -Fparam.txt
timeout /T 60
sqlio -kR -s360 -frandom -o8 -b128 -LS -Fparam.txt
timeout /T 60
sqlio -kR -s360 -frandom -o8 -b256 -LS -Fparam.txt
timeout /T 60

sqlio -kR -s360 -fsequential -o8 -b8 -LS -Fparam.txt
timeout /T 60
sqlio -kR -s360 -fsequential -o8 -b64 -LS -Fparam.txt
timeout /T 60
sqlio -kR -s360 -fsequential -o8 -b128 -LS -Fparam.txt
timeout /T 60
sqlio -kR -s360 -fsequential -o8 -b256 -LS -Fparam.txt

 

Ce pot fi puse intr-un fisier batch pentru a automatiza testul.

In mod normal output-ul arata cam asa:

image

image

Si bineinteles ca difera destul de mult in functie de parametrii selectati (read/write/random/sequential) si de performanta hardware-ului.

Exista multe alte tool-uri pentru determinarea performantelor sistemului de stocare, doar ca personal SQLIO mi se pare foarte simplu de folosit.

PS: Exista si SQLIOSIM care insa e diferit si e un tool ce simuleaza doar comportamentul SQL Server.

Filed in Windows Server • Tags: ,

Active Directory over NAT

By Andrei Ungureanu - Last updated: Friday, December 2, 2011

AD peste NAT nu e un scenariu foarte bun insa sunt cazuri cand mai dai de asa ceva. Ce nu stiu multi este ca suportul pentru astfel de scenarii este destul de limitat (undeva intre limitat si deloc).

The Microsoft statement regarding Active Directory over NAT is:

The only configuration with NAT that was tested by Microsoft is running client on the private side of a NAT and have all servers located on the public side of the NAT. The NAT would also function as a DNS server.

http://support.microsoft.com/kb/978772

http://support.microsoft.com/kb/186340/en-us

 

Filed in Active Directory • Tags: ,

Parteneriat UPC si MS. Internet si Cloud Computing pentru companii.

By Andrei Ungureanu - Last updated: Wednesday, November 30, 2011

Citeam pe Ziarul Financiar despre pachetul de Internet si Cloud Computing oferit de UPC si MS.RO. M-a cam bufnit rasul sincer.

Asta e oferta pentru companii, sa-ti dea un cont gratis pe Office 365? Si se mai intreaba de ce a fugit toata lumea la RDS.

Filed in Diverse • Tags: ,

Server Builtin Fire Extinguisher

By Andrei Ungureanu - Last updated: Tuesday, November 29, 2011

Nu stiu cat de adevarat o fi dar pare ceva destul de realizabil:

http://www.tomshardware.com/news/ibm-patent-blade-server-fire-suppressant,14061.html

Acum ma gandesc daca nu cumva o sti IBM-ul de ceva probleme cu Blade Center-ele si vrea sa le impiedice sa arda Smile.

Eu personal nu am auzit pana acum de servere care sa ia foc.

Filed in Hardware Corner • Tags: ,

Windows, Large Pages, TLB & Hypervisors

By Andrei Ungureanu - Last updated: Monday, November 28, 2011

Postul asta se vrea mai mult ca o colectie de resurse ce merita partajate pentru a intelege mai bine functionarea si imbunatatirea anumitor aplicatii ce ruleaza pe Windows in masini virtuale.

Din ce am observat eu, in momentul de fata exista foarte putini specialisti care stiu sa stapaneasca bine zona de performance tuning atunci cand vine vorba de mediu virtual. Cam toata lumea considera ca daca aloci mai multe vCPU unei masini virtuale sau mai multa memorie si le pui pe storage mai rapid rezolvi orice problema de performanta. Ce bine ar fi sa fie asa de simplu.

Mai intervine si marketingul companiilor ce produc platformele de virtualizare, ce se jura ca totul ruleaza la performanta apropiata de hardware nativ. Or rula, dar nu toate applicatiile si nu in configuratiile default.

Pe partea de vCPU va recomand sa cautati pe net informatii despre cum functioneaza CPU schedulerul dintr-un hypervizor. Nu o sa gasiti nimic de Hyper-V insa o sa gasiti de la Vmware si e suficient sa va faceti o idee si sa intelegeti ca alocarea de multe vCPU pe o masina virtuala nu aduce intotdeauna un plus de performanta.

Iar legat de titlul acestui post, va recomand sa incepeti cu link-ul de mai jos pentru ca este esential sa intelegeti ce inseamna TLB si de ce cateodata SLAT-ul din procesoarele mai noi poate afecta chiar negativ performanta aplicatiilor.

http://en.wikipedia.org/wiki/Translation_lookaside_buffer

Seria de articole de mai jos este una din sursele cele mai bune de informatii legate de Hyper-V si Dynamic Memory si cu toate ca este axata cumva pe pozitionarea Dynamic Memory comparativ cu celelalte feature-uri ale Vmware tot ofera o gramada de informatii legate de titul nostru (partea 3 si 4).

Dynamic Memory Coming to Hyper-V – Part 1

Dynamic Memory Coming to Hyper-V – Part 2

Dynamic Memory Coming to Hyper-V – Part 3

Dynamic Memory Coming to Hyper-V – Part 4

Dynamic Memory Coming to Hyper-V – Part 5

Dynamic Memory Coming to Hyper-V – Part 6

De la Vmware am gasit acest document Large Page Performance si bineinteles gasiti informatii bune si in seria Performance Best Practices.

Si bineinteles ca pentru a folosi Large Pages e nevoie si de suport in OS-ul guest si in aplicatie. Tocmai de aceea pun si link-urile ce tin de acest subiect si SQL Server.

SQL Server and Hyper-V Dynamic Memory – Part 1

SQL Server and Hyper-V Dynamic Memory – Part 2

SQL Server and Hyper-V Dynamic Memory – Part 3

Support for Locked Pages on SQL Server 2008 R2 Standard Edition x64, on SQL Server 2005 Standard Edition 64-bit systems, and on SQL Server 2008 Standard Edition 64-bit systems

SQL Server and Large Pages Explained

Iar de la Vmware aveti Performance and Scalability of Microsoft SQL Server on Vmware vSphere.

Sper ca aceasta colectie de informatii sa va fie de folos si sa va ajute in munca de zi cu zi.

Filed in Virtualization • Tags: , , ,

Copy files between servers & retaining security permissions

By Andrei Ungureanu - Last updated: Tuesday, November 22, 2011

Cu toate ca multi cred ca operatiunea din titlu e posibila doar folosind tool-uri de migrare gen FSMT, realitatea e ca operatiunea se poate efectua si de mana cu tool-urile builtin. De fapt cam tot ce face FSMT, un administrator priceput poate face si de mana.

Secretul consta in cativa parametri ai comenzilor XCOPY si ROBOCOPY. Pe care dintre ele le folositi, depinde de alegerea fiecaruia pentru ca ambele stiu sa copieze ACL-urile fisierelor.

La XCOPY parametrul este /O:

image

Iar la ROBOCOPY este /SEC (bineinteles ca se poate si cu /COPYALL sau /COPY:DATS).

image

image

Spor!

Filed in Windows Server • Tags:

Hyper-V on Vmware

By Andrei Ungureanu - Last updated: Friday, November 18, 2011

Ar fi misto ca de acum incolo cursurile de Hyper-V sa se tina pe Vmware Smile.

image

Mai multe detalii am pus pe VMUG.

Filed in Virtualization • Tags: , ,

PowerShell Web Access

By Andrei Ungureanu - Last updated: Friday, November 18, 2011

Incercand sa mai arunc o privire in viitor m-am mai uitat prin feature-urile din Windows 8 si am dat de PowerShell Web Access (pe scurt PSWA). Acest PSWA este de fapt o aplicatie web ce permite deschiderea unei sesiuni Powershell via PS Remoting pe o alta masina.

De testat efectiv nu am reusit pentru ca nu a prea mers si nu exista decat un singur caz in care cineva a confirmat functionarea:

http://blog.powershell.no/2011/09/14/windows-powershell-web-access/

Cum este un produs pre-beta eu am renuntat rapid. Daca voi reusiti, spuneti-mi si mie (dar nu investiti prea mult timp, mai bine asteptati o alta versiune). Pana atunci asteptam MVP-ii.

Mai jos aveti imagini de la instalarea PSWA.

image

image

In C:\Windows\Web\PowerShellWebAccess\wwwroot gasiti si un readme.txt cu toata procedura ce trebuie facuta:

To complete the installation of Windows PowerShell Web Access, please perform the
following tasks:

1) Open a Windows PowerShell console with elevated user rights.

To do this, right click on PowerShell.exe, or a Windows PowerShell shortcut,
and then click “Run as administrator.”

2) Be sure your Windows PowerShell environment is configured to run scripts.

For more information, see “Running Scripts from Within Windows PowerShell”
(http://technet.microsoft.com/en-us/library/ee176949.aspx).

3) Run the following script:

${env:\windir}\Web\PowerShellWebAccess\wwwroot\setup.ps1

This is typically C:\Windows\Web\PowerShellWebAccess\wwwroot\setup.ps1

4) Create a server certificate.

For a test server, you can create a self-signed certificate by using the
Web Server (IIS) management console:

(${env:\windir}\system32\inetsrv\InetMgr.exe)

From within the IIS management console, open the Web Servers parent node.
This is typically the node immediately under the Start Page node.

In the results pane, select “Server Certificates” on the center pane, then
select “Create Self-Signed Certificate.”

5) Create an SSL binding.

In the IIS management console, select “Default Web Site,” and then click
“Bindings” on the “Actions” menu. Click “Add,” select “https” on
the “Type” pull-down menu, and then in the “SSL certificate” list, select the
certificate that you created in step 4.

For more information about how to create a server certificate and an SSL binding,
see “How to Set Up SSL on IIS 7”
(http://learn.iis.net/page.aspx/144/how-to-set-up-ssl-on-iis-7).

 

image

Filed in Scripting • Tags:

Powershell v3

By Andrei Ungureanu - Last updated: Thursday, November 17, 2011

In caz ca vreti sa testati Powershell 3.0, acesta este disponibil pentru download ca CTP, in pachetul Windows Management Framework 3.0 CTP1.

De tinut minte ca dupa instalarea powershell 3.0, engine-ul  2.0 este in continuare disponibil si switchul se poate face foarte usor prin comanda powershell -version 2.0.

Iata si cateva detalii luate de pe Window Powershell Blog:

Windows PowerShell 3.0
Some of the new features in Windows PowerShell 3.0 include:

Filed in Scripting • Tags:

Scripting printers on Windows

By Andrei Ungureanu - Last updated: Tuesday, November 15, 2011

Intotdeauna automatizarea instalarii imprimantelor si a tot ce tine de subiectul asta a fost undeva in ceata.

Nota:Oricum de cand cu Group Policy Preferences, nici eu nu mai prefer scripturile pentru managementul imprimantelor.

Interesant e ca de la Windows 2003 au existat exemple de scripturi incluse chiar in instalarea sistemului de operare:

image

Scripturile de mai sus sunt incluse in OS – c:\%windir%\system32 in Windows 2003/XP si C:\%windir%\System32\Printing_Admin_Scripts in Windows Vista/7/2008/2008 R2.

De exemplu cu prnmngr.vbs ne putem conecta la o imprimanta partajata de pe un print server.

image

Iar cu prnsrvr.vbs putem extrage informatii despre driverele instalate pe print server (cu parametrul – x se pot identifica si sterge driverele nefolosite).

image

Iar cu prncnfg.vbs putem extrage informatii despre o anumita imprimanta.

image

Celelalte scripturi importante sunt:

– prnjobs.vbs – pentru a interactiona cu print joburile (pauza, resume, cancel jobs)

– prnport.vbs – display and manage TCP/IP printer ports

Scripturile folosesc WMI si pot fi folosite si doar pentru a invata cum sa interactionezi cu imprimantele via VBS/WMI.

Iar in caz ca scripturile nu acopera tot si se doreste mai mult sunt sigur ca o sa gasiti si alte scripturi pentru managementul imprimantelor pe Technet Scriptcenter.

Filed in Windows Server • Tags: , ,