wiki.getshifting.com

--- Sjoerd Hooft's InFormation Technology ---

User Tools

Site Tools


start

SHIFT-WIKI - Sjoerd Hooft's InFormation Technology

This WIKI is my personal documentation blog. Please enjoy it and feel free to reach out through blue sky if you have a question, remark, improvement or observation. See below for the latest additions, or use the search or tags to browse for content.


NetApp Reallocate

Summary: How to run reallocation on a NetApp Filer.
Date: Around 2014
Refactor: 29 March 2025: Checked links and formatting.

→ Read more...

2025/06/01 11:59

Storage vMotion with RDM Disks

Summary: How to do a storage vMotion with RDM disks on vSphere.
Date: Around 2014
Refactor: 29 March 2025: Checked links and formatting.

I had a use case where some VMs with Microsoft Clustering had to be moved to different datastores. That is, the normal VMDK OS disks, not the shared disks which were presented to the VMs as RDM. I first read a few articles: VMware KB article on RDM storage vMotions
An article from Scott Lowe
An article from Joep Piscaer, a former colleague of mine, definitely a recommendation to read!
VMware KB article on Microsoft clustering support

Now, all of these articles are great but they didn't specifically describe my situation. Because for Microsoft Clustering, you need a separate SCSI controller for your RDM disks with physical SCSI BUS sharing, to make sure you can share the disks between VMs on different hosts:

SCSI Bus Sharing policy Description
None Virtual disks cannot be shared between virtual machines
Virtual Virtual disks can be shared between virtual machines on the same server
Physical Virtual disks can be shared between virtual machines on any server

Also note the support for the actual SCSI controller. I'm a big fan of the paravirtual SCSI controller but that one is not supported for Microsoft Clustering:

The shared storage SCSI adapter for Windows Server 2008 must be the LSI Logic SAS type, while earlier Windows versions must use the LSI Logic Parallel type.

So I had to test what happens with a RDM disk while in virtual and in physical compatibility mode to come with an answer on what is the best migration method.

→ Read more...

2025/06/01 11:59

Configure RDMs On ESXi Hosts

Summary: How to configure your RDM disks to set the IsPerenniallyReserved for a fast boot of ESXi 5 hosts.
Date: Around 2014
Refactor: 29 March 2025: Checked links and formatting.

Due to a locking problem, booting ESXi hosts takes a lot of time when MSCS are running on LUNs. Since ESXi 5 this can be solved by setting an extra option on the LUNs called perennially reserved. This setting is local to each ESXi host and should be set on each host accessing the RDM. Now if you have a lot of RDMs, or a lot of hosts in your cluster that might take some work, so… powershell!

Note that this has been rewritten here, which was especially done for Site Recovery Manager.

# This script performs the following steps
# 1. Get all RDM information from your environment, listing VM, Cluster and diskinfo
# 2. Export this information to a csv file
# 3. Filters out RDMs that are not part of MSCS
# 4. Set the IsPerenniallyReserved for each RDM on each host in the cluster to true
#
# Note: This scrip can be run each time a RDM or a host is added.
 
# Script variables
$timestamp = Get-Date -format "yyyyMMdd-HH.mm"
$startdir = "D:\sjoerd"
$csvfile = "$startdir\rdmsettings-$timestamp.csv"
 
# Scipt functions
# Note that you can suppress output from commands using | Out-Null
Function logger ($message) {Write-Host -ForegroundColor Green (Get-Date -format "yyyyMMdd-HH.mm.ss") "$message" `n}
Function loggeralert ($message) {Write-Host -ForegroundColor Red (Get-Date -format "yyyyMMdd-HH.mm.ss") "$message" `n}
 
# Define csv table
$myTable = @()
 
logger "Starting to create a csv file. This might take a while."
 
foreach ($vm in (Get-VM | Get-HardDisk -DiskType "RawPhysical","RawVirtual")){
 
   $RDMInfo = "" |select-Object VMName,VMClusterName,DiskType,ScsiCanonicalName
 
   $RDMInfo.VMName = $vm.Parent
   $RDMInfo.VMClusterName = Get-VM $vm.Parent | Get-Cluster
   $RDMInfo.DiskType = $vm.DiskType
   $RDMInfo.ScsiCanonicalName = $vm.ScsiCanonicalName
 
$myTable += $RDMInfo
}
 
$myTable |Export-csv -NoTypeInformation $csvfile
 
logger "Finished creating csv file. Now filtering out RDMs that are not part of MSCS."
 
$allrdms = Import-Csv $csvfile
#Only get duplicates RDMs, these are part of MSCS
$duprdms = Import-Csv $csvfile | Group-Object ScsiCanonicalName -noElement | where {$_.count -gt 1}
 
logger "Starting to set the Perennially Reserved option on:"
 
ForEach ($rdm in $duprdms){
   $cluster = ($allrdms | where {$_.ScsiCanonicalName -eq $rdm.Name} | select VMClusterName | Select -First 1).VMClusterName
   $rdmdisk = $rdm.Name
   ForEach ($esxihost in (Get-Cluster $cluster | Get-VMHost)){
   Write-Host "ESXihost = $esxihost `t RDM = $rdmdisk"
 
   #To set the esxcli instance, run this command:
   $myesxcli = get-esxcli -VMHost $esxihost
   #To verify the parameter updates, run this command:
   #$myesxcli.storage.core.device.list("$rdmdisk")
   #To set the device as perennially reserved, run this command:
   $myesxcli.storage.core.device.setconfig($false, "$rdmdisk", $true)
   }
}
2025/06/01 11:59

RAD Automatic Installation

Summary: A fully automated installation of Rational Application Developer, including the IBM Installation Manager and the WebSphere Application Server
Date: Around 2009
Refactor: 29 December 2024: Checked links and formatting.

We've been busy on this for more than a week but we finally got it running, a fully automated installation of Rational Application Developer, including the IBM Installation Manager and the WebSphere Application Server. We have some general tips and I'll post our configuration files and installation commands in this article.

→ Read more...

2025/06/01 11:59

<< Newer entries | Older entries >>

This wiki has been made possible by:

start.txt · Last modified: by sjoerd