How I studied for the VMware VCP-NV 2023 Network Virtualization NSX-T Exam

I recently took the VCP-NV 2023 exam, also referred to as 2V0-41.20. The platform has been completely rebuilt since I took the VCP6-NV exam in 2018. I want to share some of the resources I used and hopefully help someone else to take and pass the exam.

Pluralsight

There is a Pluralsight course called: VCP-NV 2022: VMware Certified Professional – Network Virtualization (2V0-41.20). This course goes through many concepts and then has labs you can follow along with. Watching the approximately eight hours of content was very helpful for me because although I understood many of the networking concepts, I needed to know how things were done differently in NSX-T.

Hands On Labs

If you do not have a lab or maybe you don’t have the storage and compute resources necessary in your home lab to run a full NSX implementation, I would highly suggest using VMware Hands On Labs. It’s free and it is a great way to learn.

Using Your Home lab

I spent quite a bit of time messing with NSX in my home lab. This is one of the best ways for me to learn. I even found a way to install NSX from vCenter that was not mentioned in the videos on Pluralsight. The things I learned were a little bit less about helping me with the exam and more about understanding how things would work in a production environment.

Practice Exams

Unfortunately, I was unable to find any practice exams. What I had to do was make notes around everything listed in the exam guide. Also took a look at some resources, like this one from vBrownBag on YouTube to prepare me for the exam. The one I linked is for the 2.4 version of NSX-T, but I found a lot of the concepts to be the same.

Conclusion

These are the tools that I found invaluable in helping me learn the material needed to pass this exam. I hope that they can be of service to you as well.

Common Issues when migrating VMs from VMware vSphere On-Prem to Azure

I have been running a VMware home lab with an old Dell PowerEdge R720 with ESXi 7.0.2 installed. I have been running Azure for backups and Key Vault to protect secrets, but now I want to migrate one of my vSphere on-prem VMs. Through this process, I ran into a few issues and “gotchas” that may affect other users. Below is my list of potential issues you may face and how to resolve them.

    A Note About Whether or Not to Use the Migration Appliance

    I started out choosing to use the migration appliance. I downloaded the OVA and installed it in my lab environment. This initially turned out to be a huge hog of resources without any real benefit for my small lab environment. For that reason, when my project would not allow me to add the migration tool and I had to create a new project, I decided to go with the PowerShell script install on an existing server. If you decide to do the same, remember that you must use a Windows Server OS.

    Issue 1: Azure Migration Project Tool Will Not Add to Your Dashboard

    This was a random issue. Your Azure Migrate project has access to the free assessment tool and the free migration tool. A functioning project should look like the image below.

    A functioning project with the migration tool added

    But the first interaction of my project would not allow me to add that tool. I searched the message boards and could not find a solution to my problem. So, I did the next best thing and started a new project.

    Issue 2: The x86 version of VC++ Redist 2019 may cause the gateway service to fail

    This issue is specific to using the PowerShell version instead of the virtual appliance. This was a problem for me because I had both the x86 and x64 versions of VC++ Redist 2019 installed on my Server VM as shown below.

    I searched for the problem on the internet and found this post in Microsoft’s forum. The advice given was to uninstall both versions, but in my case, that just caused another issue. The solution that worked best for me was to only uninstall the x86 version. Once done, the installation was completed successfully.

    Issue 3: Insufficient Cores Available in the Subscription (During the migration prechecks)

    I worked my way through all the other issues and then ran into this one.

    I had enough cores available in the normal compute SKUs, so this one confused me a bit. The issue, in this case, is that I did an assessment, and used the assessment settings to determine the compute SKU I was going to use but did not properly modify the settings in my assessment. Once I removed reserved instances from my assessment and recalculated the assessment, I got a normal compute SKU and was able to complete my migration successfully.

    Conclusion

    While the Azure Migrate tool may not be as easy to use as some of the paid tools, it can be very useful if you are cost-constrained.

    How to Resolve Horizon View vCenter Connection Errors

    I was recently working with a client that needed me to migrate Horizon View VMs to new storage. I thought it would be as easy as changing the storage settings for the pool and performing a rebalance across the cluster. Unfortunately, no rebalance operation was successful and I saw the following errors:

    Provisioning error occurred for Machine XXX: Refit operation rebalance failed

    vCenter at address <vCenter Address> has been temporarily disabled (this error would typically followed by another notification that the same vCenter had been enabled)

    I was able to resolve the issue by following VMware KB 1030996. I the case of this customer there was only one working production pool. To test that there was an issue with the pool in use, I created a new temporary pool. I then tried recompose actions and looked for errors in the event log. There were none.

    Creating a new temporary pool proved critical to resolving this issue. The crux of the problem as laid out in the KB is that there are two vCenter entries in the composer database. In my case the IP address and the FQDN (The FQDN being the correct entry). The correct Deployment Group ID was displayed in the View Composer Database entry for the new temporary pool I created. I was able to take that ID and replace it in the entries for the current production pool. After that was done, I was able to easily rebalance the production pool.