Category: Microsoft

AZ-104 Microsoft Certified Azure Administrator Associate

Passed AZ-104 Microsoft Azure Administrator Exam

I just got the great mail in my inbox that I passed the AZ-104 Microsoft Azure Administrator exam to receive and renew the Microsoft Certified: Azure Administrator Associate certification. Back in 2018, I got certified as an Azure Administrator doing the AZ-102 transition exam, which kind of later became AZ-103. Now, after two years it was time to renew my Microsoft Certified Azure Administrator certification. I took the AZ-104 Microsoft Azure Administrator beta exam online at the beginning of April. When you take a beta exam you get the test results after a couple of days the exam in generally launched, and today was the day.

What is the AZ-104 Microsoft Azure Administrator exam?

The AZ-104 exam is focused on Azure Administrators who implement, manage, and monitor identity, governance, storage, compute, and virtual networks in a cloud environment. It is the only exam you need to pass to get the Microsoft Certified: Azure Administrator Associate.

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%)

How to prepare and pass the AZ-104 Microsoft Azure Administrator exam

The skills measured in AZ-104 are a mix of Azure Administrator tasks focusing on Azure Infrastructure and deployment, Azure Integration, governance and configuration. If you are just getting started with Microsoft Azure, I recommend that you take first the exam AZ-900 Azure Fundamentals. This is not a required exam, but it is a great way to validate your knowledge and get started with the cloud. If you feel comfortable you can directly start with the Azure Administrator Associate exam. I have written an AZ-104 Microsoft Azure Administrator exam study guide, with all the information and resources I used to prepare for the exam.

AZ-104 Azure Administrator Exam Study Guide

AZ-104 Azure Administrator Exam Study Guide

I also have a blog post on generally prepare for Microsoft certification exams as well as some tips on how to take Microsoft exams.

Conclusion

Are you also interested in becoming Microsoft Azure Certified? Check out my blog posts about why you should become Microsoft Azure Certifiedhow to pick the right Azure exam certification path and how to prepare and pass a Microsoft Azure certification exam. I hope this helps you to prepare, study, and pass the AZ-104 exam.

I am super happy I passed AZ-104 Microsoft Azure Administrator exam, it is a great way of validating your skills. If you have any questions, please let me know in the comments.



How to Install a Windows Server Container Host

How to Install a Windows Server Container Host

In this blog post, I want to quickly guide you through how you can install a Windows Server Container Host running Docker. This guide will help you set up, install, and run Windows Containers on Windows Server. In my example, I will install a container host on a Windows Server, version 2004, which is a Semi-Annual Channel (SAC) release. Windows Server SAC releases are released twice a year and are optimized for containers. In the Windows Server, version 2004 release, the team continued improving fundamentals for the core container platform such as performance and reliability.

If you want to learn more about the differences of Windows Server Semi-Annual Channel (SAC) vs. Long-Term Servicing Channel (LTSC), check out my blog post.

Requirements

  • A virtual or physical server running Windows Server 2016 or higher (Also including Semi-Annual Channel (SAC) releases. In my blog post, I will use the latest available releases and run the latest Windows Server SAC release, which offers the latest enhancements on the container host.
  • You can also use the Windows Server 2019 LTSC version

Set up and install the Windows Server Container Host

Since I am using the latest SAC release of Windows Server, the server is available as Windows Server Core only. This means I am going to use a tool called “sconfig” to set up my server for the first time. Of course, you can also use existing methods like unattend.xml files or PowerShell scripts to set up your server.

Windows Server Core

Windows Server Core

With sconfig, you can run all the simple configuration tasks to configure your Windows Server.

Windows Server SCONFIG

Windows Server SCONFIG

After the Windows Server is configured and patched, we can now install Docker, which is required to work with Windows containers. Docker consists of the Docker Engine and the Docker client. You can simply install Docker on Windows Server using the following commands.

Install-Module -Name DockerMsftProvider -Repository PSGallery -Force
Install-Package -Name docker -ProviderName DockerMsftProvider
Install Docker on Windows Server

Install Docker on Windows Server

After these commands, you will need to restart the server.

Restart-Computer -Force

If you want to learn more about installing Docker on Windows Server, check out Microsoft Docs.

Run Windows Container Docker Images on Windows Server

Run Windows Container Docker Images on Windows Server

Now you can start pulling your docker container images to your Windows Server. I will use the latest Windows Container images, which came with Windows Server, version 2004. You can read more about the improved container images here.

docker pull mcr.microsoft.com/windows/servercore:2004 
docker pull mcr.microsoft.com/windows/nanoserver:2004 
docker pull mcr.microsoft.com/windows:2004

You can now use the docker client to manage your containers on your Windows Server, or you can also use the new Windows Admin Center Container extension, which was released a couple of weeks ago.

Manage Windows Server Containers with Windows Admin Center

Manage Windows Server Containers with Windows Admin Center

And yes, if you have a standalone Windows Server Core, you can also directly install Windows Admin Center on your Windows Server Core.

Conclusion

I hope this blog post gives you a great overview of how to install and set up a Windows Server container host. If you have any questions, feel free to leave a comment.



Add Custom Script Extension Azure Arc Server

Extensions for Azure Arc enabled Servers

With the latest update for Azure Arc for Servers, you are now able to deploy and use extensions with your Azure Arc enabled servers. Currently, you have six different Azure Arc extensions you can deploy to your servers.

  • Custom Script Extension for Linux – Azure Arc
  • DSCForLinux extension on a Ubuntu
  • OMS Agent for Linux – Azure Arc
  • Custom Script Extension for Windows – Azure Arc
  • PowerShell Desired State Configuration – Azure Arc
  • Microsoft Monitoring Agent – Azure Arc

These extensions are similar and consistent with the virtual machine extensions for Azure VMs. These are small applications that provide post-deployment configuration and automation tasks on Azure Arc enabled servers. For example, if a server requires software installation, anti-virus protection, or to run a script inside of it, an Azure Arc extension can be used. Extensions can be run with the Azure CLI, PowerShell, and the Azure portal.

Introducing Azure Arc
For customers who want to simplify complex and distributed environments across on-premises, edge and multicloud, Azure Arc enables deployment of Azure services anywhere and extends Azure management to any infrastructure.
Learn more about Azure Arc here.

You can find more information about Virtual machine extension management with Azure Arc for servers on Microsoft Docs.



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.



Azure Arc Enabled Servers Extension Management

Azure Arc Enabled Servers Extension Management

Azure Arc for Server just got a couple of new features. In this blog post, we are going to have a look at the new feature on Azure Arc enabled servers called extension management. This new Azure Arc enabled servers features allows you not only to deploy extensions like the Custom Script Extension, or the Microsoft Monitoring Agent but also enable features like Azure Update Management, Inventory, Change Tracking, and more for your servers running in a hybrid environment.

Introducing Azure Arc
For customers who want to simplify complex and distributed environments across on-premises, edge and multicloud, Azure Arc enables deployment of Azure services anywhere and extends Azure management to any infrastructure.
Learn more about Azure Arc here.

Azure Arc enabled servers already could benefit from several Azure Resource Manager features like Tags, Policies, RBAC, and some Azure Management features like logs and Azure Policy. With the new update, you can start using more extensions.  With these extensions available, Azure Arc enabled servers also get features like Azure Update Management, Inventory, Change Tracking, and insights capabilities.

Azure Arc Azure Management Control Plane

Azure Arc Azure Management Control Plane

Azure Arc Enabled Servers Extension Management Video

You can also watch my summary video on YouTube.



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.



Run Hyper-V on Windows 10 on ARM and the Surface Pro X

Run Hyper-V on Windows 10 on ARM and the Surface Pro X

Here is a quick blog post on how you can run Hyper-V virtual machines (VM) on Windows 10 on ARM and the Surface Pro X.

I am running the Surface Pro X as my daily driver for a couple of months. It is a fantastic device and combines a light designed and the Surface Pro form factor with a 13-inch screen. But the most significant difference to the other Surface devices like the Surface Pro 7, is that the Surface Pro X is running Windows 10 on ARM. It has a custom Microsoft SQ1 chip. This limits it to run native ARM64 or emulated 32-bit x86 applications, and it can’t run classic 64-bit x64 applications at the moment. Another limitation was that I wasn’t able to run Hyper-V virtual machines (VMs) on my Surface Pro X.

With the Windows 10 Insider Preview build 19559, you were able to install Hyper-V. However, you didn’t have a compatible image to run inside the virtual machine (VM). With the Windows 10 Insider Preview Build 19631, Microsoft is now also providing an ARM64 VHDX file, which you can download and run as a guest OS in Hyper-V.

How to enable Hyper-V on Windows 10 on ARM

You need a Windows 10 ARM-based PC with a Microsoft SQ1, Qualcomm Snapdragon 8cx, or Qualcomm Snapdragon 850 processor. To enable the Hyper-V feature on Windows 10 on ARM and the Surface Pro X, you will also need to have installed the Windows 10 Insider Preview build 19559 or higher and have Windows 10 Pro or Windows 10 Enterprise.

  1. Join the Windows Insider Program and update to the latest Windows 10 Insider Fast Ring build 19559 or newer
  2. Upgrade your Windows edition from Home to Windows 10 Pro or Windows 10 Enterprise
  3. Install the Hyper-V feature on Windows 10You can run the following PowerShell command to install the Hyper-V feature.
    Enable-WindowsOptionalFeature -Online -FeatureName:Microsoft-Hyper-V -All
  4. Download the Windows 10 on ARM VHDX file from here.
  5. After that, you can create a Hyper-V virtual machine (VM) with an existing VHDX file on your Surface Pro X.
  6. Visit Windows 10 on ARM developer center for more details and documentation.

Conclusion

I hope this gives an overview of how to run Hyper-V VMs on Windows 10 on ARM. This is still in preview, but if you are like me and want to give it a try, you can. Let me know if you have any questions.