Hoe u Windows Server-rollen en -functies effectief kunt beheren met PowerShell

Hoe u Windows Server-rollen en -functies beheert met PowerShell: enkele praktische tips

Het beheren van rollen en functies op Windows Server kan nogal omslachtig zijn, vooral als je dit via de grafische gebruikersinterface (GUI) doet. Soms is het gewoon sneller om een ​​PowerShell-sessie te starten en de zaken via de commandoregel af te handelen. Geen wachttijden meer voor het laden van de GUI, geen eindeloos klikken door menu’s. Als je net als ik bent, geef je waarschijnlijk de voorkeur aan het scripten van je configuratie – dat maakt het herbouwen of schalen een stuk eenvoudiger. Maar eerlijk gezegd kan het vinden van de juiste commando’s, het beheren van afhankelijkheden of het implementeren op afstand best lastig zijn als je er niet aan gewend bent. Daarom volgt hier een overzicht gebaseerd op praktijkervaring, met een paar tips om het je wat gemakkelijker te maken.

Alle geïnstalleerde rollen en functies in Windows Server weergeven met PowerShell

Heb je ooit willen zien wat er al is geïnstalleerd of gewoon willen weten wat er beschikbaar is? De Get-WindowsFeaturecmdlet is dan je beste vriend. Voer hem gewoon zonder parameters uit en hij toont alle geïnstalleerde, beschikbare of verwijderde rollen/functies. De uitvoer ziet eruit als een boomstructuur: rollen genesteld onder hoofdcategorieën, vergelijkbaar met wat je ziet in Serverbeheer. Het is cruciaal om de naam te weten als je iets wilt installeren of verwijderen. In een typisch scenario voer je het volgende commando uit: Get-WindowsFeature Dit toont een lijst met kolommen zoals Naam, Weergavenaam en Installatiestatus. Als je een rol ziet die is gemarkeerd als Verwijderd, heeft het systeem de installatiebestanden verwijderd om ruimte te besparen (denk aan de WinSxS-map).Als je die rol opnieuw wilt installeren, is de snelste manier om het volgende commando uit te voeren: Install-WindowsFeature -Name RoleName Aan de andere kant, als de bestanden ontbreken, kun je verwijzen naar je ISO-bestand of netwerkshare: Install-WindowsFeature -Name RoleName -Source E:\sources\sxs want Windows moet het natuurlijk soms ingewikkelder maken dan nodig is. Om alleen de geïnstalleerde rollen en functies te bekijken, werkt deze handige kleine pipeline prima: Get-WindowsFeature | Where-Object {$_. InstallState -eq "Installed"} | Format-Table Name, InstallState -AutoSize En als je de status op een externe server wilt controleren, voeg dan de parameter -ComputerNameGet-WindowsFeature -ComputerName Server01 | Where-Object {$_. InstallState -eq "Installed"} toe: Vervang gewoon de servernamen — dat maakt het beheren van meerdere servers een stuk eenvoudiger.

Hoe installeer je rollen en functies via PowerShell — De echte manier

Het installeren van rollen is eenvoudig zodra je de commando’s begrijpt. Het belangrijkste om te onthouden is `npm install` Install-WindowsFeature. Het installeert automatisch de afhankelijkheden, maar als je wilt zien wat er gebeurt voordat je installeert, voeg dan `npm install` toe -WhatIfen kijk wat het *zou* doen. Bijvoorbeeld, om DNS en de bijbehorende beheertools toe te voegen: Install-WindowsFeature DNS -IncludeManagementTools Als je iets installeert zoals WSUS, dat afhankelijk is van IIS, zal het alle benodigde componenten afhandelen, maar het is altijd goed om `npm install` uit te voeren Install-WindowsFeature UpdateServices -WhatIf om te zien wat er gaat gebeuren. Wil je rollen installeren op externe servers? Richt het commando dan gewoon op de externe machine — geen probleem. Hier is een voorbeeld: Install-WindowsFeature RDS-RD-Server -ComputerName NYC-RDS1 En als je optionele rollen installeert of rollen met afhankelijkheden, -IncludeAllSubFeaturehelpt het toevoegen van `npm install` om alles in één keer te installeren. Soms wil je dat de server automatisch opnieuw opstart na de installatie: Install-WindowsFeature DHCP -Restart In één configuratie werkt het probleemloos, maar wees niet verbaasd als het de eerste keer mislukt — soms helpt een handmatige herstart of het opnieuw uitvoeren van het commando na updates of in afwachting zijnde herstarts.

Rollen implementeren op meerdere externe servers — Zorg voor een soepele batchverwerking

Als je een aantal servers hebt en een vergelijkbare configuratie op al je servers wilt, is er nog hoop. Exporteer eerst de rollen en functies van je huidige server naar een CSV-bestand: Get-WindowsFeature | Where-Object {$_. Installed -eq $true} | Select-Object Name | Export-Csv C:\PS\InstalledRoles.csv -NoTypeInformation Importeer die lijst vervolgens op de andere servers — zo simpel is het: Import-Csv C:\PS\Roles.csv | ForEach-Object { Install-WindowsFeature $_. Name } Superhandig als de gewenste rollen al op je referentieserver aanwezig zijn. Of loop gewoon door een lijst met machines: $servers = @('NY-RDS1', 'NY-RDS2', 'NY-RDS3') en voer het volgende commando uit: foreach ($server in $servers) { Install-WindowsFeature RDS-RD-Server -ComputerName $server } Dit werkt prima, maar houd er rekening mee dat sommige servers offline kunnen zijn of bestaande problemen hebben. Controleer eerst hun status.

Hoe verwijder je rollen en functies in PowerShell?

Wil je rollen opruimen? Het tegenovergestelde van installeren is `–restart` Remove-WindowsFeature. Simpel, maar toch. Bijvoorbeeld, om een ​​printserverrol te verwijderen: Remove-WindowsFeature Print-Server -Restart De `–restart` vlag zorgt ervoor dat de server indien nodig opnieuw opstart, wat vaak nodig is. Soms kan het verwijderen van rollen problemen veroorzaken als services nog actief zijn of afhankelijkheden achterblijven. Controleer altijd goed wat er na verwijdering overblijft.

Al met al is het beheren van Windows Server-rollen via PowerShell sneller en beter te scripten dan via grafische interfaces. Maar het is inderdaad ook iets complexer: afhankelijkheden, beheer op afstand, bronbestanden. Ik weet niet zeker waarom het soms wel werkt en soms niet – een oude Windows-gewoonte. Zorg dat je de commando’s bij de hand hebt en test ze eerst op één of twee servers voordat je grootschalige wijzigingen doorvoert. Meestal werken de installatie- en verwijderingscommando’s wel – als je voorzichtig te werk gaat, is het een stuk minder stressvol dan door de menu’s te klikken.

Samenvatting

  • Maak uzelf vertrouwd met Get-WindowsFeaturede geïnstalleerde en beschikbare systemen.
  • Gebruik dit Install-WindowsFeatureom rollen toe te voegen, met opties voor afhankelijkheden en automatisch herstarten.
  • Beheer meerdere servers eenvoudig met behulp van scripts met lussen en CSV-exports.
  • Verwijder rollen of functies Remove-WindowsFeaturetijdens het opruimen.

Samenvatting

Het beheren van serverrollen via PowerShell is niet perfect, en soms voelt het alsof Windows je tegenwerkt, vooral met afhankelijkheden of ontbrekende bestanden. Maar als je het eenmaal door hebt, is het veel sneller dan rondklikken. Houd er wel rekening mee dat commando’s op sommige servers kunnen vastlopen of handmatige tussenkomst vereisen, dus plan altijd een herstart of handmatige controles in. Hopelijk helpt dit je bij het versnellen van je implementaties en opschoning – het heeft voor mij al meerdere keren gewerkt, dus hopelijk ook voor jou.