Adding VMKernel ports to multiple hosts using PowerCLI

So, yesterday I was asked to quickly put together a script to add VMkernel ports to Multiple ESXi hosts. I have a script to add VM Port groups to multiple host, and this is easy. But the issue with the VMkernel ports is that they require a unique IP address.

So I put together the following CSV and Script

CSV File which includes the below information. Obviously the fields will be changed to suit your network


Continue reading Adding VMKernel ports to multiple hosts using PowerCLI

Configuring NFS networking for a nested ESXi VM

I have just begun planning and building a lab for my ESXi / vSphere environment so that I can do a upgrade of our vSphere environment (more to come on this process), but I got stuck with an issue for NFS storage. The issue was that I could not mount the datastores on the nested ESXi host, I was not able to find any clear information quickly on the web, so I decided to do a “settings” process here.

A brief background of the environment:

  • Networking: Cisco 3850, with Trunk VLAN configured.
  • Storage: NetApp cDOT with NFS volumes
  • ESXi Version: 6.0U3

The important changes are in bold below and the reasoning is VERY well outlined in this “ancient”, yet 100% valid post by William Lam: Why is Promiscuous Mode Forged?

Continue reading Configuring NFS networking for a nested ESXi VM

Resetting vSphere 6.0 Password

So, its been quite some time since my last post, dealing with personal issues and the festive season and and and, so, here I am, back in 2017 and hopefully bringing awesome content.

So, lets kick it off with resetting the vSphere password. This works on the vCenter, an external Platform Service controller or an AIO system.

The reason behind me doing this is due to the password expiring and someone resetting it and not recording it in our password management software.

Requirements:

A Live boot ISO – I used this one: ADRIANE-KNOPPIX_V7.2.0gCD-2013-07-28-EN
Console access to the VM you want to reset.

Caveats:

Be sure to have ESXi host access to the host where these VMs reside as the VMs WILL require a reboot, meaning your entire vCenter will be offline for the during of this password reset.

Let’s begin:

I assume you have some basic ESXi / vSphere knowledge so I will not go in to how to do simple things like mount the ISO – I will continue from the boot process.
Boot from the ISO, till you reach

Continue reading Resetting vSphere 6.0 Password

Clone Datastores from one ESXi host to Another

As we I progress with our server refresh and I continue to build our global virtualised infrastructure, I am constantly trying to make things easier for my less experienced colleagues and so that there will be consistency in what we do. One of the most tedious tasks must be NFS datastore creation. While we could script this out and create each datastore individually, I figured I would try find a way clone the datastore configuration from one host to another. This way you simply execute the script and let it run along, giving you time for other cool stuff.

This little script will save you hours, especially if you have hundreds of datastores and hosts.

Script 1: This is for host to host clone only

Script 2: This for host to Cluster wide .

Copy the above text in to a text document and save it as a ps1 (powershell) file and run it using PowerCLI.

Finding Groups that have disabled users in them

This is just a quick powershell script to find all users who are a member of a certain group (of certain groups).
We were running out of licenses for one of the products we use internally. This product is tied to group memberships. Instead of clicking on each indivual group or disabled user (approximate 40 groups or 560 disabled users), I figured I would draft up a quick powershell to do the work for me.

Continue reading Finding Groups that have disabled users in them

Install and configure SQL AlwaysON AG with Listener on Azure

This is going to be a multi-part post, based on a very recent deployment.

I had to urgently build an AlwaysOn Availability Group and Listener in Azure on SQL Server 2014. The only issue was,  I have limited Azure and SQL knowledge. I can maintain and install, and create a few scripts here and there. But not enough to be called a DBA or Cloud Boff. However, I decided this would be an awesome thing to learn how to do. So, during the course of man flu, about 40 hours of crunch time, I can now install, configure and maintain a SQL AlwaysON AG with Listener on Azure.

So, lets get cracking.

Prerequisites:

  • 1x Domain Controller
  • 1x Service account for the SQL Server Service and for the SQL Server Agent Service
  • 1x Delegated permissions on AD for the cluster to create computer objects.
  • 1x Load balancer (on Azure)
  • 2x Windows Servers installed with a minimum of SQL 2012 installed
  • Shared location on each node (this will be used for adding DBs to the using a “Full” model)

Some of these pre-requisites are listed in this post – so don’t worry if you don’t know how to do certain things.

Continue reading Install and configure SQL AlwaysON AG with Listener on Azure

Step by Step Moving FSMO roles in Server 2012 R2

I needed to move our FSMO roles to a centralised server today, the main cause for this was firewall ruling (cannot add rules mid-week) and an urgent requirement for Domain controllers in our Azure Production environment.

We were unable to dcpromo our Azure server and after 2 days of troubleshooting, wiresharking and several work-a-rounds – we decided to move the FSMO roles yet again. Now, I know for a fact that continuously moving the FSMO roles is NOT HEALTHY for a domain environment, I was totally against it, but I bit the bullet and did as I was told.

They are now in their new home, On-Premise Site A,  and will not be moved again. However, due to Microsoft best practice, we will split the Schema master and Domain Naming Master off to DC2 once all firewall rules are in place.
Continue reading Step by Step Moving FSMO roles in Server 2012 R2

Scripted configurations of SNMP v2

Today I went through the process of scripting the configuration of SNMP configurations for multiple OS/devices. The reason for this is that there has never been a formality or standardisation of this and sometimes we tend to forget this and or that. So, in case you would also like to script it, here is what we use.

The defaults:

sysLocation:
For this, you could either use “3rd floor, of some office” or, if you are a global company, with  monitoring system that makes use of the GoogleMaps API (e.g. Observium) and would like to show various location globally – use a google API name – e.g. London, UK or Cape Town, South Africa etc.

sysContact:
This could be a name or an email address or telephone number

Community:
Something that is configured on your server and on your device/workstation/server that allows communications. There is also a permission set that will get applied to this.

target:
This is the place you are sending information to

port:
This is by default, 161/UDP, unless you change it.

Continue reading Scripted configurations of SNMP v2

Creating Superseded Applications in SCCM 2012 R2


Today I was investigating upgrading an application we use for email signature management called Symprex. I want to upgrade it using SCCM and realised that internally we didn’t have any “How-To” documentation on deploying an application from start to finish, so what better way to add a post to my blog and some internal documentation.

sccm-2012-r2-logo

So, what is supersedence exactly?

Microsoft TechNet gives us a pretty good explanation:

“Application management in Microsoft System Centre 2012 Configuration Manager allows you to upgrade or replace existing applications by using a supersedence relationship. When you supersede an application, you can specify a new deployment type to replace the deployment type of the superseded application and also configure whether to upgrade or uninstall the superseded application before the superseding application is installed.
When you supersede an application, this applies to all future deployments and Application Catalog requests. This will not affect the existing installations of the application.”

Taken directly from Technet

Continue reading Creating Superseded Applications in SCCM 2012 R2

Importing IPs into IPPlan

Importing IPs in to IPlan saves tons of time if you have lots of IPs to add.

I am deploying many ESXi systems at the moment, and each vmk port has got a different IP and or the connected devices have IPs etc. I looked across the internet but couldn’t really find a process or guide. After struggling for a few days, I managed to finally import the addresses.

Be sure to edit and save this in Notepad. This needs to be done in ASCII format.

The columns are imported in the following order: IP address, user, location, description, hostname, telephone number and mac address.

Continue reading Importing IPs into IPPlan