POC – Private “Update for Business” – Inwentaryzacja poprawek

7 lipca 2015 at 05:42

Spis treści projektu:

1. POC – Private “Update for Business” – Intro

2. POC – Private “Update for Business” – Komputery i Grupy

3. POC – Private “Update for Business” – Inwentaryzacja klientów

4. POC – Private “Update for Business” – Inwentaryzacja poprawek

5. POC – Private “Update for Business” – Automatyczna akceptacja poprawek

6. POC – Private “Update for Business” – Automatyczny Maintenance


Po zinwentaryzowaniu klientów WSUS’a pora na inwentaryzację poprawek. Można oczywiście wy-klikać i sprawdzać poszczególne poprawki w kontekście tego, czy są zaakceptowane, czy odrzucone oraz na której z utworzonych grup zostały zaakceptowane, a na której jeszcze nie… Można też użyć do tego celu Powershell’a – ale niestety działa on strasznie wolno w porównaniu z bazą WSUS’a i bezpośrednimi zapytaniami.

OK. Czego potrzebujemy (oprócz czasu :) )? Zapytania SQL oraz skryptu Powershell’owego żeby wyciągnąć informacje o poprawkach i zapisać je w przyjaznej formie zbiorczego raportu w pliku csv. Zaczynamy od zapytania SQL:

W odpowiedzi na powyższe zapytanie dostaniemy informację o poprawkach na naszym serwerze WSUS w postaci wpisów:

KB Title IsDeclined Grupa_testowa Grupa_Pilotazowa Grupa_Produkcyjna All_Computers Description Severity ScurityBulletin CreationDate WSUSArrivalDate UpdateID
KB3074219 Security Update for Internet Explorer Flash Player for Windows 8.1 for x64-based Systems (KB3074219) 0 2015-06-23 23:40:17.573 2015-06-29 16:00:09.070 NULL NULL A security issue has been identified in a Microsoft software product that could affect your system. (…) Unspecified NULL 2015-06-23 22:00:00.000 2015-06-23 23:40:17.370 5241D829-45B1-47E6-A769-5BD0C0FA7F47

Teraz możemy zapisać nasze zapytanie SQL’owe do pliku np: „C:\scripts\Updates_Info\All_Updates_and_groups.sql”  i przystąpić do napisania skryptu powershell’owego, który będzie wykonywać dla nas cykliczne inwentaryzacje. Skrypt ma postać:

Oczywiście i tym razem podłączamy skrypt Powershell’owy do harmonogramu zadań żeby wykonywał automatycznie inwentaryzację poprawek. W tym przypadku częstotliwość powinna zależeć od tego jakie różnice czasu mają dzielić nasze prywatne „okręgi release’owe poprawek” :) może to być tydzień, czy miesiąc a może być i 1 dzień – zależy od potrzeb wewnętrznych i szybkości testów.

Zbliżamy się już coraz bliżej do osiągnięcia założonego pierwotnie celu, czyli wykreowania naszego prywatnego Updates for Business – pozostały zasadniczo jeszcze tylko 2 zagadnienia: Automatyczne cykle akceptacji poprawek na poszczególne grupy oraz zadania maintenece’owe – ale o tym w kolejnych częściach. Zapraszam! :)