Správa rolí a funkcí systému Windows Server z prostředí PowerShell

Ve Windows Server 2012R2 / 2016/2019 můžete pomocí grafického Správce serverů nainstalovat a odstranit různé role a komponenty serveru. Ve většině případů však lze stejné operace provádět mnohem rychleji z konzoly PowerShell. V tomto článku se podíváme na funkce správy rolí a funkcí v současných verzích systému Windows Server..

Obsah:

  • Jak zobrazit všechny nainstalované role a součásti systému Windows Server?
  • Nainstalujte role a funkce systému Windows Server z prostředí PowerShell
  • Nasazení rolí na mnoho serverů Windows
  • Jak odebrat roli nebo funkci v systému Windows Server pomocí prostředí PowerShell?

Jak zobrazit všechny nainstalované role a součásti systému Windows Server?

Pomocí rutiny cmdlet zobrazte všechny dostupné role a funkce systému Windows Server. Get-WindowsFeature. Pokud jej spustíte bez parametrů, zobrazí se informace o všech komponentách..

Jak vidíte, název komponenty (zobrazovaný název), její systémový název (název) a stav (stav instalace: Nainstalovaný, dostupný nebo odebraný) Seznam rolí a komponent je strom s vnořenými rolemi, který se podobá té, kterou vidíte při instalaci rolí prostřednictvím grafického správce serverů. Chcete-li nainstalovat a odstranit role a součásti pomocí prostředí PowerShell, musíte znát jejich systémový název, který je obsažen ve sloupci Jméno.

Tip. Pokud je role nebo funkce ve stavu Odebráno, to znamená, že jeho instalační soubory jsou odstraněny z lokálního systémového úložiště (zmenšení velikosti složky WinSxS) a tuto roli nelze nainstalovat.

Role a komponenty jsou z obrázku odstraněny následovně:

Odinstalovat - WindowsFeature - Název DHCP - Odebrat

Chcete-li nainstalovat vzdálenou roli, použijte rutinu:

Install-WindowsFeature DHCP (Vyžaduje přístup k internetu)

Nebo můžete obnovit součásti jejich distribuce pomocí verze systému Windows Server:

Install-WindowsFeature DHCP -Source E: \ sources \ sxs

Můžete nainstalovat součásti nainstalovaného serveru:

Get-WindowsFeature | Where-Object $ _. installstate -eq "nainstalován" | ft Jméno, Installstate

Podle snímku obrazovky se tento server používá jako souborový server (role FileAndStorage-Services, Storage-Services). Většina zbývajících komponent se používá ke správě a sledování serveru..

Pokud neznáte přesný název role, můžete použít zástupné znaky. Chcete-li například zkontrolovat, které z webových součástí role IIS jsou nainstalovány, proveďte (mírně snižte syntaxi):

Get-WindowsFeature -Name web- * | Kde je nainstalován

Seznam nainstalovaných součástí můžete získat na vzdáleném systému Windows Server:

Get-WindowsFeature -ComputerName msk-prnt1 | Pokud je nainstalován ft Jméno, Installstate

Podle nainstalovaných rolí Print-Services a Print-Server se tento server používá jako tiskový server.

Pomocí rutiny Get-WindowsFeature můžete vyhledávat servery v doméně, ve které je nainstalována konkrétní role. Servery můžete prohledávat v konkrétní OU služby Active Directory pomocí rutiny Get-ADComputer z modulu ActiveDirectory for PowerShell nebo podle zadaného seznamu serverů ($ servery = ('server1', 'server2')) Například musíme najít všechny souborové servery s rolí FileAndStorage-Services v určeném kontejneru AD (používám editor PS - Visual Studio Code)

adresář importního modulu
$ Servers = get-adcomputer --properties * -Filter Operatingsystem - notlike "* 2008 *" --and enabled - ekv. "True" - and Operatingsystem like like "* Windows Server *" --SearchBase 'OU = Servers, OU = MSK , DC = winitpro.ru, DC = ru '| vyberte jméno
Foreach ($ server v $ Servers)

Get-WindowsFeature -name FileAndStorage-Services -ComputerName $ server.Name | Pokud je nainstalován ft $ server.name, Name, Installstate

Výsledkem je seznam serverů, na kterých je tato role nainstalována..

Nainstalujte role a funkce systému Windows Server z prostředí PowerShell

Chcete-li nainstalovat role a funkce v systému Windows Server, použijte rutinu Install-WindowsFeature.

Chcete-li nainstalovat roli DNS na aktuální server a nástroje pro správu (včetně modulu Powershell - DNSServer), spusťte:

Install-WindowsFeature DNS -IncludeManagementTools

Ve výchozím nastavení cmdlet nainstaluje všechny požadované závislé role a komponenty, když je role nainstalována. Chcete-li před instalací zobrazit závislosti, použijte možnosti.
Install-WindowsFeature -name UpdateServices -whatif

Chcete-li například nainstalovat roli aktualizačního serveru WSUS, musíte nainstalovat některé součásti služby IIS.

Co když: Pokračujte v instalaci?
Co když: Provádíte instalaci aktualizace Windows Server Update Services
Co když: Provádění instalace pro „WID databázi [Windows Server Update Services]“.
Co když: Provádění instalace pro službu WSUS [Windows Server Update Services].
Co když: Provádění instalace pro [Windows Server (IIS)] Windows Authentication.
Co když: Provádíte instalaci dynamické komprese obsahu „[Web Server (IIS)]“.
Co když: Provádění instalace pro výkon [[Web Server (IIS)].
Co když: Provádění instalace statického obsahu „[Web Server (IIS)]“.
Co když: Provádění instalace pro „[Interní databáze Windows] Interní databáze Windows“.
Co když: Po dokončení instalace bude pravděpodobně třeba restartovat cílový server.

Chcete-li nainstalovat roli hostitele relací vzdálené plochy, licenční službu RDS a obslužné programy správy RDS na vzdálený server, použijte příkaz:

Install-WindowsFeature - Název počítače msk-rds21 RDS-RD-Server, RDS-Licensing --IncludeAllSubFeature --IncludeManagementTools -Restart

S parametrem -Restartujte server se automaticky restartuje, pokud to nainstalovaná součást vyžaduje.

Komponentu můžete také nainstalovat pomocí tohoto příkazu (například role serveru SMTP):

Get-WindowsFeature - Název SMTP-Server | Install-WindowsFeature

Nasazení rolí na mnoho serverů Windows

Další zajímavá funkce při nasazení serverů stejného typu. Potřebné komponenty můžete nainstalovat do referenčního systému Windows Server a exportovat seznam nainstalovaných rolí do souboru CSV:

Get-WindowsFeature | kde $ _. Installed -eq $ True | vyberte jméno | Export-Csv C: \ ps \ Roles.csv -NoTypeInformation -Verbose

Tento soubor CSV pak můžete použít k instalaci stejné sady rolí na jiné typické servery:

Import-Csv C: \ PS \ Roles.csv | foreach Install-WindowsFeature $ _. name

Pokud je již role nebo komponenta nainstalována, příkaz se vrátí NoChangeNeeded a pokračujte v instalaci další role.

Nebo k instalaci stejné sady rolí na několik serverů najednou můžete použít následující příkaz:

$ servery = ('srv1', 'srv2', 'srv3')
foreach ($ server v $ serverech) Install-WindowsFeature RDS-RD-Server - Název_počítače $ server

Jak odebrat roli nebo funkci v systému Windows Server pomocí prostředí PowerShell?

Rutinu a funkce systému Windows Server můžete odstranit pomocí rutiny cmdlet Remove-WindowsFeature.

Chcete-li například odebrat roli tiskového serveru, spusťte příkaz:

Remove-WindowsFeature Print-Server - Restart