PowerCLI: Find BIOS-Enabled VMs

A script to detect BIOS-enabled virtual machines in VMware vCenter.

Advertisements

This script is an idea that spun off of my previous post, PowerCLI: Find UEFI-Enabled VMs. If you’re preparing to enable Secure Boot in a VMware environment, it may be helpful to identify the VMs that cannot be upgraded. As you might recall, enabling secure boot requires the following:

PowerCLI: Find UEFI-Enabled VMs

A script to detect UEFI-enabled virtual machines in VMware vCenter.

With all the news regarding the Spectre and Meltdown CPU vulnerabilities over the past several months, there’s been a greater focus to get VMware virtual machines to virtual hardware version 9 or higher, as noted by Andrea Mauro’s post regarding these vulnerabilities. In addition to that, several companies and organizations may be looking to enable Secure Boot, a feature first introduced with vSphere 6.5. However, in order to enable secure boot, the virtual machine needs to be configured with both EFI boot firmware AND be on virtual hardware version 13 or higher. Continue reading “PowerCLI: Find UEFI-Enabled VMs”

Git Integration with VS Code: Part 5 – Syncing with GitHub

For the fifth and final portion of my Git Integration with VS Code blog series, this post focuses on Synchronizing Content with GitHub. Previously in Part 4, we configured Visual Studio Code to establish a connection and download content from GitHub. In this post, I wanted to focus on staging, committing, and pushing content back up to GitHub. Continue reading “Git Integration with VS Code: Part 5 – Syncing with GitHub”

Git Integration with VS Code: Part 4 – Configuring Visual Studio Code

Now that PowerShell has been upgraded, and we installed both Git and VS Code, let’s go ahead and configure our environment for synchronization with GitHub. For me, this part was really the meat and potatoes of getting VS Code to integrate with Git and GitHub.

Installing the PowerShell Module

Now that VS Code is installed, let’s install the PowerShell Module so that it can properly understand PowerShell scripts and *.ps1 files. Continue reading “Git Integration with VS Code: Part 4 – Configuring Visual Studio Code”

Git Integration with VS Code: Part 3 – Installing Visual Studio Code

This blog post picks up where Part 2 – Installing PowerCLI and Git left off. Now that we have some momentum going with this Git Integration with VS Code blog series, let’s keep it going with Part 3 – Installing Visual Studio Code! Continue reading “Git Integration with VS Code: Part 3 – Installing Visual Studio Code”

Git Integration with VS Code: Part 2 – Installing PowerCLI and Git

In case you missed it, this blog post picks up where Part 1 – Upgrading PowerShell left off. In continuing on with the Git Integration with VS Code blog series, I now present Part 2 – Installing PowerCLI and Git!

NOTE: This process assumes a Windows-based installation, and for the Git install, most of the options were left to defaults unless otherwise noted. Continue reading “Git Integration with VS Code: Part 2 – Installing PowerCLI and Git”

Git Integration with VS Code: Part 1 – Upgrading PowerShell

So, I’ve been wanting to do this blog series for quite some time, and I’ve been working to put all of the various bits together. When I first started writing scripts for PowerCLI, I would simply write them using either the native Windows PowerShell ISE or some other text editor like Notepad++. It was fine for a while, but I soon began running into issues with version control. Before I knew it, I quickly ended up with a multitude of files in a folder. Things like script-draft.ps1, script-edited.ps1, script-edit2.ps1, script-working.ps1, script-final.ps1, script-FINAL-20180311.ps1, etc. It quickly got to the point where I didn’t know which files had the latest changes to them, or which ones had the newest feature I  implemented (or was trying to implement). Does any of this sound familiar?

At a recent Western PA VMUG meeting, I was introduced to this new product (to me, at least) called Visual Studio Code. Sure, it was another place to work on developing and even running PowerShell and PowerCLI scripts, but I had no idea how about the concept of version control or Git integration that lied within. All of that stuff was completely foreign to me, but sounded interesting. And, with the help of the #vCommunity and some of my own research, I finally got to a point where I understood how I could integrate my VS Code editor with my online GitHub account, and keep them in sync across multiple devices.

Continue reading “Git Integration with VS Code: Part 1 – Upgrading PowerShell”

Achievement Unlocked! VMware vExpert 2018

Hello again, everyone! Last Friday, I hit a rather significant milestone in my career as an IT professional, as I made the cut for the VMware vExpert advocacy program for 2018! As exciting as it was to receive this news, I actually didn’t find out until about two hours after the announcements were made. Why the long delay? Well, here’s what happened…

vExpert-2018

The Announcement

I actually got a phone call from to go check my email, as the vExpert announcement emails were starting to go out. I immediately checked my corporate email, but didn’t see anything. So, I began checking my personal email accounts, and I didn’t see anything there either. I figured maybe there was a delay of some sort and I’d check back in 15-30 minutes to be safe. Well, I checked again, but I still didn’t see any announcement email in any of my accounts. Now, I was beginning to think that I honestly didn’t make it! Continue reading “Achievement Unlocked! VMware vExpert 2018”

Finding NICs That Aren’t VMXNET3

Earlier this week, someone on our team received a request to change a VMware virtual machine’s NIC from e1000 to VMXNET3. While the change was a bit manual in nature due to the Guest OS configuration changes, it got us thinking… How many other VM’s might still have e1000 NIC adapters? So, I started working on a script to find out. Continue reading “Finding NICs That Aren’t VMXNET3”

Quick Tip: ‘Bad Idea’ Trick in Google Chrome

Hello again, everyone! It seems that ever since I did the five blog posts in October for the #blogtober challenge, I practically ran out of content ideas for the month of November! However, I did think of something earlier today that I could share with you all. I wanted to take a minute to share one of my favorite tricks in the Google Chrome web browser. Now, you might be wondering, why the words “bad idea” and “Google Chrome” are in the same sentence. Well, let me explain…

When I built my VMware home lab, I just left the default, self-signed certificates that come with ESXi hosts and vCenter alone. Unfortunately, this means I usually see the certificates warning pages quite often. In Google Chrome, however, there’s a pretty neat trick to bypass this certificate page without having to use your mouse. Rather than click Advanced and then Proceed to (webpage), you can use a keyboard shortcut (actually, it’s more like a short phrase)!

When the certificate warning page is displayed, simply type the words bad idea on your keyboard, and it will bypass warning page! No mouse clicks required! Now, I’m a bit of a keyboard shortcut guy myself, so if there’s a way I can save a few mouse clicks, I usually just do that.

To show you an example of what I’m talking about, I put together a quick video to demonstrate how this works. See below:

Bad Idea Trick in Google Chrome from Doug DeFrank on Vimeo.

As always, thank you for stopping by!