just redo the cluster (fixed for me); just say my nodes are called "one", "two", "three", and "four":
ran these from my quorum file share machine to one fell swoop the uninstall/install, where my four nodes have these two cmdlts already run:
set-item WSman:\localhost\client\trustedHosts -concatenate -value "myQuorumShareMachine"
enable-psremoting
invoke-command -computerName one,two,three,four {remove-windowsFeature failover-clustering -restart}
icm one,two,three,four {install-windowsFeature failover-clustering -includeManagementTools -restart}
icm one,two,three,four {clear-clusterNode}
then on any node, in dsa.msc, remove my dnn (call it "myCluster"), add it back, and disable it (and side note: have the addns admin give it rights to dynamically update its ip address), and while in there, delete myCluster-CAU; note my intranet is the pair of non-dhcp 10gig connections (and my quorum share already has computer object "myCluster" allowed to write)
new-cluster -name myCluster -node one,two,three,four -noStorage -ignoreNetwork 192.168.0.0/24,192.168.1.0/24 –managementPointNetworkType distributed
add-CAUclusterRole -daysOfWeek saturday -weeksOfMonth 1 -requireAllNodesOnline -maxFailedNodes 1 -enableFirewallRules -CAUpluginName Microsoft.WindowsUpdatePlugin -virtualComputerObjectName myCluster-CAU -groupName myCluster-CAU
set-clusterQuorum -fileShareWitness \\myQuorumShareMachine\witness$ -credential $(get-credential)
get-clusterNetwork | ft name,address,role
# set my two intranet 10gpbs to cluster only, and my nic team 2gbps lacp to none (no cluster traffic, just client traffic; unsure about using "unsupported" "2" for client only)
(get-clusterNetwork "Cluster Network 1").role = 1
(get-clusterNetwork "Cluster Network 2").role = 1
(get-clusterNetwork "Cluster Network 3").role = 0
now get back my data volumes
get-clusterAvailableDisk | add-clusterDisk
get-clusterResource | where {$_.ownerGroup –eq "Available Storage" -and $_.name -ne "Cluster Virtual Disk (ClusterPerformanceHistory)"} | add-clusterSharedVolume
and if we're going down the rabbit hole, note I clean up some artifacting
get-clusterResource
# the only cluster disk that has ownerGroup as "Cluster Group" is the old cluster performance history disk (and per virtualDisk, there will be two cluPerfHis, but the old one will be opStatus detatched and healthStatus unknown)
remove-clusterResource "Cluster Disk 20"
get-virtualDisk "ClusterPerformanceHistory" | where {$_.healthStatus -eq "unknown"} | remove-virtualDisk
# and per get resources above, cluster pool 1 is owned by SID/GUID
move-clusterResource "Cluster Pool 1" -group "Cluster Group"
remove-clusterGroup "51620a48-3f0c-4175-8ac5-7f3839e39a0a"
# again per get resource, dnn isn't right
(get-clusterResource "Cluster Name").name = "myCluster"
get-clusterSharedVolume
# they're all "Cluster Disk X", so match those up to old names:
get-clusterSharedVolume | ft name,sharedVolumeInfo
(get-clusterSharedVolume "Cluster Disk 1").name = "Cluster Virtual Disk (originalName)"
# and the share's to those are gone, so get them back (note I create a main folder in each csv, for easy change of permissions and so peeps don't see sys vol info and recycle bin
new-SMBshare -name originalName -path c:\clusterStorage\originalName\subfolder -fullAccess "myDomain\my ou admins",builtin\administrators -changeAccess "myDomain\originalName users"
some of the virtualDisks were inService, so nice function you can run to keep an eye on the "get-storageJob" function (but they were accessible, no users won't know); just ctrl + "c" to exit the function:
function refreshVDSJST () { while($true) {get-virtualDisk | where {$_.healthStatus -eq "warning"} | ft; get-storageJob; icm nb-s2d4 `
{get-scheduledTask -taskName "Data Integrity Scan for Crash Recovery" | where state -eq running} | ft; sleep -s 420; clear-host;} }
refreshVDSJST
hope this helps someone!