Creators Update, Event Viewer, and Veeam issues with MiniNT

Recently, I noticed an issue on a Windows 10 machine where I was unable to open Event logs, services such as Veeam Agent for Windows not starting or displaying properly, Not being able to use the Windows Upgrade Assistant to update to the Creators Update, and being unable to use PowerShell Remoting.

Back when Veeam updated to version 9.5 I had added a MiniNT registry key to enable myself to format Windows 10 volumes as ReFS for testing in my home lab. I discovered these issues were caused by that specific registry key.

Here are some of the specific issues I was running into:

1. Unable to update to the Windows 10 Creators update using the Upgrade Assistant:

I would see the following message about 20% into installing the update from the Upgrade Assistant:

Something went wrong. 0x080004005
2. When trying to open Event Viewer I would see the following error message displayed in the snap-in:
Event Viewer cannot open the event log or custom view. Verify that Event Log service is running or query is too long. The request is not supported (50)
3. Veeam Agent for Windows service would not start properly. The console showed the following message:
Veeam Agent for Windows Service has suddenly stopped

I had initially added the registry key in order to enable ReFS volumes in Windows 10 in order to test the free Veeam Agents integration with the newest version of the file system. But it had unfortunately forced several Windows components to run as if in a Windows Pre-installation Environment causing them not to function properly.

I resolved the issue by removing the following key from the registry:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\MiniNT

AllowRefsFormatOverNonmirrorVolume     DWORD

After deleting the registry key all of these issues were resolved. I was able to complete the update to the Creators Update (1703) using the Windows Upgrade Assistant. Fortunately, after the update the registry hack was no longer needed and I am able to format internal and external drives as ReFS freely.

Veeam Backup and Replication Free – Automated Backup Powershell Script

I wrote this simple Powershell script to backup the VMs in my homelab. It takes advantage of Veeam’s Powershell snapin to automatically detect and backup all of the VM’s on one or more hosts. I’m using it to backup my homelab VM’s once a week on a schedule.

In the configuration at the top you can set the hosts you want to backup, what type of host(VMWare or Hyper-V), VM’s to exclude, backup storage location, compression, retention, etc. It was written to work with the free version of Veeam Backup and Replication so it is using VeeamZIP jobs to do individual full backups of the VMs.

##### == User Defined Variables == #####
##DNS/IP and credentials of Veeam Server
 $veeamServer = "localhost"
 $veeamAdmin = "Administrator"
 $veeamAdminPass = "password"
##Folder on the Veeam Server where backups stored
 $backupFolder = "Y:\backup"
##Optional DNS or IP of one or more host added to Veeam separated by commas("1","2","3"). Leave "" for ALL HOSTS.
 $hostName = ""
##Optional VM Host Type. Leave "" for all. Accepted Parameters: ESXI,ESX,VC(VCenter);HvServer(Hyper-V Host),HvCluster, Scvmm
 $hostType = ""
##Optional VM Exclusions, Add VMs by name to exclude separated by commas("1","2"). Leave Blank for no exlusions.
 $excludedVMs = ""
##Optional VMWare Quiescence
 $enableQuiescence = $True
##Optional Compression. Accepted Parameters: 0 = None; 4 = Dedupe-friendly; 5 = Optimal; 6 = High; 9 = Extreme
 $compressionLevel = "5"
##Optional Retention Settings. Accepted Parameters: Never , Tonight, TomorrowNight, In3days, In1Week, In2Weeks, In1Month, In3Months, In6Months, In1Year
 $retention = "Never"

##### == Run == #####
Add-PSSnapin VeeamPSSnapin -ErrorAction SilentlyContinue
Connect-VBRServer -Server $veeamServer`
  -User $veeamAdmin`
  -Password $veeamAdminPass
$allVMHosts = Get-VBRServer
ForEach ($VMHost in $allVMHosts) {
  If ($hostType -eq "" -or $VMHost.Type -eq $hostType) {
    If ($hostName -eq "" -or $VMHost.Name -eq $hostName) {    
       $existingVms = Find-VBRViEntity -Server $VMHost`
          -VMsAndTemplates
            $existingVMs += Find-VBRHvEntity -Server $VMHost`
              -HostsAndVMs
             :vmlist ForEach ($VM in $existingVMs) {
                ForEach ($exVM in $excludedVMs) {
                    If ($VM.Name -eq $exVM) {
                        Write-Host $VM.Name -nonewline
                        Write-Host " Excluded"
                        break vmlist
                    }
                }        
                If ($VM.Type -eq "Vm"){
                    Write-Host $VM.Name -nonewline
                    Write-Host " Processing"
                    start-vbrzip -folder $backupFolder`
                      -Entity $VM`
                      -DisableQuiesce:(!$enableQuiescence)`
                      -Compression $CompressionLevel`
                      -AutoDelete $retention;
                }
            }
        }
    }
}
Disconnect-VBRServer

You can edit the variables for your setup and create a scheduled task on the Veeam server or any windows machine with the Veeam Console installed. Set it to run the powershell script on a schedule with the retention options set and you’ll have full backups created regularly that will delete themselves once the retention is hit.

Downgrading Server 2012 R2 Datacenter to Standard

In a rush to setup a new Windows Server appliance I may have accidentally picked the wrong version once or twice. This caused some headaches when I went to install the license, having only standard available. Officially, there is no way of downgrading the edition so I was stuck and would be required to reinstall from scratch. Instead, after messing with the registry I’ve been able to successfully allow the Windows installer to perform downgrading of the installed server OS version.

This is not an official method for downgrading a server OS so only attempt this at your own risk. I have not run into any issues after downgrading but there could be issues down the line as this is not an intended solution.

In order to downgrade Server 2012 R2 Datacenter we will have to ‘trick’ the windows installer disk to perform an ‘upgrade’ to Server 2012 R2 Standard. To do this requires some changes be made to the registry so that the installer were using to upgrade thinks that it is upgrading Server 2012 Standard to Server 2012 R2 Standard.

Open regedit and navigate to the following registry key:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion

We’re going to be changing:

EditionID
     Change value to: ServerStandard
ProductName
     Change value to: Windows Server 2012 Standard

Now mount the installation media for Windows Server 2012 R2 and run the installer. Make sure to NOT check for available updates, select Windows Server 2012 R2 Standard and then choose to perform an Upgrade.

Once the ‘downgrading’ is complete you should now be running Windows Server 2012 R2 Standard. Remember to check that the installation is still licensed and it is still active. I had to reactivate my install from the command line using the command line for it to finally apply:

slmgr.vbs /ipk {product key, including dashes}

VMCE Study Materials

I passed the VMCE [Veeam version 9] earlier this month [December 2016]. This VMCE exam covered a large range of topics spanning the entire Veeam product suite. I was able to pass on the first try but I’ve heard from others who needed a couple of attempts to get through it. I’m not allowed to go over specifics of whats covered in the exam but I figured I would compile all the resources I found helpful when I was preparing for it. The exam can get pretty rough with the questions so be sure to take your time and prepare with as many of these resources as possible.

VMCE-Logo

VMCE Study Resources

VMCE Classroom

Before you take the VMCE Exam you will be required to take a VMCE training classroom. Make sure to take notes during the classroom. As far as my experience goes, the instructor will be sure to go over important information that will typically help during the exam.

VMCE Textbook

Notes, Notes, Flash Cards, Notes.

When you sign up for the class you’re also provided a text-book that goes over pretty much all aspects of Veeam. Basically everything you’ll need to know is in this textbook. I read through it a few times to make sure that I could answer any questions that

Veeam University

One of the first things suggested that I complete when we started using Veeam were the Veeam University courses. These seem to be mainly geared towards sales professionals and don’t go over as much of the technical aspects that you’ll need to know to pass the exam, however, they are still a great starting point. Specifically the VMTSP lessons, as they go more in-depth into the technical aspects and terminology of Veeam as a backup solution. These courses will go over a lot of the basics of the backup processes and the different types of backups available with Veeam.

Practice Exams

If you search for ‘VMCE practice exams’ you’ll get a load of hits. Most of these practice exams ask the same general questions and cover most of the basics, but its best to try at least a few of them before starting to feel confident about the exam. Specifically, here were the ones I found most helpful:

When I felt confident that I was retaining the information from studying I would take one or more of these practice exams to get an idea of what areas I could improve and needed to focus on.

Working with the Product

It’s likely that if your taking the VMCE exam you have at least some experience with Veeam’s suite of products. This experience, in my opinion, is crucial to being able to pass this exam. There were several times where I was able to answer questions that asked for specifics because I was able to recall something I saw while working with the product.

Make sure that you are prepared to answer questions about the entire suite of products. Veeam offers free trials of their software so be sure to utilize that, especially if you’ve only ever worked with one product.

During the VMCE training course you should get an opportunity to work on the labs detailed in the VMCE textbook. Definitely take the opportunity to work with the software here, even if you work with it on a regular basis. For me personally, some of the later labs went over aspects of Veeam that I hadn’t used or had only experienced setting up once or twice.

Additional Resources

Veeam has some additional documentation that it would be beneficial to familiarize yourself with. Like I mentioned earlier, the majority of what you need to succeed is inside the VMCE text-book but these are some other area’s that I frequent when I need to learn something about Veeam:

After the VMCE Exam

Now that I’ve passed I can tell that the knowledge I’ve gained just from studying the material is benefiting everyday operations. I’m able to give our customers information about the different aspects of Veeam software with confidence that I know what I am talking about.

Veeam also updates the VMCE textbook frequently shortly after new releases, that have been helpful as refreshers. And helpful to keep up with the growing toolset of each release.

 

What Do I Use My HTPC Home Server For?

As a recent college student with a hefty amount of student loans, I’m not exactly in a position to buy the biggest and best, 12-core, hyperthreaded server with 256GB Memory and 40TB in RAID 10 for my home server build. But there are still several uses for a home server even without it being the biggest, baddest build on the block.

For my home server build, I purchased a mini-ITX desktop board with 8GB of ram, a 100GB SSD, 2TB storage, and an Intel Pentium G3258. It all sits inside a Cooler Master Elite 130 case, which is just small enough to fit in under my entertainment system. This was all bought on an impulse visit to Microcenter and ended up putting me back a little under $300. Of course, I had been looking into a home server build for some time so I wasn’t going in blind, plus I already had some of the components, so this would have cost me a bit more if all bought at the same time.

A really useful tool to help decide between different parts and hardware and get an idea for build prices is PC Part Picker. It lets you select from a HUGE select of available parts and tells you when those parts aren’t compatible. It will also give you current and past prices for the parts to help you when you purchase them. Then once you’ve selected all the parts it creates a link you can use to share the part list.

With PCPartPicker I saw that my CPU wasn’t capable of virtualization but that didn’t really bother me since I was planning to run everything on one OS (Windows Server 2012 R2) anyways.

Here’s what I use my home server for:

  • HTPC frontend
  • File sharing/syncing
  • Print Server
  • Emby
  • Hosting website –Edit: I decided to host my wordpress on another system due to some security concerns, I may make a post about this at some point
  • Ubooquity’s comic server
  • Steam streaming
  • Backup storage
  • More…

Backups

The biggest reason behind my home server build is a repository for my devices to point to in order to store backups. It has 2TB of storage allocated to backup storage and I have Windows Server deduplication and compression enabled to conserve as much space as possible space.  With several devices backing up to the server everynight this makes quite a large difference, according to Windows I am storing 1.3 TB of data but its only using 700GB to store it all. I am using Veeam’s Endpoint Backup Free to backup all of the Windows devices in my home. Veeam uses forever forward incremental backups so I only ever backup incremental changes to the devices, which saves on time and storage utilization.

Media

I have the server set to automatically load into a standard user I named “mediacenter” and then load up Kodi automatically. Basically, Kodi is a media center front end. It scans through all of the media directories I point it to it and tries to scrape info for any movies or music from online resources. It then organizes them and displays them in a TV screen friendly format. I have it plugged directly into my TV so I can watch all of my content directly.And since Kodi Loads up on a secondary user, I can still RDP into the administrator account for, well, administration. I’ll be making a post about my Kodi setup soon so I’ll probably link to that here.

All in all, it works great for streaming youtube videos and any television channels that have video streaming. I can play my local videos and even DVDs(haven’t gotten Blu-Ray figured out yet.) It even works for Steam in-home streaming for when I feel like playing games from the couch.

Etc…

My router has a few ports forwarded, and using a dynamic DNS client I am able to connect to various services on this and other machines using a purchased domain name. This is used for things like this webpage as well as to stream media, share files, and read comics that are all stored on my home server.

I used to also use the server for a VPN connection so I could connect when I wasn’t home, but I recently purchased a new router with VPN capabilities so I offloaded those responsibilities.

While this build was initially a home theater PC build I keep finding more and more uses for it as a home server, and find it’s a great way to expose my self to different new concepts so if I continue to add roles to it there may be an upgrade or a new home lab build planned in the near future.