I recently had a request come through to see if there was a way to quickly find any/all virtual machines with Independent Disks attached. In this particular scenario, I’ll be looking for these types of VMs within a specific datacenter object. However, this script could easily be changed to scan an entire vCenter object, if needed. This script will look for VMs with both independent persistent as well as independent non-persistent disks.
Like some of my other scripts, this one also utilizes the try/catch when first connecting to a vCenter Server. For instance, if you attempt to connect to a vCenter and enter the wrong credentials or wrong server name/IP, it will stop the script and state that it “Could not connect to the vCenter Server <name>. In addition, I also have some logic built in to track the progress of the scan, as well as the option to export the results to CSV if preferred.
Continue reading “PowerCLI: Find VMs with Any Independent Disks”
A few months ago, I wrote two blog posts about how to find all UEFI- or BIOS-enabled virtual machines at the data center level within a vCenter Server. But what if you just want to quickly look up the boot firmware setting of a specific VM or even just a few of them?
I wrote this script as a way to quickly look up a small number of VMs to see if they might be good candidates for enabling Secure Boot or not. If you recall from those two posts, in order to enable Secure Boot, a VM needs to have virtual hardware version 13 or higher (meaning vSphere 6.5 or higher), and the VM boot firmware needs to be set to EFI.
Continue reading “PowerCLI: Quickly Look Up VM’s Boot Firmware Setting”
I’ve been wanting to write about my first-ever VMworld experience even before the plane departed from McCarran airport, but I just couldn’t seem to find the time to actually sit down and “put my thoughts to paper” as they say. I can’t believe it’s already been a month since the conference events first kicked off in Las Vegas! The time sure does fly by! But, I at least wanted to share my experience with others who maybe haven’t been to a VMworld conference yet, or who might be going for the first time next year. (Hey, you never know!)
Continue reading “My First VMworld Experience”
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:
- VMware vSphere 6.5 or higher
- Virtual hardware version 13 or higher
- VMs need to be configured with EFI boot firmware
Continue reading “PowerCLI: Find BIOS-Enabled VMs”
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”
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”
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”
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”
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”
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”