From 4776823524212a24642e288d620d5aeb00011e16 Mon Sep 17 00:00:00 2001 From: James Pattinson Date: Thu, 11 Sep 2025 12:56:57 +0100 Subject: [PATCH] Add scheduled task XML --- Update Rubrik.xml | Bin 0 -> 3722 bytes backup.ps1 | 8 +++++++- claimInstance.ps1 | 17 +++++++---------- failover.cmd | 2 ++ 4 files changed, 16 insertions(+), 11 deletions(-) create mode 100644 Update Rubrik.xml create mode 100644 failover.cmd diff --git a/Update Rubrik.xml b/Update Rubrik.xml new file mode 100644 index 0000000000000000000000000000000000000000..b4e164f12a1dca5ed2961ba24e6fc1646fb4fc2e GIT binary patch literal 3722 zcmc(iQBNC36ov0|rTzztheWDmZ0w{^YMfG_#ZuCw1;hj7!DStw*bDM5Q2u<|@7(cr zch=Z)qDs{YJUese-gD2KxikCsUp;$cf7-;x*02W~+0-(-wp&YW$JT7a)~(HNgOSuO z=ua3;?b1h2?AU&?CRX2K^Tzu2wS8qhdWU$qS?ICj9z)a=OGUb}oafHAt;LfO>x!5Y z_q5LMH9b?}XZ(G_a^2BPuzhqy3H^_ZwyXo{jETRFZCV#R8?<`h zC_RX+((|s}6a9*qQ@rnDcTTJX{7w6V)&!&(49Q1q8~ZsSrvV<$?F8#&hPOfQz5R~w zYgR@+3cF&q`c`K{t1MraJV7;erVd?~v4`h>g7H9T@{X#C%=#IU#|B9!V_K~cI&Tj)Hh*2qO!0y=b9rc=>^^vDo z#}-IS#_FrwswiRESY0L3;bN6l6&Vy;;9R79S;b=+sxSQXoL?#B0*3F%e+>8Kc-S*q zgV?6w>!E5|tq;|DSMHe;JW7AkdY{}>#hYHuI^OEq7RrBdL%u2c1RjOU`J3pi9RTlGXm+SHTcy+~ku1cM7VgFah!fL()vuc&r zTgV1vAiUE41@9RMZW&Sic_O0$*i&a_#LgSRl2ClEmpIFPyl1X9Rj)@dEB=)K1J1(t z#QTwVWf3ZwP{pMq=dtPefs1SKj<-8^(QDd#xX z)n>#|N=8rpev`6OAMh?U7Uy4|yu*$U+FWf;94F{moQ+Y7n3P8H*vc!3q_SH zC=C0c(!F**yVYjIcabc+sm_+x%`BhhKDeVmi$2V!h;LLGX&Ty0JqC!7R2ljKpgc+-8& z_ZRb|n#F37Qgpium^1D>d$6Ee&WMb1zjrP>&wJd9LgwX(RGzHzHL2)rkFS&S=v&|% tY~{^4V^sC0dV|%s)&!*}kGj7i$FSpcTd!l$tT@AfQ~k$8(wAc2{sA+OT7Cck literal 0 HcmV?d00001 diff --git a/backup.ps1 b/backup.ps1 index adb3945..233b21d 100644 --- a/backup.ps1 +++ b/backup.ps1 @@ -1,7 +1,13 @@ +# +# backup.ps1 +# +# TODO: Update cleanup time based on backup type + + $sqlInstance = "sqlfcsql\TESTINST" #$directory = "H:\Backup" $directory = "C:\Rubrik\mount" -$fullBackupDay = 'Wednesday' +$fullBackupDay = 'Tuesday' $cleanupTime = 24 $checkCluster = $false diff --git a/claimInstance.ps1 b/claimInstance.ps1 index 31444a9..40890f5 100644 --- a/claimInstance.ps1 +++ b/claimInstance.ps1 @@ -1,21 +1,18 @@ ########################################################################## # -# On Demand Snapshot for all Oracle DBs with a specific SLA -# Created by Rubrik PS for McDermott, September 2025 +# Update an SLA MV to point to the local host +# Created by Rubrik PS for ZF, September 2025 # # Must be run with a Global service account. # # Requires RubrikSecurityCloud module to be installed and working with -# a Global Service Account with the following rights: -# -# - Data Management / Oracle / On-Demand Snapshot -# - Data Management / SLAs / Both Source and Target SLAs +# a Global Service Account with the following rights (TBC) # # Create the service account file with: # Set-RscServiceAccountFile sa.json -OutputFilePath Global.xml # # Example invocation -# .\monthlySnap.ps1 -sourceSla "Prod Oracle SLA" -triggerSla "Oracle Monthly Only" +# .\claimInstance.ps1 -sqlInstance "sqlfcsql\TESTINST" -mvName "JP-ZF-SQL" # # v0.1 Initial Release # @@ -24,7 +21,7 @@ param ( [Parameter(Mandatory=$False, HelpMessage="Instance to claim")] - [string]$sourceSla, + [string]$sqlInstance, [Parameter(Mandatory=$False, HelpMessage="Do not change the MV")] @@ -47,7 +44,7 @@ $ErrorActionPreference = 'Stop' function Write-Log($message) { $timestamp = Get-Date -Format "yyyy-MM-dd HH:mm:ss" $logEntry = "$timestamp $message" - Add-Content -Path "C:\Rubrik\monthlySnap.log" -Value $logEntry + Add-Content -Path $logFile -Value $logEntry Write-Host $logEntry } @@ -103,7 +100,7 @@ if ($myHost.Id -ne $mvDetail.hostDetail.Id) { $query.Var.input.Id = $mvDetail.Id $query.Var.input.update.Name = $mvName $query.Var.input.update.config.SmbDomainName = $mvDetail.SmbShare.DomainName - $query.Var.input.update.config.SmbValidIps = $mvDetail.SmbShare.ValidIps + $query.Var.input.update.config.SmbValidIps = $myHost.Name $query.Var.input.update.config.SmbValidUsers = $mvDetail.SmbShare.ValidUsers + $mvDetail.SmbShare.ActiveDirectoryGroups $query.Var.input.update.slaClientConfig.clientHostId = $myHost.Id $query.Var.input.update.slaClientConfig.channelHostMountPaths = $mvDetail.ClientConfig.ChannelHostMountPaths diff --git a/failover.cmd b/failover.cmd new file mode 100644 index 0000000..b2d9f49 --- /dev/null +++ b/failover.cmd @@ -0,0 +1,2 @@ +@echo off +"C:\Program Files\PowerShell\7\pwsh.exe" -ExecutionPolicy Bypass -File "%~dp0claimInstance.ps1"