Azure IaaS: Build a VM from a Bring your Own License (BYOL) image with Azure PowerShell

April 24, 2017 at 9:16 am in ARM, Azure, Azure Hybrid Use Benefit, BYOL, Cloud, IaaS, PowerShell by Wim Matthyssen

For all people who do not yet know, with the Azure Hybrid Use Benefit you can use your on-premises Windows Server licenses that includes Software Assurance for Windows Server (Standard and Datacenter Editions) virtual machines (VM) in Azure. More recently also Azure Hybrid Use Benefits for Windows Client which includes Windows 10 (only Enterprise customers with Windows 10 Enterprise E3/E5 per user or Windows VDA per user – User Subscription Licenses or Add-on User Subscription Licenses – are eligible) came in Preview.

By using your existing licenses, you only pay for the base compute rate (equal to the Linux rate for VMs) without the Windows licenses cost, which can save you up to 40 %.

You can download the Azure Hybrid Use Benefit datasheet here

clip_image002

These days it’s even simpler to deploy a new Azure server VM whit your own on premise license via the Windows Server BYOL images available in the Azure Marketplace. There are images available for the following Server Oss (*be aware that not all Azure Subscriptions can use the BYOL images):

  • Windows Server 2008 R2 SP1
  • Windows Server 2012
  • Windows Server 2012 R2
  • Windows Server 2016 (not available in all regions)

You can search for the Windows Server images by running following PowerShell command:

clip_image004

In the above screenshot, you can see that some Skus now contain the BYOL suffix.

You can search for the Windows Client images by running following PowerShell command:

clip_image006

To build a VM with from a BYOL image you can run following Azure PowerShell script (adjust all variables for your own use):

clip_image008

The script is also available on Microsoft TechNet

When the script is completed and the VM is build, you can log into the VM via remote desktop. Like you can see the VM is not registered and you’ll able to use your own Windows product key.

clip_image010

Hope this comes in handy!

Wim Matthyssen (@wmatthyssen)

Azure IaaS: VM status Running (Installing Extensions)

March 29, 2017 at 6:13 am in ASM, Azure, Azure PowerShell, Cloud, IaaS, Installing Extension, Microsoft, Public Cloud by Wim Matthyssen

Last week while migrating Azure IaaS VMs from ASM to ARM, I noticed that one VM was showing the status “Running (Installing Extension)” in the Azure Classic portal. When I tried to connect to that specific VM with RDP no connection could be made. This status also prevented me from doing some automation activities, the VM however still responded to a ping.

clip_image002

When I opened the DASHBOARD page of the VM and looked at the extensions, I saw that the Microsoft.Compute.VMAccessAgent showed following error:

clip_image003

The simplest way I found to resolve this error was to delete the extension, and add it back. To do so login to the Azure portal with your Azure account. Go to Virtual Machines and click on the specific VM. On the opened blade select Extensions, right click the VMAccessAgent and click Delete. When asked to delete the extension select Yes

clip_image005

clip_image006

clip_image007

clip_image008

To reinstall the VMAccess extension open PowerShell ISE, connect to your Azure subscription with your Azure account and run the following command (replace cloud service name and VM name by your own)

clip_image010

To check the current status of the extension, run following command (replace cloud service name and VM name by your own):

clip_image012

Or you can also check trough both Azure portals

clip_image014

clip_image016

After the reinstallation of the VMAccessAgent, it ran with STATUS Success and I was able to reconnect to the VM with RDP. This concludes this blog post, hope it helps whenever you have this issue.

Wim Matthyssen (@wmatthyssen)

Microsoft Azure Backup Server: Anti-Virus Exclusions

March 3, 2017 at 1:05 pm in Anti-Virus Exclusions, Azure, Azure Backup, Cloud, hybrid cloud, MABS, Microsoft Azure Backup Server by Wim Matthyssen

Running a solid, constantly updated antivirus product on your servers is a necessity to keep a healthy and secure server environment. However, with installing an antivirus product, you also risk having issues with certain workloads and services on those severs. Just like System Center Data Protection Manager (SCDPM), the Microsoft Azure Backup Server (MABS) is compatible with most antivirus software products. Though, the implemented antivirus product can also affect MABS performance and, if not configured properly, can cause data corruption of replicas and recovery points.

clip_image002

So, to avoid file conflicts and to minimize performance degradation between your MABS server and the antivirus software running on top of it, you should disable real-time monitoring by the antivirus software for all of the following processes and directories, which are listed below.

MABS processes to exclude from antivirus real-time monitoring

For information about configuring real-time monitoring based on process name or folder name, check the documentation of your antivirus vendor.

  • DPMRA.exe (*full path: C:\Program Files\Microsoft Azure Backup\DPM\DPM\bin\DPMRA.exe)
  • csc.exe  (*full path: C:\Windows\Microsoft.NET\Framework\v4.0.30319\csc.exe -> you can also exclude csc.exe in all the other Microsoft.NET Framework folders)
  • cbengine.exe (*full path: C:\Program Files\Microsoft Azure Backup\DPM\MARS\Microsoft Azure Recovery Services Agent\bin\cbengine.exe)

 

clip_image004

clip_image006

clip_image008

 

MABS directories in the MABS Program Files folder to exclude from antivirus real-time monitoring

Be aware that when you installed MABS on another drive then “C:”, like in the example below, look under the correct drive for the folders to exclude.

  • C:\Program Files\Microsoft Azure Backup\DPM\DPM\Temp\MTA\*
  • C:\Program Files\Microsoft Azure Backup\DPM\DPM\XSD\*
  • C:\Program Files\Microsoft Azure Backup\DPM\DPM\bin
  • C:\Program Files\Microsoft Azure Backup\DPM\MARS\Microsoft Azure Recovery Services Agent\bin
  • C:\Program Files\Microsoft Azure Backup\DPM\DPM\Cache (*MABS scratch folder)

 

clip_image010

clip_image012

clip_image014

clip_image016

clip_image018

 

Delete infected files on the MABS server

As a final remark, I would also advise to configure to delete infected files by default on the MABS server rather than automatically cleaning or quarantining them. Automatic cleaning and quarantining can result in data corruption because these processes cause the antivirus software to modify files, making changes MABS cannot detect.

 

In summary, there are a lot of antivirus settings you should keep track of when running MABS. I’ve tried to list all of the exclusions, so hopefully it will help you with getting the most out of your MABS setup. If you have any questions, feel free to contact me through my Twitter handle.

Wim Matthyssen (@wmatthyssen)

PowerShell: BgInfo Automation script

February 23, 2017 at 9:19 am in BgInfo, Client Hyper-V, Hyper-V, PowerShell, scvmm, VM Template, Windows Server 2016, Windows Sysinternals, WS2016 by Wim Matthyssen

Probably everyone knows the Windows Sysinternals tool BgInfo (currently version 4.21). For those who don’t, it’s a great free tool which captures system information from a workstation or server (probably where it is the most useful) and displays the catched data on the Desktop of that machine. It can show useful information like, DNS settings, used IP Addresses, computer name, domain name, OS version, memory, etc. If you want to read more about this tool you can do so via following link: https://technet.microsoft.com/en-us/sysinternals/bginfo.aspx

Whenever I create a new Windows Server 2016 Virtual Machine (VM) template for customers, I mostly add this tool in the base image (also called golden image) and set it so it starts up automatically whenever a user logs on to the server. To automate this process, I wrote a PowerShell script which does all of the following:

  • Download the latest BgInfo tool
  • Create the BgInfo folder on the C drive
  • Extract and cleanup the BgInfo.zip file
  • Download the logon.bgi file which holds the preferred settings
  • Extract and cleanup the LogonBgi.zip file
  • Create the registry key (regkey) to AutoStart the BgInfo tool in combination with the logon.bgi config file
  • Start the tool for the first time

Prerequisites

Windows PowerShell 5.0

PowerShell script:

To use the script copy and save the above as BGInfo_Automated_v1.0.ps1 or download it here. Afterwards run the script with Administrator privileges from the server you wish to use for your VM template. If you want to change configuration settings, just open the logon.bgi file and adjust the settings to your preferences.

image

image

image

image

Hope this script comes in handy for you. If you have and questions or recommendations about it, please contact me through my twitter handle.

Wim Matthyssen (@wmatthyssen)

Microsoft Azure Backup Server: Error when installing on Windows Server 2016 – The Single Instance Store (SIS) component is not installed

January 30, 2017 at 3:36 pm in Azure, Azure Backup, hybrid cloud, MABS, Microsoft Azure Backup, Microsoft Azure Backup Server, PowerShell, Public Cloud, SIS, SIS-Limited, Windows Server 2016, WS2016 by Wim Matthyssen

 
Hi All,

Last week I was contacted by a customer who tried to install Microsoft Azure Backup Server (MABS) on an on-premise Windows Server 2016. However, when he started the installation he always received an error because a prerequisite was not installed, namely the Single Instance Store (SIS) component.

 
clip_image002

When opening the DpmSetup.log with PowerShell (as Administrator), you could see the following error:

 

clip_image004

However, when you try to install this missing component through PowerShell it gives you an Error: 0x800f080cFeature name SIS-Limited is unknown.

clip_image006

The reason for this is that because from Windows Server 2016 the SIS-Limited component is replaced by Microsoft’s deduplication or data footprint reduction (DFR) technology, like you can read in the following article from MVP Greg Schulz: http://storageioblog.com/rip-windows-sis-single-instance-storage-or-at-least-in-server-2016/

Also, when you go to the Microsoft Azure Backup Server download page and you expand System Requirements you can see that Windows Server 2016 at the present time is not listed as a supported Operating System (OS) to deploy MABS, probably because it does not have this SIS component.

clip_image008

Conclusion

Currently you’re not able to use Windows Server 2016 as OS for you MABS server. Probably in the near future Microsoft will release a new version of MABS which will allow it, but until then you need to stick with Windows Server 2012 (R2) or Windows Server 2008 R2 to install your MABS on.

Hope this helps you with this error.

Wim Matthyssen (@wmatthyssen)

How to install and use the Microsoft Azure Virtual Machine Optimization Assessment tool

January 20, 2017 at 2:41 pm in AD Assessment, Azure, Microsoft Azure Virtual Machine Optimization Assessment, PowerShell, SharePoint, SQL Assessment, SQL Server by Wim Matthyssen

Hi all,

In my first blog post of this year, I will show you how you can install and use the free optimization tool, Microsoft’s Azure Virtual Machine Optimization Assessment. This tool (current version 2.0.61228.1 – released 1/16/2017) can help you optimize performance for your Azure virtual machines (VMs) running AD, SQL or SharePoint workloads. The tool focuses on 6 key areas, including security, compliance, availability, business continuity, performance and scalability. When the tool is first started, it will present a short questionnaire about your cloud deployment, followed by an automated data collection and inspection which will analyze the selected workload running on Azure. After finishing this assessment, which could take upon an hour, a custom report is generated which contains useful advice and key recommendations on how to secure and protect this workload following Microsoft best practices.

I myself mostly use the tool when migrating VMs from on premise to the cloud or after setting up a new Azure cloud environment for a customer.

The tool has the following requirements:

  • It can be installed on any workstation or server (on premise or Azure VM) running at least Windows 7 (or later) or Windows Server 2008 (or later)
  • The server or workstation running the tool should at least have 4GB RAM, a 2 GHz dual-core processor and 5 GB of free disk space
  • The server or workstation should be joined to one of the domains of the AD forest in which the target VMs are part of
  • Microsoft .NET Framework 4.0 should be installed
  • Windows PowerShell 2.0 is also needed
  • Full Administrative access to the Microsoft Azure target environment
  • Access to the Microsoft Azure target environment via WMI
  • Full network connectivity to the Microsoft Azure target environment

Installation of the Microsoft Azure Virtual Machine Optimization Assessment tool

To get started, first download the tool (total size 70,2 MB) from here

clip_image002

clip_image004

When downloaded run MAVMOA.exe (Run as administrator) on the computer you want to run the assessment from (setup requires around 110 MB)

clip_image006

When the UAC screen pops up, click Yes

clip_image007

Agree to the License Terms and select a folder to install (I always use the default folder). Click Install

clip_image008

When the installation is completed click Close. I’ve you leave the checkmark near to Launch Microsoft Azure Virtual Machine Optimization Assessment the tool should start.

clip_image009

If the tool doesn’t start up, you can use the following PowerShell command to start it:

clip_image011

Active Directory Assessment

The user running the tool to should have read access to the target domain. When I run the AD Assessment I always use a user with enterprise admin privileges.

Open the Microsoft Azure Virtual Machine Optimization Assessment tool and select Active Directory from the drop-down menu. Optionally you can agree to upload your data to help improve this product. Click Start Assessment

clip_image012

On the next screen, you are reminded to all requirements needed for the assessment. Click Next

clip_image013

In the next part of the assessment you need to answer a set of questions regarding your environment. Click Next to start the questionnaire and answer all the questions

clip_image014

clip_image015

Once you answered all the questions, the tool will proceed to the Collect & Analyze tab where the assessing of your environment will start

clip_image017

clip_image019

When the tool is finished with the assessing, click Save and view report, and choose a location to save the Microsoft Word document (.docx)

clip_image021

clip_image023

Click Close and Yes to close the tool. You can now open the document using Microsoft Word. In my case Word is not installed on my server so I copied the document to my workstation to review it

clip_image025

If you scroll through the document when opened, you will see that each recommendation is given a percentage weighting. For example, when you resolve the problem concerning “Change your password policy to enforce a minimum password age” your Security and Compliance will improve with 5.2 %

clip_image027

clip_image029

clip_image031

SQL Assessment

Running the SQL Assessment is quite similar as running the AD Assessment, the only difference is that you have to supply the SQL Server that you want to assess.

Open the Microsoft Azure Virtual Machine Optimization Assessment tool and select SQL Server from the drop-down menu. Like before you can optionally agree to upload your data to help improve this product. Click Start Assessment

clip_image032

Click Next on the Requirements page

clip_image033

To start the questionnaire, click Next and answer all questions

clip_image034

clip_image035

On the Environment page add the SQL Server you want to get assessed. Click Next

clip_image036

clip_image037

When the tool is finished with the assessing, click Save and view report, and choose a location to save the Microsoft Word document (.docx)

clip_image038

clip_image040

After saving the document to your preferred location, click Close. When you open the document with Word afterwards, you will also see that each recommendation is given a percentage weighting just like with the AD Assessment. For example, when you resolve the problem concerning “Ensure only essential users are added to the SQL Server sysadmin server role” your Security and Compliance will improve with 2.8 %

clip_image042

clip_image044

clip_image046

I hope this helps you to get started with this nice tool. If you have any issues or questions, feel free to contact me through my twitter handle

Wim Matthyssen (@wmatthyssen)

2016: My blog year in an overview

December 30, 2016 at 2:37 pm in Azure, Azure Backup, Azure RemoteApp, Client Hyper-V, Cloud, DC, Hyper-V, IaaS, PowerShell, Private Cloud, Public Cloud, Replica DC, SCAC 2012 R2, SCVMM 2012 R2, System Center 2016, W2K12R2, Windows 10 by Wim Matthyssen

Hi all,

As a blogger completely focused on Microsoft technologies, it was a fun year of writing about all those interesting and ever changing products and services. As we almost end the year 2016 and are preparing for 2017 to start, I wanted to make a list of all the blog posts I wrote throughout the twelve months of 2016. During the year, I’ve published 26 blog posts mostly about Azure, the System Center Suite and Hyper-V. Below you can find them all divided by technology.

 

clip_image002

Azure Compute – IaaS (ASM)

Step-by-step: Move an Azure IaaS VM between different Azure Subscriptions

Clean up Azure PowerShell when using different Azure subscriptions

Replica DCs on Azure – Removing the Azure Endpoints

Replica DCs on Azure – Transferring FSMO roles to the IaaS DCs

Replica DCs on Azure – Manage the Time Configuration settings on the DCs

Replica DCs on Azure – Domain Controller Health Check

Replica DCs on Azure – Promote the Azure IaaS VMs to a domain controller

Replica DCs on Azure – Add the Active Directory Domain Services role

Replica DCs on Azure – Adjustment of some server settings before promoting the DCs

Replica DCs on Azure – Initialize and format the additional data disk

Replica DCs on Microsoft Azure – Create the VMs with Azure PowerShell

Step by step: Change the drive letter of the Temporary Storage on an Azure IaaS v1 VM

 

Azure Networking

How to connect an Azure ARM VNet to an ASM VNet using VNet Peering

Replica DCs on Azure – Switch DNS servers for the VNet

Replica DCs on Azure – Create the Active Directory site for the Azure VNet

 

Azure Backup

Microsoft Azure Backup Server: Install a new version of the Microsoft Azure Recovery Services Agent

Microsoft Azure Backup Server: System State backup fails with WSB Event ID: 546

Microsoft Azure Backup Server: System State backup fails with the message replica is inconsistent

Step by step: How to install Microsoft Azure Backup Server (MABS)

 

Azure RemoteApp

An RDP connection to the Azure RemoteApp custom VM fails with the following error: “No Remote Desktop License Servers available”

 

Windows 10

How to deploy Windows 10 from a USB flash drive

 

System Center

System Center 2016 evaluation VHDs download links

Step by step: How to connect SCAC 2012 R2 to SCVMM 2012 R2 and Microsoft Azure

Step by step: Installing SCAC 2012 R2

 

Hyper-V

A list of tools that can be used to do a V2V from VMware to Hyper-V

Client Hyper-V – Using nested virtualization to run Client Hyper-V on a Windows 10 VM

 

Before I wrap up this blog post, I want to thank you all for reading my blog posts in 2016, and I really hope you will keep doing so in 2017. I wish you all a healthy, successful and outstanding New Year! See you all in 2017!

Wim Matthyssen (@wmatthyssen)

How to connect an Azure ARM VNet to an ASM VNet using VNet Peering

December 14, 2016 at 4:25 pm in ARM, ASM, Azure, Azure virtual network, Cloud, DC, DNS, VNet peering by Wim Matthyssen

Hi all,

In this blog post I will show you how you can connect an Azure Resource Manager (ARM) virtual network (VNet) to a classic or Azure Service Manager (ASM) VNet using VNet Peering.

VNet Peering, which was made generally available (GA) on September 28th, is a mechanism that allows you to connect two VNets in the same region through the Azure backbone network as they were a single network. This means that you don’t need a VNet gateway anymore, like when you setup a VNet-to-VNet VPN connection. It will allow full connectivity between the entire address space of the peered VNets. So, for example when VNet peering is setup, all virtual machines in the peered VNets will be able to communicate with each other. If you’re interested you can read more about VNet Peering via following link: https://docs.microsoft.com/en-us/azure/virtual-network/virtual-network-peering-overview

Before we start setting things up, first some things to keep in mind:

  • VNet Peering requires that both VNets are located the same Azure region
  • The VNets must be in the same Azure Subscription (only for ARM – ASM VNet Peering)
  • The IP address space of both VNets must not overlap
  • Using your peer’s VNet gateway (UseRemoteGateways and AllowGatewayTransit settings) is not supported when peering with an ASM VNet
  • There is a small charge for data transferred between VNets using VNet Peering (inbound and outbound data transfer $ 0,01 per GB)
  • To be clear, you can find below a drawing of my ARM – ASM VNet Peering setup

clip_image002

After all this is said and shown, we can start

1) First of all login to the Azure portal and sign in with your Azure account

2) Select Virtual Networks

clip_image004

3) Select your ARM VNet (in my case AZU-Vnet-ARM)

clip_image006

4) Click Peerings (like you can see there is one connected device AZU-APP-01)

clip_image008

5) Click Add

clip_image010

6) In the Add Peering blade, name your link (in my case LinkToVNetASM). Under Peer details select Classic. Choose the correct Subscription and the ASM Virtual Network you want to peer with. Leave Allow virtual network access Enabled, this will allow communication between the two virtual networks. Then click OK

clip_image011

7) After clicking OK the peering link will be created

clip_image012

8) When done, the two virtual networks are peered and you will see the PEERING STATUS between the two virtual networks is in a Connected state

clip_image014

9) Like you can see, both VMs can ping each other. Don’t forget to allow ping through the Windows Firewall

clip_image016

clip_image018

10) After adding AZU-DC-01 (10.0.1.36) as DNS server to the AZU-Vnet-ARM VNet, I was able to add AZU-APP-01 to the azuvlab.local domain which was created an AZU-DC-01

clip_image020

clip_image022

clip_image024

This concludes this blog post. If you have any questions don’t hesitate to contact me via twitter.

Wim Matthyssen (@wmatthyssen)

How to deploy Windows 10 from a USB flash drive

December 9, 2016 at 1:21 pm in Microsoft, PowerShell, USB, Windows, Windows 10 by Wim Matthyssen

Hi all,

In this blog post, I will show you how you can create your own bootable USB flash drive for Windows 10 installations. And like you will see, it’s pretty easy these days.

Before we start whit the installation a list of some things to keep in mind:

  • An internet connection is needed to download the tool
  • You will need 8 GB of free disk available on the C: drive
  • The minimum capacity of the USB flash drive needs to be at least 4 GB
  • Be aware that all the files on the USB flash drive will be erased
  • Windows 10 Enterprise isn’t available in the media creation tool
  • A Windows 10 product key (for the Windows 10 Edition that will be installed) is needed when you are installing a clean Windows 10
  • To manually download the MediaCreationTool go to the following website: https://www.microsoft.com/en-us/software-download/windows10/

After this short list with things to keep in mind, it’s time start. To do so follow the steps described below:

1) First, make sure your USB flash drive is plugged in

clip_image002

2) Open Windows PowerShell ISE or PowerShell (as administrator) and run the below commands to download the media creation tool to the C:\Temp folder and start it up when downloaded

clip_image004

3) On the License terms page, select Accept to accept the license terms

clip_image006

4) On the What do you want to do? page, select Create installation media for another pc and then select Next

clip_image008

5) Select the proper Windows 10 Edition, Architecture (x86, x64 or both) and Language to install. Click Next

clip_image010

6) Select USB flash drive on the next page and click Next

clip_image012

7) Select the correct USB flash drive and click Next

clip_image014

8) The tool will start Downloading Windows 10

clip_image016

9) After downloaded the necessary files the tool will start Creating Windows 10 media

clip_image018

10) When done click Finish. Your USB flash drive is now ready for use

clip_image020

11) If you select the USB flash drive (E: in my example) you will see all necessary files are in place to start a clean Windows 10 installation

clip_image022

12) Now that you have created the bootable Windows 10 USB flash drive, you can go to the next step: Installing Windows 10 on a pc (desktop or notebook). To do so, plug in the USB flash drive to the pc and boot from USB. In my example I will use a HP notebook. Startup and when the HP logo is shown press the ESC key to go to the Startup Menu (the sentence Press the ESC key for Startup Menu will appear in the left bottom of your screen)

clip_image024

13) Press F9 to open the Boot Device Options menu

clip_image026

14) Select USB Hard Drive 1 – USB DISK 3.0 (in my example this is my USB flash drive)

clip_image028

15) Select the Windows 10 Setup Architecture (64-bit or 32-bit) and press Enter. This will start the Windows 10 installation. Just go to the complete setup procedure and your pc will be up and running with Windows 10 in no time

clip_image030

This completes this blog post. Have fun with it and if you have any questions feel free to contact me.

Wim Matthyssen (@wmatthyssen)

System Center 2016 evaluation VHDs download links

October 3, 2016 at 4:04 pm in Hyper-V, SCDPM, SCOM, SCORCH, SCSM, scvmm, System Center 2016, VHD by Wim Matthyssen

 

Hi all,

Just a short blog post today. Like you probably already know System Center 2016 is officially launched on the 26th of September during Microsoft Ignite.

 

clip_image002

For all you guys running Hyper-V 2012 R2, and I hope that are a lot of you, Microsoft recently also released the System Center Evaluation VHDs (RTM version). The different download links, which you can find below, each consists of files that you extract into a single pre-configured VHD file. There are VHDs for several different System Center components like SCVMM, SCOM and SCDPM, but also for SCSM and SCORCH. When each VHD is downloaded it will enable you to create a VM (Generation 1) which you can use to evaluate and test each different System Center component. Be aware that most of these VMs ran in a Workgroup. It’s best to already have a DC configured and setup in your test environment, so you can join them into your test domain before you start playing around with them.

Hereby the list for are all the System Center 2016 Evaluation VHDs available for download:

Hope this helps you getting familiar with these new releases.

Wim Matthyssen (@wmatthyssen)