Issues with Get-Spbm* PowerCLI cmdlets and vCenter 6.5

We are using Storage Policies on all VMs in our environment and rely on those to give the VM’s the correct storage. Storage Policy based management is a key area for VMware going forward it seems, especially with things like vSAN and VVOL.

In addition to matching a VM and it’s storage we are using the policies to set limits on the VM’s. We have a shared environment and we have to have some limitation on the VM’s so that one VM couldn’t impact all the others. To ensure this we have a couple of scripts that retrieves all VM’s and their corresponding policy and based on the policy naming convention we are setting IOPS limit and the Bandwidth Cap for that VM. The scripts has been working for a long time, aside from some bugs with the limits it self which VMware support is looking into.

After upgrading and migration some of our vCenters from Windows vCenter Server 6.0 U2 to the vCenter Server Appliance 6.5 it seems we broke the Get-SpbmStoragePolicy cmdlet. PowerCLI is updated to the latest available version as well through the PowershellGallery. ...  continue reading

vSphere Performance data – Part 4 – InfluxDB

This is Part 4 of my series on vSphere Performance data.

Part 1 discusses the project, Part 2 is about exploring how to retrieve data, Part 3 is about using Get-Stat for the retrieval. This post will be about the database used to store the retrieved data, InfluxDB.

The last post left of with the beginning of a script that had retrieved data from vCenter. Before I can finish that script I need to have somewhere to put that data. As I discussed in Part 1 I had decided to use InfluxDB for this purpose. ...  continue reading

vSphere Performance data – Part 3 – Get-stat

This is the Part 3 in my series on vSphere performance data.

Part 1 discussed the project, Part 2 was about checking the methods of retrieving data and ended with me realizing I would use Get-Stat against all (4000) VMs to retrieve data.
Part 2 was posted over a month ago as I have been busy preparing for the VCP 6.5 DCV exam (which I passed btw) as well as upgrading/migrating our vCenter servers, but I have actually been able to do a lot of work on this project as well so there will be some updates in the next couple of days.

Previously I had done some benchmarks on retrieving data from VMs using PowerCLI and the Get-Stat cmdlet. I would land on roughly 1 second per VM to retrieve and process the metrics I wanted. As I discussed in part 2 that would result in 4000 seconds to retrieve the data I needed, and with my goal to retrieve all 20 sec metrics within 5 minutes I would need to have around 14 scripts running simultaneously to achieve this. ...  continue reading

Differences and bugs in Windows 2016 Task Scheduler

I’m using the Scheduled Tasks functionality in Windows Server quite extensively. I have tasks for importing stuff to a database with Powershell scripts, running some cleanup scripts etc

Almost all of my scripts run on different intervals during the day. Some maybe just once a day and some might run every x minutes.

Recently I encountered a difference in the way Scheduled Tasks work on Windows Server 2012R2 (and below) and on Windows Server 2016. ...  continue reading

vSphere 6.5 upgrade – vCenter server. Check your database size

In my last post about upgrading vCenter to 6.5 I’ve outlined the steps I needed to do for the migration. Both pre-migration, the actual migration and some post-migration steps.

Today we were about to upgrade/migrate one of our oldest and biggest vCenters which presented some additional steps to consider for the pre-migration checks and tasks. This is also described in the VMware documentation so it shouldn’t be a surprise to those reading that before migrating.

Anyways, we started the migration and all seemed fine until the Deployment size of the Appliance were shown. The installer only gave one option, the x-large. ...  continue reading

vSphere 6.5 upgrade – vCenter server

In a previous post I talked about the upgrade of our vSphere environment. The first post described the upgrade and migration of the Platform Services Controller (PSC) from a version 6 running on Windows to a 6.5 Appliance.

Our upgrade path would be PSC -> vCenter -> Hosts. Our environment consists of several vCenters so this will take some time and we might upgrade hosts in a vCenter that has been upgraded to 6.5 before we finish upgrading all vCenters to 6.5

With that, let’s look at upgrading a vCenter server to 6.5! ...  continue reading

vSphere Performance Data – Part 2 – Retrieve data

This is part 2 of my vSphere Performance Data series. Part 1 described the project and my goals with the project.

This post will be my thoughts on retrieving performance data from our vSphere environment. As I described in part 1 our environment consist of 100+ hosts and 4000+ VMs. These are hosted in 3 different vCenters in the same SSO domain (Enhanced Linked Mode). All hosts and vCenters are at version 6. We are in the process of upgrading vCenter to 6.5 as I’ve talked about in a previous post.

Currently we are using Turbonomic in our environment which also retrieves performance data from the vCenters that it uses in it’s main purpose which is to balance the load in our environment. As it retrieves and presents performance data we are using this is our source of perf data in our in-house portals and dashboards. I’ve blogged about this on the Turbonomic community site previously where I talk about how I use their API in our dashboards.
Turbonomic stores their “real-time” data in 10 minute intervals and the trend data is stored hourly with average and peaks. ...  continue reading

vSphere performance data – Part 1

There is lots of posts on retrieving performance data from your vSphere environment (I’ll probably use a lot of them in this series), but here’s my take on it.

My ultimate goal is to build my own database of performance data and have a nice front-end presenting this. I also want to have an API that extracts data from the performance DB which I will use in our in-house portals and dashboards.

This project can be quite big and complex so I will split it in 3 parts: ...  continue reading

vSphere 6.5 upgrade – PSC

This month we started our upgrade journey from vSphere 6.0 -> 6.5 in production. We have had 6.5 running in lab for some time after the release last fall and we have enjoyed it so far.

As a part of this upgrade we plan to migrate to the vCenter appliance on both PSC’s and vCenter’s as this has gotten all functionality (i.e. Update Manager), and it scales to the same extent as the Windows one.

With the 6.5 release, even though it might not be an official VMware statement, I believe that the appliance is priority for VMware going forward and that the Windows version will eventually die (like the C#/Flash client story) so it seems that it would be wise to make the switch now.
Please be aware that if you upgrade your Windows vCenter 6.0 to Windows vCenter 6.5 you will not be able to migrate to a 6.5 appliance ( ...  continue reading

.NET core gotcha

Recently I’ve been messing around with the new .NET Core.

I’ve created a class library which I’m using in an ASP.NET Core Web API.

Firstly, at least before 1.1, I couldn’t add a reference to the class library just by giving it the .dll file. I needed to create a NuGet package of my library and publish it to a NuGet feed. I set up a local NuGet feed and added it as a source in VS and were able to add my code. This is all fairly easy. ...  continue reading