Back in May of 2017, Microsoft announced the preview of Azure Cloud Shell, which supports the Bash shell. At that time some details were provided, including that fact that it would support authenticated access to Azure from anywhere and would enable seamless management with virtual machines.
More recently, PowerShell in Microsoft Azure Cloud Shell went into public preview, along with Bash in Azure Cloud Shell. As everyone is jumping to know more about this new shell, we wanted to provide some information about what PowerShell is all about so you know what to expect
Features of PowerShell
PowerShell is built upon the benefits of Azure Cloud Shell, which we will detail below.
You can pretty much connect to Azure from anywhere using a browser-based shell experience that is hosted in the cloud. The shell is assigned to a particular user account that is automatically authenticated on every session. In addition to a GUI experience, it also allows the use of a modern command line, if preferred.
Common Programming Languages
The PowerShell will come equipped with a number of commonly used modules, Azure tools, source control, text editors, database tools, build tools, and more. It also has support for the most popular programming languages, including Python, .NET, and Node.js.
With file persistence, the PowerShell attaches an Azure File share to persist all of your data. When you begin using the shell, it will prompt you to create the Azure File storage to keep data between sessions. It will then re-attach it at any further sessions.
These are all available with Azure Cloud Shell, but PowerShell adds a number of new functionalities. These are outlined below.
Azure Drive allows you to navigate and discover all Azure resources, much like a typical file system navigation would. In addition to that, it also has that is called “resource group scoping” which is provided for Azure Power cmdlets, used when in the context of a resource group path in the drive on Azure. Also included is a context-sensitive command line, which will only offer up commands that relate to items under the pact in Azure.
PowerShell includes a script editing option uses VIM to allow alteration of scripts. This provides IntelliSense and syntax highlighting for all of your PowerShell files.
Interactions are also enabled with virtual machines using PowerShell remoting, which can allow management of guest virtual machines in a couple of clicks.
Also included in PowerShell is an extensible model that allows you to add new commands from the PowerShell gallery. These commands will persist across all your Cloud Shell sessions.
Integration with Azure PowerShell
To provide simple integration, Cloud Shell will automatically authenticate your access to all subscriptions for PowerShell. It also maintains the version of PowerShell modules to provide the best experience for each session. This makes PowerShell easy to use for both experienced Azure users and those new to the platform. You can automate many resources easily using the Azure portal.
PowerShell has an interactive documentation option now with the addition of the “Try It” button. This opens an immersive learning experience for various PowerShell samples and scenarios. The environment used in documentation will provide the same PowerShell in Cloud Shell experience that is found in the Azure portal.
Mobile App Integration
An Azure mobile app is now available for PowerShell in Azure Cloud Shell. This enables the experience to go with you wherever you are. You will have access to any script in your CloudDrive from anywhere you want to access it.
All in all, PowerShell adds some very exciting functionality and is likely to be picked up by many people. This covers the basics of this new product and what it can do for you. It adds a lot of flexibility to make it work for you and your organization.