Erreur lors de la mise à jour de SCOM 2007 vers le R2

Lors d’une mise à jour de SCOM 2007 vers SCOM 2007 R2, on a eu l’erreur suivante (avec impossibilité d’aller plus loin) :

Après vérification, aucun MPacks Cross-Platform n’avaient été installés (et aucune trace dans la base de données).

Dans le fichier de log de la mise à jour, on a trouvé une trace de la cause de l’erreur :

2010-09-07T14:56:18.1524668+02:00	Error:	Unable To Connect to SDK To Retrieve MP: Error: The user xxx\Administrator does not have sufficient permission to perform the operation.

Il a fallu se connecter avec un compte faisant parti du groupe OMAdmins pour terminer avec succès cette mise à jour.

Le jour où les erreurs seront explicites et précises, les admins seront aux anges :p

Moralité : bien lire les prérequis …

Réallocation disque automatique sur DPM 2007

Une des grandes nouveautés de DPM 2010 est l’autogrowth sur l’espace alloué pour les groupes de protection.

Cela permet d’étendre l’espace disque utilisable par un groupe de protection lorsque celui ci arrive à saturation.

Sur DPM 2007, cette fonctionnalités n’était pas disponible, et soit la manipulation se faisait à la main, ce qui peut être vite difficile dans le cas d’une grosse infrastructure, soit en Powershell.

Ce script peut être planifié une à plusieurs fois par jour si vos groupes de protection évoluent rapidement en terme de stockage.

Attention toutefois car la réallocation d’espace disque sur DPM est assez consommateur (aussi du à l’utilisation des disques dynamiques Windows) !

Voici le script PS que nous utilisons :

#
# Script d'allocation automatique d'espace
# pour les datasources DPM
#
# Changelog :
# 12/05/2010 : Correction du problème d'affichage d'espace libre
#

Function Send-SMTPmail($to, $from, $subject, $smtpserver, $body)
{
	$mailer = new-object Net.Mail.SMTPclient($smtpserver)
	$msg = new-object Net.Mail.MailMessage($from,$to,$subject,$body)
#	$msg.IsBodyHTML = $true
	$mailer.send($msg)
}

# Déclaration des variables
$seuilReplica = 3GB
$seuilRecoveryPoint = 3GB
$palierReplica = 15GB
$palierRecoveryPoint = 15GB
$nomServeurDPM = &"hostname"
$serveurSMTP = "xxxx"
$emailFrom = administrator@xxx
$emailTo = administrator@xxx
$corpsMail = ""
$sujetMail = "[DPM] Rapport d'allocation automatique"

# cmdlet permettant de se connecter au serveur DPM
$serveurDPM = Connect-DPMServer $nomServeurDPM -ErrorAction SilentlyContinue

# Vérification de la connexion au serveur DPM
if(!$serveurDPM)
{
	$corpsMail += "Connexion au serveur $nomServeurDPM impossible"
	Send-SMTPmail -to $emailTo -from $emailFrom -subject "$sujetMail" -smtpserver $serveurSMTP -body "$corpsMail"
	exit 1
}

# Récupération de la liste des Protection Group
$listeProtectionGroup = @(Get-ProtectionGroup $nomServeurDPM)

# Parcours de la liste des Protection Group
foreach($protectionGroup in $listeProtectionGroup)
{
	# Récupère le Protection Group en version modifiable
	$modifiableProtectionGroup = Get-ModifiableProtectionGroup $protectionGroup

	# Récupère la liste des sources de données du Protection Group en version modifiable
	$listeDatasource = @(Get-Datasource $modifiableProtectionGroup)

	# Parcours des datasource un par un
	foreach ($datasource in $listeDatasource)
	{
		#
		# Vérification de l'espace disponible au niveau du replica
		#
		if (($datasource.ReplicaSize - $datasource.ReplicaUsedSpace) -lt $seuilReplica)
		{
			# Augmentation de l'allocation disque du replica
			$corpsMail += Get-Date -uformat "%Y/%m/%d"
			$corpsMail = $corpsMail + " - Augmentation du Replica " + $datasource.Name + " sur le Protection Group " + $datasource.ProductionServerName + "`n"
			$nouvelleReplicaSize = $datasource.ReplicaSize + $palierReplica
			Set-DatasourceDiskAllocation -Manual -Datasource $datasource -ProtectionGroup $modifiableProtectionGroup -ReplicaArea $nouvelleReplicaSize
		}
		#else
		#{
		#	# Rien à faire
		#	$espaceLibreReplica = $datasource.ReplicaSize - $datasource.ReplicaUsedSpace
		#	$espaceLibreReplica /= 1MB
		#	Write-Host "Le replica de $($datasource.Name) sur $($datasource.ProductionServerName) n'a pas besoin d'etre agrandie et possède $espaceLibreReplica MB de libre"
		#}

		#
		# Vérification de l'espace disponible au niveau du recovery point
		#
		if (($datasource.ShadowCopyAreaSize - $datasource.ShadowCopyUsedSpace) -lt $seuilRecoveryPoint)
		{
			# Augmentation de l'allocation disque du recovery point
			$corpsMail += Get-Date -uformat "%Y/%m/%d"
			$corpsMail = $corpsMail + " - Augmentation du Recovery Point " + $datasource.Name + " sur le Protection Group " + $datasource.ProductionServerName + "`n"
			$nouvelleRecoveryPointSize = $datasource.ShadowCopyAreaSize + $palierRecoveryPoint
			Set-DatasourceDiskAllocation -Manual -Datasource $datasource -ProtectionGroup $modifiableProtectionGroup -ShadowCopyArea $nouvelleRecoveryPointSize
		}
		#else
		#{
		#	# Rien à faire
		#	$espaceLibreRecoveryPoint = $datasource.ShadowCopyAreaSize - $datasource.ShadowCopyUsedSpace
		#	$espaceLibreRecoveryPoint /= 1MB
		#	Write-Host "Le Recovery Point de $($datasource.Name) sur $($datasource.ProductionServerName) n'a pas besoin d'etre agrandi et possède $espaceLibreRecoveryPoint MB de libre`n"
		#}
	}

	# Application des modification effectuées ci-dessus
	Set-ProtectionGroup $modifiableProtectionGroup
}

# Récupération de l'espace disque disponible
$espaceDisqueDispo = Get-DPMDisk -DPMServerName $nomServeurDPM

# Envoi du mail de rapport
if($corpsMail -ne "")
{
	$corpsMail += "`n`nEspace Disque disponible : " + $espaceDisqueDispo.UnallocatedSpace/1GB + " Go"
	Send-SMTPmail -to $emailTo -from $emailFrom -subject "$sujetMail" -smtpserver $serveurSMTP -body "$corpsMail"
}

# Déconnexion du serveur DPM
Disconnect-DPMServer $nomServeurDPM

Pour télécharger le script, veuillez cliquez ici : [download id= »1″]

NB : pensez à renommer le script en .ps1

Protection d’un serveur hors domaine avec DPM2010

Une des nouvelles fonctionnalités très attendu de DPM 2010 est la capacité à protéger les machines qui sont dans un groupe de travail ou dans un domaine non approuvé (untrusted domain). Dans DPM 2010 Beta cette fonctionnalité n’était pas disponible, mais elle l’est dans la version RC (Release Candidate) et est très simple à configurer.

Tout d’abord vous devez installer l’agent DPM sur la machine que vous voulez protéger. J’ai récupérer les binaires de l’agent depuis le média DPM 2010 (penser à prendre celui correspondant à votre architecture x86 ou x86_64), dans mon cas DPMAgentInstaller_x64.exe . L’installation est silencieuse, il suffit de lancer l’EXE et attendre le message pour vous dire que l’agent a été installé avec succès. Il faudra peut-être redémarrer.

Une fois l’agent installé, il faut le configurer. Cela s’effectue via l’outil SetDPMServer.exe que vous pouvez trouver dans <installation drive>\Program Files\Microsoft Data Protection Manager\DPM\bin.

Il suffit de lancer cet utilitaire en ligne de commande avec les paramètres suivants :

SetDPMServer.exe -DPMServerName <DPMServerName> -IsNonDomainServer -UserName <NewUserName>

L’outil demandera un mot de passe pour l’utilisateur et une confirmation afin de finir la configuration de la machine.

Maintenant, il faut rattacher l’agent au serveur DPM.  Pour joindre un agent de serveur hors-domaine, il suffit d’ouvrir la console DPM et de sélectionnez le volet de gestion, cliquez sur Installer … dans le menu Actions. Lorsque l’assistant d’installation d’agent s’ouvre, sélectionnez Attacher agents.

Puis entrez le nom de l’ordinateur hors-domaine où l’agent DPM est installé et le nom d’utilisateur et mot de passe spécifié lors de l’exécution de l’outil SetDPMServer.exe.

Il suffit pour terminer de cliquer sur Attach

Vous devriez alors recevoir une fenêtre récapitulative vous indiquant que l’opération a été réalisée avec succès.

Vous pouvez finalement créer un groupe de protection pour sauvegarder les données sur la machine comme d’habitude.

Et un blog de plus, un !

Bienvenue sur cloudydude.fr

Ce blog n’a pas été fait pour vraiment répondre à un besoin quand on voit la pléthore de blog sur la virtualisation et l’informatique en général (non non j’exagère à peine …), mais plutôt pour me permettre de garder facilement trace des problèmes (et résolution ^^) rencontrés au cours de mon boulot, et aussi pour partager tout ce que j’ai pu, et ce que je pourrais faire (essentiellement en scripting).

Pourquoi un blog ? Parce que j’avais l’habitude de gérer ma KB perso sous forme de fichier plat, c’est pratique mais très limité et peu efficace en recherche. Je suis passé par des forums, mais finalement, le blog me parait plus adapté (et puis le blog ça fait très web2.0-compliant, c’est groovy).

Pourquoi WordPress ? Parce que (na !)

Pour le thème, je me suis basé sur FreshPick de Theme Lab bien allègrement modifié bien sûr :p

Sur ce, let’s rock ‘n roll dudes !

Page 29 sur 29« Première page10202526272829