Memory Deep Dive Series

By Andrei Ungureanu - Last updated: Tuesday, May 23, 2017

O sa postez azi o serie de articole scrise de Frank Denneman de la Vmware, ce mi se par foarte utile atunci cand vrei sa faci un refresh sau update la cunostinte si care sunt foarte utile in scenarii de performance optimization sau troubleshooting:

http://frankdenneman.nl/2015/02/18/memory-configuration-scalability-blog-series/

Part 1: Memory Deep Dive Intro
Part 2: Memory subsystem Organisation
Part 3: Memory Subsystem Bandwidth
Part 4: Optimizing for Performance
Part 5: DDR4 Memory
Part 6: NUMA Architecture and Data Locality
Part 7: Memory Deep Dive Summary

Si tot cam pe acelasi subiect:

Introduction 2016 NUMA Deep Dive Series:

Part 1: From UMA to NUMA
Part 1 covers the history of multi-processor system design and clarifies why modern NUMA systems cannot behave as UMA systems anymore.

Part 2: System Architecture
The system architecture part covers the Intel Xeon microarchitecture and zooms in on the Uncore. Primarily focusing on Uncore frequency management and QPI design decisions.

Part 3: Cache Coherency
The unsung hero of today’s NUMA architecture. Part 3 zooms in to cache coherency protocols and the importance of selection the proper snoop mode.

Part 4: Local Memory Optimization
Memory density impacts the overall performance of the NUMA system, part 4 dives into the intricacy of channel balance and DIMM per Channel configuration.

Part 5: ESXi VMkernel NUMA Constructs
The VMkernel has to distribute the virtual machines to provide the best performance. This part explores the NUMA constructs that are subject to initial placement and load-balancing operations.

Part 6: NUMA Initial Placement and Load Balancing Operations
The VMkernel has to distribute the virtual machines to provide the best performance. This part explores the NUMA initial placement and load-balancing operations.

Part 7: From NUMA to UMA
The world of IT moves in loops of iteration, the last 15 years we moved from UMA to NUMA systems, which today’s focus on latency and the looming licensing pressure, some forward-thinking architects are looking into creating high performing UMA systems.

Filed in Diverse • Tags: ,

Active Directory–Maximum Number of GPOs Applied

By Andrei Ungureanu - Last updated: Tuesday, May 23, 2017

Majoritatea dintre noi nu o sa ajungem niciodata sa ne punem intrebarea din titlu, insa exista cazuri si chiar am vazut unde sunt foarte aproape de limita (si bineinteles cu multe probleme de performanta):

There is a limit of 999 Group Policy objects (GPOs) that you can apply to a user account or computer account. This does not mean that the total number of policy settings on the system is limited to 999. Rather, a single user or computer will not be able to process more than 999 GPOs. This limit exists for performance reasons.

https://technet.microsoft.com/en-us/library/active-directory-maximum-limits-scalability(v=ws.10).aspx#BKMK_GPO

Filed in Active Directory • Tags:

Directory Service Comparison Tool

By Andrei Ungureanu - Last updated: Saturday, May 20, 2017

Luna asta am mai scris despre AD snapshots iar acum o sa povestesc despre un tool ce poate fi folosit pentru a descoperi modificari in AD, comparand snapshot-ul cu informatia actuala din AD.

Tool-ul se numeste Directory Service Comparison Tool si il gasiti aici:

http://blog.frli.se/p/dsct.html

Dupa instalare, va trebui sa deschideti o consola MMC si sa adaugati de acolo Directory Service Comparison Tool. Va trebui sa specificati unde se va conecta consola pentru a interoga AD-ul actual si snapshotul.

image

Nota: localhost:7000 se refera la serverul de pe care rulez tool-ul, care are pornita o instanta de DSAMAIN pe portul 7000.

Mai jos sunt cateva screenshot-uri care exemplifica ce se poate face cu acest tool. Se pot vedea obiectele nou adaugate, precum si modificarile facute obiectelor existente (puteti vedea si vechile valori ale atributelor).

image

image

In imaginea de mai jos se poate vedea cum useraccount control a fost schimbat la Password Never Expire.

image

E un tool ce merita retinut. Are si functie de cautare ce foloseste un filtru LDAP, dar inca se mai pot aduce imbunatatiri.

PS: Si AD Explorer poate compara snapshoturi.

Filed in Active Directory • Tags: ,

New updates for old Win XP/2003

By Andrei Ungureanu - Last updated: Sunday, May 14, 2017

Noul val de malware de tip ransomware/worm a reusit sa faca o premiera. Si anume, ca Microsoft sa scoata update-uri pentru sisteme de operare ce nu mai sunt suportate.

https://blogs.technet.microsoft.com/msrc/2017/05/12/customer-guidance-for-wannacrypt-attacks/

Update-urile ce rezolva problema in protocolul SMB v1 au fost publicate pentru Windows XP/2003/Vista:

http://www.catalog.update.microsoft.com/Search.aspx?q=KB4012598

PS: Inca sunt foarte multi clienti din sectorul industrial si bancar ce inca ruleaza multe sisteme critice pe XP/2003. Asta a fost unul din motivele pentru care eu cred ca au lansat aceste updateuri iesind din schema. Oricum updateurile erau pregatite pentru clientii ce platesc separat contracte de suport, dar acum incearca sa faca pe baietii buni si sa incadreze NSA-ul la categoria evil.

Filed in Security, Windows Client, Windows Server • Tags: ,

Active Directory Snapshots & DSAMAIN

By Andrei Ungureanu - Last updated: Tuesday, May 9, 2017

Dupa atatia ani de Active Directory inca mai sunt multe functionalitati de care majoritatea adminilor nici macar nu au auzit. Si sunt chestii de baza ce te pot ajuta in multe din activitatile zilnice de admin. Iar una din aceste functionalitati este aceea de AD Snapshots (a nu se confunda cu VM Snapshot).

Nu mai stiu daca am scris despre snapshoturi cu mecanismul builtin aici asa ca azi o sa reiau subiectul (acum aproape 10 ani scrisesem ceva pentru Technet). In schimb tin minte ca am scris despre AD Explorer care are o functie asemanatoare.

Functia de snapshot a aparut odata cu Windows Server 2008 si permite sa salvati un snapshot sau o imagine a AD-ului in momentul respectiv. Imagine ce mai apoi poate fi accesata folosind AD Users & Computers.

Nimeni nu vrea sa ajunga sa restaureze dintr-un backup de AD iar recent nici nu a mai fost nevoie de cand cu AD Recycle Bin. Dar sunt situatii cand obiectul nu a fost sters, ci atributele lui au fost modificate si nu prea ai vrea sa restaurezi din backup doar pentru asta. Dar daca ai sti ce se afla inainte in acele atribute, ai putea sa le repopulezi manual.

Iar aici snapshoturile te ajuta. Poti face snapshot-uri ale AD-ului inainte de anuminte modificari, iar daca ceva nu functioneaza asa cum trebuie, poti lua informatia din snapshot.

Si ca sa nu mai lungim vorba, ca sa facem un snapshot, folosim clasicul NTDSUTIL:

image

Seria de comenzi necesara este snapshot, activate instance ntds, create.

Din acest moment avem un snapshot creat si orice modificare adusa la nivelul NTDS.DIT va fi salvata in snapshot folosind copy on write.

Pentru a vedea snapshoturile existente putem folosi LIST ALL:

image

Primul snapshot este cel care ne intereseaza pe noi, al doilea reprezinta volumul pe care se afla baza de date (in functie de setup aici pot fi listate mai multe volume).

Tot ce trebuie sa facem acum, este sa montam snapshot-ul. Si facem asta cu MOUNT si ID-ul din prima linie (nu cea ce reprezinta volumul):

image

Iar acum daca folosim Windows Explorer o sa vedem ceva de genul asta:

image

image

Comanda LIST MOUNTED ne va arata tot ce am montat din NTDSUTIL:

image

Iar comanda UNMOUNT va demonta volumul respectiv.

Nota: comanda DELETE poate fi folosita pentru a sterge un snapshot si va recomand sa faceti asta atunci cand nu mai sunt necesare.

Ok, si acum ca avem un snapshot creat si montat, ce facem mai departe. Mai e nevoie de inca un pas, si anume de DSAMAIN cu parametrul /DBPATH si /LDAPPORT pentru a porni o instanta separata a bazei NTDS.DIT din snapshot.

image

In exemplul de mai sus, am pornit o noua instanta pe portul 7000 ce va rula atata timp cat DSAMAIN este pornit in acel comand prompt.

Nota: E de la sine inteles de ce nu putem folosi porturile default. Suntem pe un Domain Controller si sunt deja folosite.

Ca sa ne conectam folosim Active Directory Users and Computers si alegem optiunea Change Domain Controller:

image

image

image

Iar din acest moment avem acces la versiunea read only din snapshot.

La final trebuie doar sa inchidem consola si command promptul in care ruleaza DSAMAIN. Si daca este nevoie sa stergem snapshotul.

Mai trebuie sa mai spun ca DSAMAIN poate fi folosit pentr a instanta copii ale NTDS.DIT si din backup. Nu este nevoie neaparat de snapshot facut cu NTDSUTIL.

Si bineinteles, comenzile din NTDSUTIl se pot si automatiza, dar asta cu alta ocazie Winking smile.

Filed in Active Directory • Tags: , , ,

MEX Debugging Extension for WinDbg

By Andrei Ungureanu - Last updated: Friday, May 5, 2017

Pentru utilizatorii inraiti de WinDBG, cateva extensii sunt binevenite:

https://blogs.technet.microsoft.com/pfelatam/2016/07/19/mex-debugging-extension-for-windbg/

https://blogs.msdn.microsoft.com/luisdem/2016/07/19/mex-debugging-extension-for-windbg-2/

Nu-s asa de noi, dar la cat de des folosesc eu Windbg era si normal sa le descopar cu intarziere.

Filed in Diverse • Tags:

Performance Tuning Guidelines for Windows Server 2016

By Andrei Ungureanu - Last updated: Thursday, April 27, 2017

Si cand spuneam ca nu mai exista documentatie de calitate pe zona de Windows Server, uite ca a venit o surpriza – Performance Tuning Guidelines for Windows Server 2016:

https://blogs.technet.microsoft.com/windowsserver/2017/04/26/performance-tuning-guidelines-for-windows-server-2016/

https://docs.microsoft.com/en-us/windows-server/administration/performance-tuning/

Sunt acoperite zone precum Active Directory, Hyper-V, File & Storage, Networking, RDS/RDP, Web & Containers.

Si remarcati ca acum se foloseste termenul Guidelines, nu Best Practices Smile.

Filed in Windows Server • Tags:

Disable Windows Server Auto Lock Screen

By Andrei Ungureanu - Last updated: Wednesday, April 26, 2017

De pe la Windows Server 2012, sistemul de operare de tip server are un feature destul de incomod, mai ales pentru mediile de test. Si anume Auto Lock la ecran. Daca OS-ul nu detecteaza input de la mouse si tastatura pentru cateva minute, va bloca ecranul si va fi nevoie din nou de reintroducerea parolei.

In mod normal aceasta functionalitate este utila, atunci cand adminul uita sesiunea logata. Dar pentru cazurile cand lucram pe un laborator/mediu de test, atunci poate fi chiar enervanta.

Mai jos o sa prezint cum puteti dezactiva aceasta functionalitate, si fac asta pentru ca nu este deloc intuitiv. Pana la Windows 2012, totul era controlat prin screen saver, dar lucrurile s-au schimbat.

Deschideti Local Group Policy Editor (https://technet.microsoft.com/en-us/library/cc731745(v=ws.11).aspx):

image

Navigati in Computer Configuration\Policies\Administrative Templates\System\ Power Management\Video and Display Settings iar aici schimbati “Turn off the display (plugged in)” pe Enabled si cu valoarea 0.

image

By default setarea este pe disabled.

Dupa modificare, va fi nevoie sa rulati si un GPUPDATE /FORCE pentru o aplicare imediata.

Filed in Windows Server • Tags:

Check if a string is null or empty

By Andrei Ungureanu - Last updated: Tuesday, April 18, 2017

Cand lucrezi cu string-uri in Powershell de multe ori vrei sa verifici daca nu cumva string-ul este null sau contine spatii sau tab-uri. O varianta ar fi sa verifici dimensiunea lui sau sa iei fiecare caracter in parte si sa il compari.

Sau exista si o varianta mai simpla, folosind o metoda .Net – IsNullOrWhiteSpace. Asa ca puteti folosi aceasta metoda direct din Powershell ca in exemplul de mai jos:

 

If ([string]::IsNullOrWhiteSpace($string))

{

#do something

}

Detalii aici: https://msdn.microsoft.com/en-us/library/system.string.isnullorwhitespace(v=vs.110).aspx

Si inca o metoda asemenatoare este IsNulOrEmpty: https://msdn.microsoft.com/en-us/library/system.string.isnullorempty(v=vs.110).aspx

Filed in Scripting • Tags: , ,

Veeam Backup Free Edition & Veeam Explorer for Active Directory

By Andrei Ungureanu - Last updated: Wednesday, March 22, 2017

Veeam Backup and Replication s-a ridicat foarte mult in ultimul timp, in special pentru suportul platformelor de virtualizare si usurintei in utilizare fata de vechile produse de pe piata. Mai putin cunoscuta este versiunea free (si nu FastSCP, ci Veeam Backup and Replication, care include si suport pentru SCP si multe altele).

Eu acum o sa ma refer la un tool ce se instaleaza odata cu Veeam Backup and Replication si se numeste Veeam Explorer for Active Directory. Tool-ul va poate ajuta sa faceti recover la obiectele din AD chiar si atunci cand AD Recycle Bin nu este activat sau cand nu aveti un system state backup ci doar o copie a NTDS.DIT.

O sa incep prin a urma procesul de instalare care este banal. Cat timp nu introduci licenta, produsul functioneaza in modul free.

image

image

image

image

image

image

Odata instalat puteti porni consola principala. Nu sunt multe de vazut aici, existand destul de multe limitari in varianta free.

image

image

Link-urile catre tool-urile free le gasiti si in Program Files:

image

Si sa presupunem acum ca vrem sa restauram ceva dintr-o copie mai veche a unui NTDS.DIT. Putem folosi consola principala pentru a localiza fisierul sau direct Veeam Explorer for Microsoft Active Directory.

image

image

Dupa ce selectati Recover, o sa puteti sa faceti browse in copia AD offline, exact ca si cum ati utiliza ADUC:

image

Daca selectam optiunea advanced vom avea acces si la zonele DNS stocate in AD si la Configuration Partition. Deci vom putea restaura inclusiv inregistrari DNS.

image

image

Right click pe un obiect din lista si urmatoarele optiuni apar:

image

Compare va poate ajuta sa vedeti diferentele intre copia offline si online.

image

Din acelasi meniu se poate face si restore sau export in LDF.

PS: Acelasi procedeu se poate folosi pentru a restaura un intreg OU (mai putin optiunea compare).

Un ghid complet al versiunii free gasiti in link-ul de mai jos.

https://www.veeam.com/pdf/guide/veeam_backup_free_9_5_user_guide_en.pdf

Filed in Active Directory • Tags: , ,