I received the Microsoft MVP Award 2020

I received the Microsoft MVP Award 2020

Yesterday I received the email informing me that I received the Microsoft MVP Award 2020. July 1st is that time of the year that as a Microsoft MVP you find out if you are renewed for the new fiscal year. I was. That was cause for a celebration. But I had to wait a bit to shout out my happiness as I was in a Teams meeting on Veeam Backup for Azure.

I received the Microsoft MVP Award 2020

I enjoy being a Microsoft MVP

I am thrilled to be awarded as an MVP again. To this day I remain in the Cloud & Datacenter category which is a very good fit for me. As I do indeed work across both worlds. That’s where I help fill the gap to ensure digital transformations go smooth & you don’t lose out wherever you run your solutions. There are many creative solutions to be designed in hybrid scenarios and at the edge. Places where you can investigate, research, and find opportunities to build those creative solutions.

People who follow me know I don’t just copy/paste “best practices.” I research what works best and come up with ways to leverage technologies. I apply out of the box thinking to deliver excellent value for money efficiently and effectively. Then, I share my experiences and what I learn by writing, blogging, and speaking. That includes my successes and failures, as we learn from both.

What do I do?

I like to work end to end. The full-stack. No silos. There is no hiding behind another team or blocking another team. You could describe me as a multi-pronged T. Various prongs go deeper based on need or interest. But there are many and the T is wide so we can act and work without needing to much help to get something going. For one, this also enables me to give feedback with enough real-world knowledge to be valuable. Secondly, it keeps me honest. I do not just do design, I deploy it and support it. It has to work. I dislike support or consulting with tunnel vision or that design only for maximum profit instead of for the need at hand. My approach leaves money for better solutions and saves money in the long run. What I learn and see I take back to Microsoft in feedback, in discussion and interactions with the program managers. That is valuable for me as well as I learn a lot from them as well. In the end, it leads to better products and experiences for all of the community and customers.

I received the Microsoft MVP Award 2020

I enjoy being a Microsoft MVP for the opportunities it gives me to learn and share with like-minded people from all over the globe. While it takes a village to raise a child, the child needs to get out of the village into the world to evolve and keep learning. Today that is easier then ever before thanks to technology which eliminates many boundaries.

2020 is a bit of a special year

Talking about the globe at the time of writing. In a time of Corona and COVID-19 running amok in the world, it is our technology that makes this still possible while we do not travel en limit ourselves for the better good of all. I am proud to say that our technologies were in place to go in lockdown immediately without having to scramble for solutions. telecommuting is something we did already routinely and technologies could scale up and out, both on-premises and in the cloud, both in the areas where they excel.

That, combined with living in a country where we have universal healthcare and social benefits (taxes for the better good of all) helped ease the blow we all received. We all have shortcomings. But as a nation, businesses, and people we were ready, willing, and able to do what needed to be done.

All this means that this year and next year we do not have an in-person MVP Summit.

I received the Microsoft MVP Award 2020
A reminder of great times in Redmond & Bellevue

That saddens me. The face to face discussions from breakfast till literally in the hotel hallways before we go to sleep are priceless. Those chats with our peers and Microsoft employees are very insightful rewarding and educational. That experience and intensity are hard to recreate in a virtual event. We are all eager to get past lockdown, social distancing, and travel restrictions. We can only achieve this by self-discipline and acting responsibly at our own personal and local level. That and relentless efforts to find a vaccine, which, hopefully, will grant us back some of the privileges we enjoy.

Good intentions for 2020-2021

While I am very happy to receive the Microsoft MVP Award 2020 I want to make sure all recipients feel appreciated and are able to be themselves in our community. I plan to pay extra care into making sure that diversity, inclusiveness, and equity are always on the radar. My extra effort in order to keep the community a welcome and safe place for all.

A small gift

As a special give on the 1st of July, Microsoft made Azure Firewall Manager generally available. I have been working with this in preview the last couple of months. Today I am very pleased I can start using it in production!

Troubleshooting 100% stalled Veeam backup jobs

Introduction

Recently I got to diagnose a really interesting Veeam Backup & Replication symptom. Imagine you have a backup environment that runs smoothly. All week long but then, suddenly, running backup jobs stall. News jobs that start do not make an ounce of progress. It is as the state of every job is frozen in time. Let’s investigate and dive into troubleshooting 100% stalled Veeam backup jobs.

That morning, the backup jobs had not made an ounce of progress since the night before and they never will, you can leave this for days sometimes a job in between does seem to work properly, but most often not so the job queue builds up.

Troubleshooting 100% stalled Veeam backup jobs

When looking at the stalled jobs, nothing in the Veeam GUI indicates an error. Looking at the Windows event logs we see no warning, error, or critical messages. All seems fine. As this Veeam environment uses ReFS on storage spaces we are a bit weary. While the bugs that caused slowdowns have been fixed, we are still alert to potential issues. The difference with the know (fixed) ReFS issues that this is no slowdown, No sir, the Veeam backup jobs have literally frozen in time but everything seems to be functional otherwise.

Another symptom of this issue is that the synthetic full backups complete perfectly well, but they finfish with an error message none the less due to a time out. This has no effect on the synthetic backup result (they are usable) but it is disconcerting to see an issue with this.

On top of that, data copies into the ReFS volumes work just fine and at an excellent speed. Via performance monitor, we can see that the rotation of full regions from mirror to parity is also working well once the mirror tier has reached a specified capacity level.

Time to dive into the Veeam logs I would say.

Veeam backup job log

So the next stop is the Veeam logs themselves. While those can seem a little intimidating, they are very useful to scroll through. And sure enough, we find the following in one of the stalled jobs its backup log.

This goes on all through the night …

For hours on end … it goes on that way.

VIRTUAL MACHINE TASK LOGS 1

When we look at the task log of ar virtual machine that is still at 0% we see the same reflected there. Note that nothing happens between 22:465 and 05:30, that’s when I disabled and enabled the vNIC of the preferred networks in the VBR virtual machine and it all sprung back to life.

notice the total stand still form 22:46 to 05:30 …

So it is clear we have a network issue of some sort. We checked the repository servers and the Hyper-V cluster but there everything is just fine. So where is it?

Virtual Machine task logs 2

We dive into the task log of one of the virtual machines who’s backing up and that is hanging at 88%. There we see one after the other reconnect to the repository IP (over the preferred network as defined in VB). That also happens all night long until we reset the VBR virtual machine’s preferred network vNICs. In the log snippet below notice the following:

Error    A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond (System.Net.Sockets.SocketException)

From the logs we deduct that the network error appears to be on the VBR virtual machine itself. This is confirmed by the fact that bouncing the vNICs of the preferred network (10.10.110.x is the preferred network subnet) on the VBR virtual machine kicks the jobs back into action. So what is the issue? So we start checking the network configurations and settings. The switch ports, pNICs, vNIC, vSwitches etc. to find out what’s going on, As it seems to work for days or a week before the issue shows up we suspect a jumbo frame issue so we start there.

The solution

While checking the configuration we to make sure jumbo frames are enabled on the vNIC and the pNICs of the vSwitch’s NIC team. That’s when we notice the jumbo frames are missing from those pNICs. So we set those again.

From the VBR virtual machine we run some ping tests. The default works fine.

Troubleshooting 100% stalled Veeam backup jobs

When we test with jumbo frames however we notice something. The ping tests do not complain about jumbo frames being too large and that with the “do not fragment” option set the “Packet needs to be fragmented but DF set.” Note it just says “request timed out”. This indicates an issue right here, jumbo frames are set but they do not work.

Troubleshooting 100% stalled Veeam backup jobs
So the requests time out, it does not complain about the jumbo frames … so we have another issue here than just the jumbo frame settings

As the requests time out and the ping test does not complain about the jumbo frames we have another issue here than just the jumbo frame settings. It smells of a firmware and/or driver issue. So we dive a bit further. That’s when I notice the driver for the relevant pNICs (Broadcom) is the inbox Windows driver. That’s no good. The inbox drivers only exists to be able to go out and fetch the vendor’s driver and firmware when need, as a courtesy so to speak. We copy those to the hosts that require an update. In this case, the nodes where the VBR virtual machine can run. The firmware update requires a reboot. When the host is up and the VBR virtual machine is running I test again.

Bingo, now a ping test succeeds.

Troubleshooting 100% stalled Veeam backup jobs
Success

What happened?

So did we really forget to update the drivers? Did we walk out of the offices to go in lockdown for the Corona crisis and forget about it? In the end, it turned out they did run the updates for the physical hosts. But for some reason, the Broadcom firmware and drivers did not get updated properly. However, that failed update seems to have also removed the Jumbo frame settings from the pNICs that are used for the virtual switch. After fixed both of these we have not seen the issue return.

Remarks

The preferred networks do not absolutely have to be present on the VBR server itself. Define, yes, present, no. But it speeds up backup job initialization a lot when they are there present on the VBR server and Veeam also indicates to do so in their documentation.

Why jumbo frames? Ah well the networks we use for the preferred networks are end to end jumbo frame enabled. So we maintain this in to the VBR server. We might get away by not setting jumbo frames on the VBR server but we want to be consistent.

Conclusion

It pays to make sure you have all settings correctly configured and are running the latest and greatest known good firmware. But that should have been the case here. And it all worked so well for quite a while before the backup jobs stall. The issue can lie in the details and sometimes things are not what you assume they are. Always verify and verify it again.

I hope this helps someone out there if they are ever troubleshooting 100% stalled Veeam backup jobs If you need help, reach out in the comments. There are a lot of very experienced and respected people around in my network that can help. Maybe even I can lend a hand and learn something along the way.

Register for VeeamON 2020 Virtual

VeeamON 2020 is on in a few days!

I advise you to Register for VeeamON 2020 Virtual asap. Corona and Covid-19 have pushed VeeamON 2020 to a virtual format but it will rock anyway, Veeam cannot be stopped by a mere global pandemic. While we are all sad we cannot meet up in real life it also has its advantages. Everyone can join in free of charge from the comfort of your (home) office. That’ right. Free, bar the time you invest. A lot of people saw the value in that investment because last week a tweet went out over 22K people had registered already!

The event takes place on the 17th and 18th of June 2020, so you can still register and attend. Simply click here or on the image below.

Register for VeeamON 2020 Virtual
Register for VeeamON 2020 Virtual.

You will find plenty of information on the web site but trust me, I have attended VeeamON before and it is worthwhile. They have their management, technical architects and experts available to you. The speakers are masters of their craft and you get the opportunity to interact with them. For that purpose they will host interactive chat rooms, live expert sessions etc.

So join, learn and share on how to manage and protect your data on-premises as well as in hybrid and cloud environments in the years to come. Veeam evolves with the times and plans to help you move along. You can learn how by attending VeeamON 2020.

Use PowerShell to set the time zone

Introduction

Time in a network and Windows environment is mission-critical. Setting the correct time zone is essential. Normally this is a quick change under “Settings” in Windows Server 2019. But that is not a walk in the park, so we’ll show to use PowerShell to set the time zone. I’m blogging this as I have given this tip so many times I should really write it down in a post. Even worse, I have seen people make unnecessary changes to their security policies in attempts to make the GUI work.

Setting the Time Zone In Windows Server 2019

Normally to change the time zone in Windows Server 2019 Desktop Experience you do this via Data & time under settings.

Use PowerShell to set the time zone
Change the time zone

But while that seems to work, it doesn’t persist the settings. Oh, well. we try via the “classic” GUI way and try it there. Unfortunately, that doesn’t work but throws an error:

Unable to continue. You do not have permission to perform this task. Please contact your computer administrator for help.

Use PowerShell to set the time zone

Wait a minute I have admin rights, so I should be allowed to do this.

That the local user rights seem OK.

Use PowerShell to set the time zone

Now the silly thing is that this has been broken in the Windows Server 2019 Desktop Experience from day one and it still has not been fixed. Highly annoying but easy enough to workaround. Well, what’s left? The CLI? No, we use PowerShell to set the time zone

Via Get-TimeZone –ListAvailable you can see all the time zone you can set. To find yours easily just filter on the display name. The output will tell you the ID you need to pass into the Set-TimeZone command. I use ‘Brussels’ in the filter as I know that city is in the time zone I need.

Get-TimeZone –ListAvailable | Where-Object {$_.displayname -match 'Brussels'}
So the ID I need is “Romance Standard Time” for GMT+1 in Brussels.
Set-TimeZone -Id 'Romance Standard Time'

And that is it, you will see the correct time zone under Settings, Date & Time immediately.

PowerShell does the job

All this without having to adjust any permissions, which makes sense as they are correct. It’s Windows Server 2019 that has a GUI bug. So now I cam finally send everyone to this blog post.