Tag Archives: esxi

Build Custom ESXi 5.5 ISO using PowerCLI


Here at work we are about to embark on a complete redesign of our virtual infrastructure from the ground up. As I’ve mentioned before with our IOPs issues with View, we went from PoC to Production without scaling all resources evenly. So starting from scratch means redoing everything, all the way down to standardizing ESXi ISO images. I have been attending vBrownBag’s (Professional VMware#AutomateAllThings  video session about how automation can help with everyday tasks to overhauling your environment.

Why not automate the creation of ESXi images for my various clusters? Great idea since each cluster has different NIC’s, Drivers, Graphics Cards, etc. so let’s throw all of my VIB’s into my image as opposed to doing it manually like I did during my vSGA evaluation.

To start you will need a few things to get started:

  • Vanilla ZIP instance of ESXi 5.5
  • All VIB’s that you want to load into your image
  • PowerCLI 5.5
  • MS PowerShell v2 (Running Windows 7 or 8 it will be installed)
  • Free Space on your Computer (kinda obvious but you never know!)

Now that we have everything let’s assume you have already installed PowerShell and PowerCLI on your workstation and are ready to start, if you haven’t here are some helpful links to aid you in installing those packages. Install PowerShell. Install PowerCLI. You probably received a prompt during the installation of PowerCLI talking about execution policy issues may arise, fear not we will take care of that right now. Navigate to your Start Menu or Desktop and locate the PowerShell icon, right click and select “Run as Administrator”. When PowerShell opens, run the following command:

Set-ExecutionPolicy RemoteSigned

Your screen should look something similar to this:

Screen Shot 2014-03-26 at 3.42.03 PM

You can close PowerShell since the remainder of the work will be done in PowerCLI, run PowerCLI (always run CLI as administrator) and you should see this:

Screen Shot 2014-03-26 at 3.43.29 PM

First let’s create a small folder structure to organize our custom ISO’s, me personally I am going to be building 3 ISO’s for three separate cluster configurations. I also wrote my scripts in Notebook++ so I can look at the individual lines for each function.

Screen Shot 2014-03-26 at 3.46.30 PM

Here is the framework for the script that I will run:

Get-PSSnapin -Name VMware.ImageBuilder

Add-EsxSoftwareDepot C:\ESXi_Depot\VMware-ESXi-5.5.0-1331820-depot.zip

Add-EsxSoftwareDepot C:\ESXi_Depot\Server_Cluster\igb-

Add-EsxSoftwareDepot C:\ESXi_Depot\Server_Cluster\ixgbe-3.18.7-offline_bundle-1327252.zip

Add-EsxSoftwareDepot C:\ESXi_Depot\Server_Cluster\NVIDIA-VMware-x86_64-319.65-1OEM.550.0.0.1331820-bundle.zip

Get-EsxImageProfile | Format-Table -AutoSize

New-EsxImageProfile -CloneProfile ESXi-5.5.0-1331820-standard -Name ESXi-5.5.0.ServerCluster.Customised -AcceptanceLevel PartnerSupported

Export-EsxImageProfile -ImageProfile ESXi-5.5.0.ServerCluster.Customised -ExportToIso -FilePath C:\ESXi_Depot\BOXX_Cluster\ESXi-5.5.0.ServerCluster.Customised.iso

Let’s go through each step of this process and explain what each function does.

Get-PSSnapin -Name VMware.ImageBuilder

Get-PSSnapin is the call function to bring VMware Image Builder into PowerCLI if you don’t have it already loaded in your instance of PowerCLI you will need to run this command.

Add-PSSnapin VMware.ImageBuilder

Add-EsxSoftwareDepot is the call to add my ESXi image (ZIP format) and then all of my VIB’s to my image, each VIB requires a separate line.  After you run this command you will get a spit of like this:

Screen Shot 2014-03-27 at 10.46.46 AM

Once you have added all of your VIB’s to the depot then we need to look at the actual ESXi image we introduced to the image builder and determine which profile we want to use, that is the intent of the Get-EsxImageProfile function. You will get a table of the profiles to choose from:

Screen Shot 2014-03-27 at 10.51.07 AM

Next we use the New-EsxImageProfile to clone the profile and name it what we want!

Screen Shot 2014-03-27 at 1.16.28 PM

Finally we run the Export-EsxImageProfile function to compile our depot of VIB’s to produce our custom ESXi ISO as shown here:

Screen Shot 2014-03-27 at 1.18.27 PM

Now I have my custom image that I can load to my hosts when I do my complete virtual infrastructure redesign.

Big thanks to vStrong.info for his article on VMware Image Builder and Alan Renouf on getting PowerCLI setup.

Free Virtual Tools for the SMB’s

I was catching up with my good friend Scott, an IT integrator for Law Firms and CPA’s in the Chicago area, about whats new in our lives. He’s been busy for the last 2 years migrating most of his clients from Windows XP to 7. I was telling him about some of the fun things I’ve been learning about in Virtualization. I told him about Horizon View and how we virtualized our entire production server environment (24 servers) on just 2 Hosts.  His first reaction was “That all sounds great, but most Small Businesses can’t afford that kind of stuff like SAN’s, Hosts or VDI”. I tend to agree with him, some companies just can’t see the value in virtualizing their servers or workstations because of the high upfront costs.

But it got me thinking that there are free and low cost options that Small Businesses can take to make things easier, consolidate aging hardware and prepare for the next big wave of upgrades. So I decided to throw together a list of free software that “could” help SMB’s that just can’t afford the latest and greatest but still benefit from virtualization.



ESXi is the foundation of any virtual server environment. VMware has been releasing ESXi as a free hypervisor for the last few years. It is a great way to start the journey into virtualization. A typical SMB company has a few servers that just sits there idle 50-70% of the time. Why not reduce the amount of wasted server resources (chassis) and consolidate those server instances onto one or two hosts (existing physical servers).

Now of course there are some downsides to just running a bare metal hypervisor, there is no redundancy, manual interaction on a per host basis, as well as no intelligence because of a vital piece = vCenter! But that shouldn’t stop people from starting down that road!

Get started with virtualization by downloading and trying it for yourself!

Veeam Backup


Veeam is an industry leader in virtualization backup software. They have a free version to use forever and it works great! Although many would say it shouldn’t be used as a primary backup, it is a great ad-hoc utility to backup Full Virtual Machines. Again if you are just getting started this is a great way to test, evaluate and use in small production environments.

Veeam One


Veeam One is a management suite for the VM’s on your hosts. There are no limitations to the number of VM’s, Hosts or Clusters. Being a free software and complimenting ESXi virtual machines is a great way to be proactive as opposed to reactive to problems that come up in your job. Veeam One comes with over 200 pre-defined alarms and notifications to help you understand problems before they happen. There are some logging and archival limitations to the system. But free is free and you can’t beat that!

Syslog Server


Syslog’s are becoming a necessity in determining problems or submitting support cases with hardware/software vendors. It would be awesome to collect all of those logs into one place right? What’sUpGold has a free syslog server that you can use in your environment. It is very easy to setup and reduces the time to collect system logs when trying to resolve a problem.



Web Help Desk is a Solarwinds product that we have used for our Help Desk ticketing system. As a systems integrator in the past I had my clients use this very simple software so I could log and track tickets, knowledge base articles, assets and more. They have a free edition limited to one technician but if you are a one man shop this is great! Did I mention they have a virtual appliance…

Virtual Appliances

Virtual appliances are servers that run on Linux flavors that are free alternatives to some Windows only software sets. You can run a file and print servers, LDAP, AD PDC host, Torrent, Help Desk and many more applications like them on free self contained virtual machines. TurnkeyLinux.org is a great place to start. VMware has some great vApps that you can demo as well on the Solutions Exchange site too. We run several virtual appliances that don’t take up much space and resources that do the job well.

There are many free and great products out there that I haven’t mentioned. Kendrick Coleman has a massive list of free vSphere related tools that you can check out. I have just scratched the surface!  If there are others that I didn’t include, please feel free to mention them in the comments section below.

vSphere 5.5 Upgrade – Walkthrough and Notes

Since the announcement of vSphere 5.5 at VMworld, I have been waiting for the day to upgrade our environment. That day has finally come. We decided to go with the Simple Install since there isn’t anything custom when we install vCenter.

We have Horizon View in our environment, so the first step was to shutdown all workstations, linked-clones, etc and disable provisioning to not create additional clones. We shutdown all servers except our Firewall, Exchange, Primary File Server and vCenter servers (Apps and DB’s). Now that we have our environment in a controlled state, we are ready to start the upgrade process.  So lets get to it!

Download the vCenter 5.5 Install Package for Windows from VMware, mount the ISO or extract the contents to a temp location and select autorun.exe

Slide0Select the Simple Install Option, review the upgrade process and click Install to start the upgrade of Single Sign-On.


It has already detected the previous version, Click Next


Accept the End User License Agreement, who really reads that stuff! Click Next


Make sure that the FQDN, IP is accurate. vCenter Windows Server is joined to the Domain and Value is correct, Click Next


It has detected the previous instance of SSO so it will migrate the existing information, Click Next


Choose the local default domain account credentials for SSO, Click Next


Confirm the Site Name, Click Next


Choose the install location, Click Next


Here is an overview of the choices we made, time to Install


It will take a little bit of time to install, when it completes it will proceed to start installing vSphere Web Client components.


vSphere Web Client begins to install and register with SSO. Next up is the Inventory Service.


Pretty simply choice, keep your existing inventory or stay up all night and rebuild it. We chose to get some sleep tonight! Click Next


It’s ready to install the Inventory Services, Click Install


Install the components and watch the progress bar. It will immediately go into vCenter Upgrade next.


Click Next


Enter License, Click Next Slide3 \

Enter your SQL Database credentials for vCenter Database, Click Next


It prompts you that vSphere Update Manager isn’t compatible with 5.5 (we will upgrade that after we are done), Click OK


Upgrade the existing vCenter database, check the box, Click Next


Choose Automatic, Click Next


Unless you want a Domain Account to auto login, choose a separate login account for the vCenter Service Account.


Validate your ports, you have the option to increase the ephemeral ports. We didn’t increase them because we will not hit 2000+ VM’s before vSphere 6 comes out, Click Next


Everybody has a different take on this option, we chose Large so that we don’t have to hit an artificial limit on JVM Memory issues, to each his own, Click Next


Time to Install, Click Install


The database upgrade took a while…




vCenter has finished the upgrade process, are we done? Not just yet!

Time to install the Windows vSphere Client, just select the Client install option and click Install.


Next through the options since there isn’t any customization to apply.


vSphere Client is updated, to sign in!

So at this point we went to fire up vCenter Windows Client to start upgrading Update Manager but ran into an error where our AD accounts wouldn’t authenticate to vCenter. After a little research (Google!) we found this article from VMware. We have a AD Admin group nested into the Local Admin group, upgraded vCenter doesn’t like this.

It was an easy fix, log in using local admin to vSphere Web Client, go to vCenter permissions and add Domain Admin group (users to manage vCenter), then you are back in business. Now it’s time to upgrade vSphere Update Manager so we can start upgrading ESXi Hosts.


Choose vSphere Update Manager and Click Install


In the Installation has detected our existing version of Update Manager, Click OK


Click Next


Allow Update Manager to download baselines, patches and others after install, Click Next


Verify your vCenter Information, remember that vCenter account we entered earlier? Time to enter it again, it will validate and Click Next


SQL Connection Info, Click Next


Choose Yes I want to upgrade my VUM Database!, Click Next


Verify Port Settings, Click Next


Click Install


Watch the progress!


Installation is complete time to fire up the vSphere Windows Client to install the plugin.


Login using your credentials or use Windows Credentials. Notice the warning in the new version, you MUST use Windows VIC to manage Update Manager, Site Recovery Manager or an isolated Host.

Now we need to load vSphere Update Manager into our vSphere Client so navigate to Plug-ins > Manage Plug-ins


Choose Download and Install under the Status Column, It will fire up the Client Install


Click Next


Accept the End User License Agreement, Click Next


Click Install


Watch the progress!


Click Finish


Now we see that vSphere Update Manager has been installed and is “Enabled” in vSphere Client, time to start upgrading hosts!

First we need to create a Baseline to see which hosts are out of compliance. So let’s start there.

From the Home view select Update Manager from Solutions and Applications


Create a new Baseline


Choose a Name and select Host Upgrade for your baseline type, Click Next


Choose you ESXi Image, if you do not see the ESXi image in the list, go to Admin View > ESXi Images tab to import the ESXi 5.5 image, Click Next



Verify your settings and Click Finish, now we can run our baseline again the hosts we want to upgrade. For now we are only upgrading our Production Server Hosts because we are waiting on Teradici to update the Firmware of the APEX 2800 PCoIP Offload Cards for vSphere 5.5


Final Thoughts

So we simulated almost everything before we did the upgrade in Production, aside from the Nested AD Group, we didn’t hit any snags. I hope this walk through has been beneficial. If you have any questions or comments please post them.

vSphere 5.5 Upgrade – Ready, Aim, Fire!

I was hoping to have my DFW VMUG User Conference Download article finished today but I am waiting on my slide decks to put the final pieces together. So look for that article in the next few days, spoiler alert: the User Conference was awesome!

I want to upgrade vSphere 5.5 all night long!

Tonight we will be upgrading our vCenter environment to 5.5. As our team was going through our checklist I ran across some good tidbits of information, a lot of which came from my previous post. The two biggest items so far have been the which order to upgrade the components and to make sure there would be any hiccups during the upgrade. The component upgrade process we are going to follow is based on KB Article 2057795. Here is the upgrade order I plan to take:

5.5 Upgrade

So far we are aware of one issue going into the upgrade, there is a Single Sign-On issue related to AD authentication when running SSO on Windows 2012, you can find the reference here. I’m glad we caught this because we were planning to migrate our vCenter server onto 2012. There is a fix, but will wait to do the OS upgrade for another night.

I will be following up with my notes on how the upgrade process went.

Wish me luck!