Le blog technique

Toutes les astuces #tech des collaborateurs de PI Services.

#openblogPI

Retrouvez les articles à la une

Affichage du Body d’un mail en PowerShell via l’utilisation des Web Services API Exchange

 

Lorsque vous récupérez un mail en PowerShell au travers des API Web Services Exchange, le corps du mail semble vide.

 

image

 

Pour afficher le contenu du body, il faut appeler la fonction .load().

Le body du mail s’affiche.

image

 

Cependant celle ci s’affiche formaté en HTML.

SI vous souhaitez l’afficher sous un format texte, il faut indexer une variable avec la propriété Text.

Exemple :

$psPropertySet= New-Object Microsoft.Exchange.WebServices.Data.PropertySet([Microsoft.Exchange.WebServices.Data.BasePropertySet]::FirstClassProperties)
$psPropertySet.RequestedBodyType = [Microsoft.Exchange.WebServices.Data.BodyType]::Text

$mail.load($psPropertySet)

$mail.body.text

 

Résultat:

image

Renommage des ressources d’une VM suite à un déploiement par SCVMM

 

Lorsque vous déployez une machine virtuelle par VMM, celle ci est préfixé au niveau du nom par SCVMM. La ressource Virtual Machine Configuration est également préfixée.

Voici un script qui va se charger de renommé les ressources comme ci celle ci avaient été déployé depuis Hyper-V /Failover Clusters et non VMM.

image

 

 

Code:

Param ([string]$VM, [string]$MonCluster)

if (($VM -eq $NULL) -or ($MonCluster -eq $NULL))
{
    write-host « Il manque un argument » -f yellow
}
else
{
    $VM=$VM.ToUpper()
    get-cluster $MonCluster
    if ($?)
    {
        get-cluster $MonCluster | Get-ClusterGroup -Name « SCVMM $VM Resources »
        if ($?)
        {
            (get-cluster $MonCluster | Get-ClusterGroup -Name « SCVMM $VM Resources »).name=$VM
            if ($?)
            {
                sleep -s 2
                ((get-cluster $MonCluster | Get-ClusterGroup -Name « $VM » | Get-ClusterResource) |?{$_.resourcetype -eq « Virtual Machine »}).name= »Virtual Machine $VM »
                ((get-cluster $MonCluster | Get-ClusterGroup -Name « $VM » | Get-ClusterResource) |?{$_.resourcetype -eq « Virtual Machine Configuration »}).name= »Virtual Machine Configuration $VM »
            }
            else
            {
                write-host « Renommage du Groupe de Ressource echouer » -f yellow
            }
        }
        else
        {
            write-host « Groupe de Ressources pas trouver » -f yellow
        }
    }
    else
    {
        write-host « Cluster pas trouver » -f yellow
    }
}

Configuration du DSC en mode Pull Server

 

Installation du module xPSDesiredStateConfiguration

Récupérer le module xPSDesiredStateConfiguration sur le site suivant :

https://gallery.technet.microsoft.com/xPSDesiredStateConfiguratio-417dc71d

Ce module contient la ressource suivante xDSCWebService qui va nous permettre de configurer notre Serveur DSC Pull.

Vous devez maintenant extraire le contenu de l’archive dans :

C:\Program Files\WindowsPowerShell\Modules

clip_image001

Installation de la Feature DSC

Ouvrer un Prompt PowerShell puis lancer la commande :

Add-WindowsFeature -Name DSC-Service -IncludeManagementTools

image

Redémarrer votre serveur

Ouvrer un prompt PowerShell et lancer la commande suivante :

Get-DSCResource

Vérifier que vous avez bien la ressource xDSCWebService qui s’affiche

(cette ressource est disponible suivante au module que vous avez copier précédemment).

image

Lancer un Prompt PowerShell

Configuration du Serveur DSC

Executer le Script Sample_XDscWebService.PS1 présent dans le répertoire c:\programfiles\WindowsPowerShell\Modules\xPSDesiredStateConfiguration\Examples

image

Lancer maintenant la commande Sample_xDscWebService -certificateThumbPrint AllowUnencryptedTraffic

image

Un répertoire du meme nom est créé contenant le fichier mof contenant la configuration du server Pull.

(Le répertoire est créé la ou votre prompt est situé)

image

Le fichier mof va être utilisé par une commande DSC pour la configuration du serveur.

Apercu du fichier mof

clip_image012

lancer la commande suivante :

Start-DscConfiguration -Wait -Path .\Sample_xDscWebService -Force -Verbose

Le serveur Pull est maintenant configuré

image

Vérification du serveur DSC

La commande Get-DSCConfiguration permet de voir la configuration du serveur DSC

image

Dans votre navigateur internet, taper l’adresse suivante :

http://NOMSERVER:8080/PSDSCPullServer.svc

On peut constater que le service IIS est fonctionnel.

clip_image018