Strona korzysta z plików cookies w celu realizacji usług i zgodnie z Polityką Plików Cookies.



07.06.2022

Red Hat Enterprise Linux 9

Red Hat zaprezentował system operacyjny Red Hat Enterprise Linux 9 (RHEL 9)...
07.06.2022

Technologiczna piaskownica

Koalicja partnerów KIR, IBM, Chmura Krajowa, PKO Bank Polski, Urząd Komisji Nadzoru...
07.06.2022

Sztuczna inteligencja w...

OVHcloud wprowadziło na rynek AI Notebooks – najnowszy element w ofercie usług...
07.06.2022

Spójna ochrona brzegu sieci

Fortinet zaprezentował FortiOS 7.2 – najnowszą wersję swojego flagowego systemu...
07.06.2022

Zarządzanie transferem

Firma Progress wypuściła nową wersję oprogramowania do zarządzania transferem plików...
07.06.2022

Notebook ekstremalny

Panasonic przedstawił 14-calowy Toughbook 40, notebook do pracy w ekstremalnych...
07.06.2022

Zestaw startowy dla robotyki

Firma AMD przedstawiła najnowszy produkt w portfolio adaptacyjnych modułów SOM...
07.06.2022

Precyzja kadrowania

Najnowsze rozwiązania klasy pro firmy Poly mają sprostać zmieniającym się potrzebom...
07.06.2022

Serwer klasy korporacyjnej

QNAP zaprezentował nowy model serwera NAS, TS-h1886XU-RP R2, który działa na systemie...

Automatyzowanie instalowania aktualizacji

Data publikacji: 07-06-2022 Autor: Bartosz Bielawski

W poprzednim artykule skupiliśmy się na narzędziach, które ułatwią nam pracę  z aktualizacji na poziomie pojedynczego serwera. W tej części cyklu przyjrzymy się,  jak w naszej organizacji możemy automatyzować proces instalowania aktualizacji w sposób kontrolowany i bez podejmowania niepotrzebnego ryzyka.

 

Automatyzacji dokonamy, wykorzystując trzy komponenty: serwer WSUS do zarządzania łatkami i ich publikowania, PowerShell DSC do kontrolowania ustawień na poszczególnych serwerach oraz zlecone zadania, które odpowiedzialne będą za instalowanie poprawek w oknie serwisowym.


W artykule skupimy się na konfiguracji końcówek, pomijając tym samym dbałość o ustawienia na serwerze WSUS. Do tych ostatnich wrócimy w kolejnym artykule, domykając tym samym opis narzędzi, które pozwolą na kontrolowane instalowania poprawek w ramach naszej organizacji.


Bezpieczne instalowanie poprawek


W trakcie budowania rozwiązania służącego do aktualizowania naszych serwerów musimy zatroszczyć się o ich bezpieczeństwo. Instalacja poprawek na serwerze plików czy MS SQL (a już z pewnością związany z nią restart) to ostatnie, czego życzylibyśmy sobie w czasie pracy. Musimy się więc upewnić, że poprawki instalowane będą jedynie o określonej przez nas porze. Druga sprawa to zachowanie serwerów po przeprowadzonym procesie. Bywa bowiem niestety tak, że aktualizacje, rozwiązując czy łatając problemy z bezpieczeństwem, mogą jednocześnie wywoływać niepożądane zachowania skutkujące np. obniżonym poziomem oferowanych usług lub wręcz uniemożliwiają ich świadczenie. Przykładowymi technikami pozwalającymi uniknąć tych problemów są:

 

  • instalowanie poprawek w kilku grupach, począwszy od serwerów testowych, po serwery o najwyższym znaczeniu dla firmy;
  • konfigurowanie serwerów w taki sposób, że poprawki instalowane są jedynie na „żądanie”, bez wymuszania ich instalacji, i zlecanie instalacji poprawek w określonym czasie;
  • sprawdzenie, czy serwer jest gotowy do instalacji poprawek przed uruchomieniem instalacji (dla przykładu: czy bieżąca końcówka w ramach klastra jest ustawiona jako aktywna, czy pasywna);
  • rozdzielanie serwerów pracujących w ramach klastrów na kilka grup oraz przekierowywanie użytkowników do „załatanych” systemów w celu wykluczenia problemów po instalacji aktualizacji;
  • centralne planowanie instalacji z wykorzystaniem narzędzi, które to umożliwiają (w ramach tego artykułu wykorzystamy w tym celu PowerShell DSC).

 

Podział serwerów na grupy


Załóżmy, że w naszej organizacji wyróżnimy cztery grupy serwerów – grupę pilotażową oraz trzy grupy produkcyjne, z których każda następna obejmuje serwery istotniejsze dla naszej organizacji niż poprzednia. Przede wszystkim musimy zadbać o to, by serwery odpowiednio pogrupować w ramach WSUS. Posłuży nam do tego moduł PoshWSUS, o którym wspominaliśmy w poprzednim artykule. Zaczniemy od połączenia z naszym serwerem WSUS i utworzenia koniecznych grup. Dla wygody grupy związane z poszczególnymi falami umieścimy w grupie nadrzędnej Fale:


Connect-PSWSUSServer -WsusServer wsus.contoso.com -Port 8530
New-PSWSUSGroup -Name Fale
foreach ($fala in @(
'1_Pilot'
'2_Produkcja'
'3_Produkcja'
'4_Produkcja'
)) {
Get-PSWSUSGroup -Name Fale | New-PSWSUSGroup -Name $fala
}


Następnie musimy rozdzielić nasze serwery na poszczególne grupy, na podstawie których będziemy zatwierdzać lub instalować aktualizacje. Skorzystamy przy tym z kolejnego polecenia, Add-PSWSUSClientToGroup. Załóżmy, że informacja o grupach przechowywana jest w pliku CSV:


foreach ($serwer in Import-Csv -Path C:WsusKonfiguracjaGrup.csv) {
Add-PSWSUSClientToGroup -Group $serwer.Grupa -Computername $server.Nazwa
}


Potrzebować będziemy też innego zestawu grup – te związane z falami będą statyczne i zawierać będą komputery. Informacje o zaaprobowanych poprawkach będziemy przechowywać, wykorzystując grupy związane z danym okresem. Dla przykładu, jeśli zdecydujemy się na instalację poprawek raz na kwartał, potrzebować będziemy czterech grup rocznie, jednej dla każdego z okresów:
New-PSWSUSGroup -Name Okresy


foreach ($okres in @(
'2022Maj'
'2022Sierpien'
'2022Listopad'
'2023Luty'
)) {
Get-PSWSUSGroup -Name Okresy | New-PSWSUSGroup -Name $okres
}


By zapewnić spójność instalowanych poprawek, będziemy aprobować je na poziomie grupy związanej z okresem, a następnie listę zaaprobowanych poprawek skopiujemy do grupy związanej z serwerami –
dzięki temu nie ryzykujemy, że poszczególne grupy serwerów będą korzystać z innego zestawu poprawek w wyniku pomyłki ze strony operatora przygotowującego poszczególne fale:


$listaAktualizacji = @(Get-PSWSUSUpdate -ApprovedState `
LatestRevisionApproved -ComputerTargetGroups $aktualnyOkres -UpdateApprovalAction Install)
Approve-PSWSUSUpdate -Update $listaAktualizacji `
-Action Install -Group $fala

 

[...]

 

Autor zawodowo zajmuje się informatyką. Jest Microsoft MVP w dziedzinie PowerShella, blogerem oraz jednym z moderatorów forum dotyczącego skryptów w serwisie TechNet. Autor książki „Windows PowerShell 5.1 Biblia”

Pełna treść artykułu jest dostępna w papierowym wydaniu pisma.

prenumerata Numer niedostępny Spis treści

.

Transmisje online zapewnia: StreamOnline

All rights reserved © 2019 Presscom / Miesięcznik "IT Professional"