Tag: Azure CLI

az next after az login

Az Next – AI-powered interactive assistant Azure CLI

As you know, the Azure CLI already AI-build in with the az find command, and you might have seen a great feature like AI-powered PowerShell module called Az Predictor Module (Azure PowerShell Predictions), which does what the name says, predict PowerShell commands. Now with az next, the team also brought a similar feature to the Azure CLI. The team’s goal with az next is to guide users through their scenarios or sequence of jobs-to-be-done in tool, so that they could remain focused and avoid unnecessary external documentation searches.

Az next adopts our latest design guidelines and should help making the Azure CLI more approachable for all users, including beginners.

There are two scenarios in which are currently supported. The first one is a simple walkthrough for the next commands as soon as you execute az next. After that, the Azure CLI will return set of command options, which are highly likely to come after your last command. This is super helpful if you are running a sequence of commands, the Azure CLI will provide you with predictive recommendations.

Here for example, the commands after I ran az login and logged in into my Azure environment, followed by az next.

az next after az login
az next after az login

The second one is the end-to-end scenario walkthrough with the aim to help you achieve a specific scenario in mind. In these case the options show up in form of a summary instead of an explicit command, and the tool will guide you through individual command completion.

az next after creating a resource group
az next after creating a resource group

Getting started with az next

To get started with az next, you can simply start using the preview by downloading the latest Azure CLI. You can log issues or feature requests in our GitHub repo:  GitHub – Azure/azure-cli: Azure Command-Line Interface 

Configure az next

The first time you run az next, you will be prompted to install the Azure CLI extension.

Install Az next
Install Az next

If your Azure CLI doesn’t automatically ask to install the extension. you can run the following command:

az extension add -n next

Now you can configure az next, to switch between the different modes and experiences.

Set a non-interactive experience:

az config set next.execute_in_prompt = False

Set the options to be more elaborated with parameters

az config set next.show_arugments = True

For additional customization

az next –-help

Learn more

To learn more, check out the full announcement blog for the az next command here on Tech Community.

If you want to learn more about the Az Predictor Module and PowerShell Predictive IntelliSense, check out my blog posts:



Azure geography and Azure Regions

How to check the available VM Sizes (SKUs) by Azure Region

Do you want to know which Azure VM (virtual machine) sizes are available in an Azure region? Here are some simple ways like the Azure product page, the Azure portal, the Azure CLI, or a simple Azure PowerShell command to list the Azure VM sizes per Azure region. As you know Microsoft Azure has different Azure Regions available around the world. While the teams are working hard to make services available in these regions, it can happen that certain Azure services and virtual machine sizes (SKUs) are not available in some of the regions.

Azure geography and Azure Regions
Azure geography and Azure Regions

If you want to know more about Azure Regions, check out our Azure geographies.

Available VM Sizes (SKUs) by Azure Region Product Page

Now to check which services are available in your preferred Azure region, I recommend that you check out the Products available by region page on Azure.com. If you search for virtual machines, you will find a list of Azure VM sizes available per region.

Products and services available by Azure region

Azure Portal

When you deploy an Azure VM directly from the portal, you can see the available Azure VM SKUs for the region you have selected.

VM sizes in the Azure portal
VM sizes in the Azure portal

Available VM Sizes (SKUs) by Azure Region CLI and PowerShell

Now if you are using the command line while working with Azure, might don’t want to always open a web browser, you can simply use the Azure CLI or Azure PowerShell.

Azure CLI

With the Azure CLI you can run the following command. If you haven’t set the default output format to table in your Azure CLI, you can use the -o “table” parameter.

az vm list-sizes --location "eastus"
Azure CLI list VM sizes
Azure CLI list VM sizes

Azure PowerShell

With Azure PowerShell, you can use the following command

Get-AZVMSize -Location "eastus"
Azure PowerShell Get-AzVMSize
Azure PowerShell Get-AzVMSize

You can also us PowerShell to simply filter for different sizes, suing the Where-Object.

Get-AzVMSize -Location "eastus" | Where {$_.NumberOfCores -gt 128}
VMs with more than 128 cores
VMs with more than 128 cores

Conclusion

I hope this short guide helps you to easily list the find the available Azure VM sizes per region. If you have any questions, feel free to leave a comment.



Azure VM Run Command Run PowerShell Script

How to Run Scripts in your Azure VM using Run Command

You can access your Azure IaaS virtual machine (VM) in multiple ways like SSH or RDP, depending on your operating system and configuration. However, if you have issues with the RDP or SSH network configuration, you need to have a way to troubleshoot your virtual machine (VM). Luckily Azure offers you different management tools to work with Azure VMs for automation or troubleshooting. With the Run Command can run a PowerShell or shell script within an Azure VM remotely by using the VM agent. This scenario is especially useful when you need to troubleshoot operating system network configurations or user access configuration. For example, it can be convenient to reset RDP configurations on Windows Server virtual machines.

You use Run Command for Azure VMs through the Azure portalREST API, Azure CLI, or PowerShell. Here are some examples:

Azure VM Run Command in the Azure Portal

You can run the command directly from the Azure Portal. In the menu of the Azure VM, you can select Run command. Here you can find some predefined scripts to troubleshoot your Azure VM. In the case of a Windows VM, you will find scripts like configuring RDP port or enable PowerShell remoting. But you can also run your custom PowerShell script.

Azure VM Run Command Run PowerShell Script

Azure VM Run Command Run PowerShell Script

For Linux VMs, you will find predefined options to run a Linux shell script or ifconfig to list the network configuration.



List Azure Arc Machines Agent Version in Azure Cloud Shell

Get the Azure Connected Machine Agent (Azcmagent) Version

Azure Arc Enabled Servers just got another update enabling extensions. This also includes an updated version of the Azure Arc agent or Azure Connected Machine Agent (Azcmagent). To get an overview of what Azure Arc Azure Connected Machine Agent is installed on your machines, you can use several different ways. In this blog post, we are going to have a look at how you can get installed Azure Connected Machine Agent (Azcmagent) version for Azure Arc Enabled Servers.

On the Azure Arc Enabled Server

If you want to check the Azure Connected Machine Agent (Azcmagent) version directly on your Azure Arc enabled server, you can simply run the following command in PowerShell.

azcmagent version

This will list the installed version.

Azure Connected Machine Agent azcmagent Version

Azure Connected Machine Agent azcmagent Version

In the Azure Portal

You can also see the agent version in the Azure Portal. If you browse to your Azure Arc Enabled Server, you can find the agent version on the overview page.

Azure Portal - Azure Arc Enabled Server

Azure Portal – Azure Arc Enabled Server

However, if you want to see the agent version for your Azure Arc enabled servers at scale, this isn’t an ideal option.

List Azure Connected Machine Agent (Azcmagent) version for all Azure Arc machines

If you want to see the installed Azure Connected Machine Agent (Azcmagent) version for all your Azure Arce enabled servers at scale, you can use Azure Resource Graph Queries.

This query lists all the Azure Arc enabled machines and shows the installed agent version.

List Azure Arc Machines with Agent Version

List Azure Arc Machines with Agent Version

You can run the following query in the Azure Resource Graph Explorer in the Azure Portal.

 resources
| where type == "microsoft.hybridcompute/machines"
| extend agentversion = properties.agentVersion
| project name, agentversion, location, resourceGroup, subscriptionId
| order by name

You can also run the query directly in Azure Cloud Shell or on your local machine using Azure PowerShell or the Azure CLI.

List Azure Arc Machines Agent Version in Azure Cloud Shell

List Agent Version in Azure Cloud Shell

Azure CLI

az graph query -q "Resources | where type =~ 'microsoft.hybridcompute/machines' | extend agentversion = properties.agentVersion | project name, agentversion, location, resourceGroup, subscriptionId"

Azure PowerShell

Search-AzGraph -Query "Resources | where type =~ 'microsoft.hybridcompute/machines' | extend agentversion = properties.agentVersion | project name, agentversion, location, resourceGroup, subscriptionId"

If you need an overview of what Azure Connected Machine Agents we have installed and which versions do exist in our environment, you can just use the following Azure Resource Graph query.

Azure Resource Graph Explorer Chart - Azure Arc Server Agent Version

Azure Resource Graph Explorer Chart

Azure Resource Graph Explorer

 resources
| where type == "microsoft.hybridcompute/machines"
| extend agentversion = properties.agentVersion
| summarize count() by tostring(agentversion)

Azure PowerShell

Search-AzGraph -Query "Resources | where type =~ 'microsoft.hybridcompute/machines' | summarize count() by tostring(properties.agentVersion)"

Azure CLI

az graph query -q "Resources | where type =~ 'microsoft.hybridcompute/machines' | summarize count() by tostring(properties.agentVersion)"

Conclusion

I hope this blog post provides you with a short overview of how you can make sure which agent versions you have installed on your Azure Arc enabled servers. To learn more about Azure Arc for servers, check out Microsoft Docs. If you have any questions, feel free to leave a comment.



How to Configure Azure CLI Default Output

How to Configure Azure CLI Default Output Format

The Azure command-line interface (Azure CLI) is a set of commands used to create and manage Azure resources. In this blog post, I am going to show you how you can configure the Azure CLI default output format.

If you have used the Azure resources on your machine or in Azure Cloud Shell, you are aware that if you are running a command, the output you get is in the JSON format. This is great if you are building some sort of automation. However, if you are using in in the command line, it might not be the best way to read the output. You can change the output by using --output table or -o table to make it more human-readable.

To install the Azure CLI check out my blog post here.

How to Configure Azure CLI Default Output

You can also configure the Azure CLI default output to always be a specific type like the table format by running the az configure command. The Azure CLI allows for user configuration for settings such as logging, data collection, output format, and default argument values. You can learn more about the Azure CLI configuration on Microsoft Docs.

Azure CLI az configure

Azure CLI az configure

With az configure, you can manage Azure CLI configuration with this command is interactive.

Azure CLI az configure default output

Azure CLI az configure default output

Here you can now change the default output format.

Azure CLI Tip – Use AI to find az commands
If you did use the Azure CLI, you might find this tip very handy. I am talking about the az find command. The az find command provides you with example commands based on Azure documentation and usage patterns of the Azure CLI and Azure Resource Manager users.

Conclusion

I hope this blog post shows you how to configure the Azure CLI default output format. Are you just getting started with the Azure CLI and want some introduction, check out the get started with Azure CLI Microsoft Docs page. If you have any questions let me know in the comments.



AZ-104 Azure Administrator Exam Study Guide

AZ-104 Study Guide: Azure Administrator

I am currently preparing for the new Microsoft exam AZ-104: Microsoft Azure Administrator, which was announced to replace the AZ-103 exam. There are many great resources out there to prepare for the exam, that’s why I want to share my AZ-104 Microsoft Azure Administrator Certification Exam Study Guide with you. To learn and prepare for the exam, I usually use a couple of online resources, mainly Microsoft Docs and Microsoft Learn, which I am going to share with you. You can find more information about how I prepare for a Microsoft Certification exam on my blog post: How to prepare and pass Microsoft Certification Exam.

Also, check out other Microsoft Azure Certification Exam Study Guides:

Here is my AZ-104 Microsoft Azure Administrator Certification Exam Study Guide

It is essential to get familiar with the exam objectives and skills measured first. That is why I recommend reading the description of the exam and the skills measured.

Exam AZ-104: Microsoft Azure Administrator

The Azure Administrator implements, manages, and monitors identity, governance, storage, compute, and virtual networks in a cloud environment. The Azure Administrator will provision, size, monitor, and adjust resources as appropriate.

Candidates should have a minimum of six months of hands-on experience administering Azure. Candidates should have a strong understanding of core Azure services, Azure workloads, security, and governance. Candidates for this exam should have experience in using PowerShell, the Command Line Interface, Azure Portal, and ARM templates.

The high-level view of the skills measured in the exam:

  • Manage Azure identities and governance (15-20%)
  • Implement and manage storage (10-15%)
  • Deploy and manage Azure compute resources (25-30%)
  • Configure and manage virtual networking (30-35%)
  • Monitor and back up Azure resources (10-15%)

You can find more information on the exam website.

Free Online Microsoft Learn AZ-104 Exam Study Guide resources

Microsoft Learn provides you with free online training and learning paths for different Microsoft technologies. They not just offer reading material, but also control questions and free online labs. Here are some relevant Microsoft Learn modules and learning paths for the AZ-104 Microsoft Azure Administrator Certification Exam. Microsoft Learn is an important part of my AZ-104 Azure Administrator exam study guide.

The team also just made it easier to prepare with the new AZ-104 related learning paths on Microsoft Learn. I highly recommend that you take these for your AZ-104 exam preparation.

Microsoft Docs AZ-104 study guide resources

One thing I always used to prepare for my Microsoft exams is Microsoft Docs. Here are the relevant Microsoft Docs which I used to prepare and study for the AZ-104 exam.



Azure Cloud Shell in Windows Admin Center

Run Azure Cloud Shell in Windows Admin Center

As you know Windows Admin Center enables you to not just manage Windows Server machines with a web-based user interface, but also to easily connect Azure Hybrid services to your on-premises Windows Server environment. Windows Admin Center allows you to connect services like Azure File Sync, Azure Update Management, Azure Backup, Azure Site Recovery and many more to your Windows Server and Azure Stack HCI environment. With the latest release of Windows Admin Center (WAC) which was announced at Microsoft Ignite 2019, we get another hybrid cloud feature. We get a new Azure Cloud Shell extension in Windows Admin Center. Azure Cloud Shell is an interactive, authenticated, browser-accessible shell for managing Azure resources. It provides the flexibility of choosing the shell experience that best suits the way you work, either Bash or PowerShell. We are able to use Cloud Shell directly from the Azure portal, shell.azure.com, in Visual Studio Code, in the new Windows Terminal or even in the Azure mobile app. Now with the new solution/extension, administrators can also run Cloud Shell directly within WAC.

How to run Azure Cloud Shell in Windows Admin Center

First, you will need to enable and install the new Azure Cloud Shell solution. For that open Windows Admin Center, go to Settings and in the menu click on Extensions.

Extensions

Extensions

Under available extensions, you will find the new Azure Cloud Shell (Preview) extension. Click on Install, the WAC portal will refresh automatically.

After the page has refreshed, the Cloud Shell option will show up in the top menu.

Start Cloud Shell in Windows Admin Center

Start Cloud Shell in Windows Admin Center

If you start Azure Cloud Shell for the first time, you will need to login to Azure.

After that, you can run the PowerShell or Bash experience, depending on what you prefer. You also have access to the clouddrive which comes with Cloud Shell.

Azure Cloud Shell in Windows Admin Center

Azure Cloud Shell in Windows Admin Center

In that, you can run tools like the Azure CLI, Azure PowerShell and much more. If you want to learn more about Azure Cloud Shell, check out my blog post, Mastering Azure with Cloud Shell. Windows Admin Center is a free download to use with your Windows Servers, you can download Windows Admin Center here. If you want to know more about the Hybrid capabilities, check out my blog post on ITOpsTalk.com.

I hope this gives you an overview of how you can run Azure Cloud Shell in Windows Admin Center. Let me know if you have any questions in the comments.




SSH Remote Edit File with Visual Studio Code

Remote Edit Files on Azure Linux VMs using VS Code

There are a lot of different ways to remote manage your Azure virtual machines using various tools and technics. In this blog post, I am going to show you how you can remotely edit files on Azure Linux virtual machines using Visual Studio Code. Visual Studio Code has a new Remote Development Extention which allows you to open any folder in a container, on a remote computer, or in the Windows Subsystem for Linux (WSL) and take advantage of the VS Code feature set. With the Remote – SSH extensions, you can easily browse and edit files on an Azure VM or any other system where you can connect using SSH.

Installation

As mentioned to edit the files on the Azure Linux virtual machine remotely, we are using the light-weight, cross-platform, opensource editor Visual Studio Code. You can download and install VS Code from the official website.

Visual Studio Code Remote Development Extension

In addition to Visual Studio code, we need to install the Remote – SSH extension, which comes with Remote Development Extension Pack. This also includes remote extensions for containers or the Windows Subsystem for Linux (WSL).

If you are running on a Windows 10 machine, you will also need to install the OpenSSH client on your machine. You can do that going through this blog post, or by running this command.

# Install the OpenSSH Client
Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0

Azure VM connection using SSH

The Remote – SSH extensions currently only supports connecting to x86_64 Linux-based SSH servers using key-based authentication.

Optional: Create Azure Linux VM with key-based SSH authentication using the Azure CLI

Create Azure Linux VM Azure CLI SSH Keys DNS Name

If you want to try it out, and you haven’t set up a Linux VM SSH and key-based authentication. This Azure CLI command here helps you to create a new Azure virtual machine and sets up ssh keys as well as an optional unique Azure DNS name.

az vm create --resource-group demosshvm --name tomsVM --image UbuntuLTS --admin-username thomas --generate-ssh-keys --public-ip-address-dns-name tomsazurelinuxvm

In this example, you can use the public IP address or the Azure FQDN to connect to the Azure VM. If you have a VPN or Express Route set up, you can also use private IP addresses and DNS names. If you are using public IP addresses in production, make sure you are using a service like Azure Just in Time VM access.

Connect Visual Studio Code to Azure VM using SSH

After you have installed Visual Studio Code, the Remote – SSH extension, the SSH client and have a VM with key-based authentication, you can now easily connect. Open Visual Studio Code, on the bottom left, you see the Remote connection button. If you press it, you will find the remoting options. Select “Remote-SSH: Connect to Host…

Visual Studio Open Remote SSH Connection

This will ask you for the username and IP address or DNS name of the virtual machine. In my case, I am going to use the DNS name.

Visual Studio Code SSH Remoting Connection

 

After pressing enter, this will connect your Visual Studio Code environment to the Azure virtual machine.

Visual Studio Code SSH Connection

 

Remote edit files on Azure Linux VMs using VS Code

You can start opening folders and files on the remote Azure Linux VM and begin browsing the file system. On the bottom left, you see the name or IP address of the machine you are connected with.

SSH Remote File System Visual Studio Code

You can also open files and start remote edit files on your Azure Linux VM. If you save the changes you made to the file, this is directly saved on the remote Azure virtual machine.

SSH Remote Edit File with Visual Studio Code

You get all the advanced VS Code features you know from your local Visual Studio Code like syntax-highlighting and more.

I hope this shows you an easy way to remotely edit files on your Azure Linux virtual machines using Visual Studio Code and SSH. If you have any questions, please let me know in the comments.



Mastering Azure using Cloud Shell Session

Video: Mastering Azure using Cloud Shell, PowerShell and Bash!

At the NetWork 9 Conference in Neum and at the Global Azure Bootcamp in Switzerland, I presented my session about Mastering Azure using Cloud Shell. Since I got a lot of requests for the session to be online, I recorded my presentation and made it available for everyone. The presentation is a live demo and summary of my blog post “Mastering Azure with Cloud Shell“, which gives you an overview about the Cloud Shell and some of the advanced stuff you can do.

In the session you learn:

I hope you enjoy watching it and let me know what you think in the comments.