Powershell Core 6.0 onder de loep

Begin januari dit jaar is PowerShell Core 6.0 door Microsoft vrijgegeven, aanleiding voor mij om dit eens onder de loep te nemen. Wat is er nieuw aan deze versie en hoe gebruik ik het, als het al zinvol is?

Allereerst is het belangrijk om uit te leggen dat PowerShell Core verschilt van Windows PowerShell. Zoals de naam al aangeeft is Windows PowerShell alleen beschikbaar voor Windows, PowerShell Core is cross-platform en kan je dus ook installeren op Linux of Mac. Wel zo gemakkelijk om één shell te gebruiken voor alle platforms! Daarbij kent de Core versie ook diverse mogelijkheden cross-platform remoting!

In een wereld waarin we in toenemende mate gebruik maken van IOT-toepassingen en naar de cloud bewegen kan een cross-platform shell van grote toegevoegde waarde zijn om de als maar toenemende grote aantallen te beheren en automatiseren. Denk bijvoorbeeld aan het managen van duizenden “containerized applicaties”. PowerShell Core 6.0 kan een belangrijke hulpmiddel betekenen voor de automatisering in de cloud. Zeker omdat veel beheerders al bekend zijn met de taal en methoden.

Hoe zit het met de compatibiliteit?

In het gebruik met PowerShell Core heb ik gemerkt dat er toch wel een aantal cmdlets ontbreken die hier en daar gebruikt zijn in mijn scripts. Naar mijn inschatting werkt ongeveer 1/5e van mijn scripts niet volledig in PowerShell Core. In de toekomst zal dit veranderen doordat Microsoft de compatibiliteit van PowerShell Core verder uitbreidt.

De PowerShell Editor

Windows PowerShell ISE is gebaseerd op… Windows PowerShell en maakt dus geen gebruik van PowerShell Core. Daarvoor kun je gebruik maken van Visual Studio Code. Laatstgenoemde kent veel meer en uitgebreidere ontwikkelaarsfunctionaliteiten en hulpmiddelen.
Zo voert het een aantal controles uit en geeft het geeft ook bestpractice-hits om je script leesbaar te maken en te houden, een voorbeeld daarvan zie je hieronder:

Na een korte wen-periode ben ik de Visual Studio Editor wel zeker gaan waarderen. Als je PowerShell Core wilt gebruiken, dan is het wel nodig om dit in te stellen via dit artikel, standaard maakt de editor gebruik van Windows PowerShell. Je kunt Visual Studio dus ook gebruiken voor Windows PowerShell.
Om Visual Studio standaard te openen met in de Powershell language kun je onderstaande regel toevoegen in de user settings:

“files.defaultLanguage”:

“powershell”

Dit maakt de Windows PowerShell ISE ervaring compleet!

De toekomst van Windows PowerShell en Core

Op dit moment heeft Microsoft geen plannen voor nieuwe Windows PowerShell functionaliteiten. Nog niet alle cmdlets zijn beschikbaar in PowerShell Core, er wordt hard gewerkt aan de compatibiliteit met Windows Powershell 5.1.
Microsoft heeft geen plannen voor nieuwe functionaliteiten voor Windows PowerShell, dit platform blijft voorlopig nog wel ondersteund door Microsoft via de Windows en Windows server ondersteuning.

De Core versie van PowerShell is nog geen volwaardige vervanger van Windows PowerShell. In de praktijk loop je soms tegen de beperkingen aan maar dat is beperkt. De uitbreiding van PowerShell naar andere platforms als Linux maakt dat PowerShell een sterke rol kan spelen in het automatiseren van diverse cloud diensten en toepassingen. Zo bevat de volgende versie uitbreidingen specifiek voor IOT, daarnaast wordt het gemakkelijker om de prestaties van bulk operaties te verbeteren.

Ik verwacht dat de PowerShell Core uiteindelijk Windows PowerShell zal overgroeien qua functionaliteit en de defacto standaard wordt. Daarom ontwikkel ik de scripts standaard in PowerShell Core om een migratie vanaf Windows PowerShell te voorkomen.

De ene Azure Stack is de andere niet

General Available. Het is de term die Microsoft hanteert voor producten die het stadium van publieke verkoop hebben bereikt. In veel gevallen gebruikt de reus uit Redmond alleen de afkorting GA om kenbaar te maken dat een product beschikbaar is of wanneer het verwacht het product beschikbaar te hebben. Afgelopen september vierde Microsoft en een select groepje leveranciers feest, want na de nodige vertraging is Azure Stack nu écht GA geworden. Nieuws van dermate grote omvang dat een serieus aantal sessies op Microsoft Ignite in het teken stond van Azure Stack.

De digitale speeltuin die Azure heet

In veel bedrijfsomgevingen wordt Azure enkel gebruikt als hosting-platform voor (web)servers en databases. Dat is in zekere zin wel zonde, want er zijn veel meer leuke dingen mogelijk. Sterker nog: eigenlijk kan tegenwoordig zo ongeveer alles wel in de cloud. En waar Microsoft vroeger alleen Microsoft adviseerde, kan Azure nu probleemloos met andere platformen en technologieën overweg.

Microsoft Tech Summit: Office 365 Teams

Donderdag 23 en vrijdag 24 maart vond in de Amsterdamse RAI de eerste Microsoft Tech Summit van 2017 plaats. Een gratis event van Microsoft waar zij samen met diverse partners het laatste productnieuws presenteren en technische lezingen en workshops geven. Vrijwel alles wat Microsoft op gebied van software fabriceert stond in de spotlights. Een van de presentaties waar ik bij aanwezig was ging over het vrij recent geïntroduceerde Office 365 Teams. Is dat de toekomst van collaboratie op de werkvloer?

De techniek voorbij

IT-middelen zijn niet meer weg te denken uit het dagelijks leven. Zowel zakelijk als privé maken we er volop gebruik van. De acceptatie en integratie (vaak digital transformation genoemd) is echter nog niet voltooid. De manier waarop IT wordt ingezet is, zeker wereldwijd, enorm divers en continu in beweging. Sterker nog, er ontstaan in steeds hoger tempo nieuwe toepassingen en daarmee mogelijkheden.