PI Services

Le blog des collaborateurs de PI Services

Hyper-V : Créer un disque de différenciation (Partie 3)

Après avoir définit les paramètres et le déploiement de l'OS de notre VM de référence dans les articles précédents, nous allons pouvoir créer un disque de différentiation.

1. Créer un disque de différentiation.

Dans la console Hyper-V Manager faites « New », « Virtual Hard Disk »

Choisissez le format du Disque (dans notre cas VHDX) et faites « Next »

Pour le type de disque nous choisirons donc « Differencing » avant de faire « Next »

Donnez un nom au disque et sélectionnez le répertoire dans lequel il sera créé

Dans configure Disk sélectionnez « Browse… »

Indiquez ensuite l’emplacement du disque de référence créé dans les étapes précédentes (Partie 1) et faites « Next »

Lisez le résumé puis faites « Finish »

 

Maintenant que le disuqe est créé nous pouvons passer à la VM.

2. Création d'une VM.

Sélectionnez le serveur Hyper-V et faites un clic droit « New » puis « Virtual Machine ».

Dans la fenêtre « Before you Begin » faites « Next »

Dans la fenêtre « Specify Name and Location » donnez un nom à votre VM (pour moi VM01) et sélectionnez « Store the virtual machine in a different location » et cliquez sur « Browse… »

Sélectionnez le répertoire dans lequel seront stocké les éléments de configuration de la VM puis « Select Folder »

Faites « Next »

Sélectionnez le type de génération de la VM (dans mon cas une VM de génération 2) et faites « Next »

Assignez une quantité de RAM à la VM et faites « Next ».

Il n’est pas obligatoire d’assigner une carte réseau pour la machine de référence, faites « Next ».

Dans la configuration du disque dur choisissez « Use an existing virtual hard disk », puis faites « Browse... ».

Sélectionnez le disque créé pour la VM dans l'étape 1 puis « Open »

 

Faites « Next »

Faites « Finish »

 

 

 

Hyper-V : Créer un disque de différenciation (Partie 2)

Après avoir définit les paramètres de la VM dans le précédent article nous allons maintenant déployer l'OS de notre VM de référence.

1. Déploiement de l'OS.

1- Connectez vous à la VM et démarrez-la.

2- Sélectionnez la langue d’installation du système d’exploitation (s’il vous plait Anglais cela évitera les problèmes plus tard) puis le fuseau horaire et la langue du clavier (cette fois-ci vous pouvez mettre Français) et enfin faites « Next »

3- Cliquez sur « Install Now »

4- Sélectionnez la version de l’OS à installer (Core ou Graphique) et la version de licence correspondante (Standard ou Datacenter) et faites « Next »

5- Cochez « I accept the license term agreement” et faites « Next »

6- Sélectionnez « Custom: Install Windows only (advanced) »

7- Sélectionnez le disque et faites « Next »

8- Attendez la fin de l’installation

9- Entrez un mot de passe Admin local

Une fois l’installation terminé, identifiez vous sur la machine (je ne mets pas à jour l’OS car au moment où je rédige ces lignes Windows Server 2019 viens juste de sortir), nous allons donc directement passer au Sysprep.

2. Sysprep

Pour réaliser un sysprep de la machine, allez dans « C:\Windows\System32\Sysprep » et exécuter « Sysprep.exe ».

Lorsque la fenêtre apparait cochez la case « Generalize » et sélectionnez « Shutdown » et faites « OK »

Attendez l’extinction de la VM puis dans « Hyper-V Manager » supprimez la, cette action vous évitera de rallumer la VM par inadvertance (ce qui poserait problème pour toutes les machines configurées à l'aide du disque de référence).

Maintenant que le disque de référence a été créé nous allons pouvoir créer les nouveaux disques et VMs, nous verrons cela dans la partie 3.

Hyper-V : Créer un disque de différenciation (Partie 1)

Comme certain d'entre vous j'en ai eu marre de ne plus avoir de place sur mon disque mais surtout de devoir re-déployer Windows Server à chaque nouvelle VM pour un Lab; voici donc comment créer un disque de différenciation sous Hyper-V.

1. Créer la VM de référence

1- Dans un premier temps, sur votre poste de travail définissez un répertoire dans lequel sera stocké le disque de référence.

Dans mon cas je vais créer le serveur de référence dans mon disque "D" dans un répertoire "Template" et placer son disque dans un sous répertoire "Virtual Hard Disk".

 

2- Ensuite lancez "Hyper-V Manager"

 

3- Puis sélectionnez le serveur Hyper-V et faites un clic droit « New » puis « Virtual Machine ».

Dans la fenêtre « Before you Begin » faites « Next »

4- Dans la fenêtre « Specify Name and Location » donnez un nom à votre machine de référence et sélectionnez « Store the virtual machine in a different location » et cliquez sur « Browse… »

5- Sélectionnez le répertoire dans lequel seront stocké les éléments de configuration de la VM puis « Select Folder »

6- Faites « Next »

7- Sélectionnez le type de génération de la VM (dans mon cas une VM de génération 2) et faites « Next »

8- Assignez une quantité de RAM à la VM (au moins le prérequis système) et faites « Next ».

9- Il n’est pas obligatoire d’assigner une carte réseau pour la machine de référence, faites « Next ».

10- Dans la configuration du disque dur choisissez une taille suffisante pour l’OS (et éventuellement les mises à jour), puis faites « Next ».

11- Sélectionnez l’ISO du Système d’exploitation et faites « Next »

12- Relisez le résumé de la configuration et faites « Finish »

13- Une fois la VM créée dans Hyper-V Manager sélectionnez la et faites « Settings »

14- Naviguez jusque « Checkpoint » et désélectionnez « Enable Checkpoints » puis faites « OK »

La VM est maintenant prête, nous allons donc pouvoir déployer l'image, rendez vous donc dans la partie 2.

 

SCCM : Failed To Run Task Sequence on Hyper-V VM Generation 2

Les messages d'erreur sont parfois frustrant par exemple celui ci-dessous:

En plus de ne pas être des plus explicit, une multitude de cas sont exposé sur internet avec des code erreur divers et variés.

Sans l'accès au log tout devient plus dificile, dans le cas de figure ici présent j'ai voulu déployer une VM de génération 2 sous Hyper-V via un média de boot (clés USB), je pensais que j'allais y passer des heures, mais en fait non 10 minutes tout au plus.

1 - Les causes

Les VM de génération 2 sous Hyper-V, ont par défaut le Secure boot activé.

Le secure boot est une fonctionnalité qui vérifie que le "Boot Loader" est signé par une autorité de confiance de la base UEFI pour empêcher l'exécution non authorisé d'un "Firmware", "OS" ou "Driver"  au démarrage.

Sauf que dans notre cas cela nous empêche de créer la partition pour le "Staging" du WinPe.

2 - Les solutions

désactivez le secure boot.

  1. Lancez Hyper-V management.
  2. Sélectionnez votre VM.
  3. Faites un clic droit "Properties".
  4. Dans "Settings for xxxxxx on xxxxxx" sélectionnez "Security".
  5. décochez la case "Enable Secure boot".
  6. Validez.

 

Créez une partition UEFI.

En cherchant dans les logs on pourrait trouver l'erreur suivante "Unable to find the partition that contains the OS boot loaders. Please ensure the hard disks have been properly partitioned".

  1. Après avoir désativer le sécure boot, démarrez votre VM et faites "F8" durant le démarrage.
  2. Dans l'invite de commande exécutez les commandes suivantes:
    1.  Diskpart (lancez l'utilitaire Diskpart)
    2. List Disk (Listez les disque)
    3. Select disk 0 (sélectionnez le disque 0 qui représente le disque système de la VM)
    4. Clean (permet d'effacer les données)
    5. Convert gpt (permet de convertir le disque)
    6. Create partition efi size=200 (création d'une partition Efi)
    7. Assign letter=s (Assignez un lettre disponible à la partition)
    8. Format quick fs=FAT32 (Formatez la partition)
    9. Create partition msr size=128 (création d'une partition msr)
    10. Create partition primary (création d'une partition Windows)
    11. Assign letter=c (Assignez la lettre C)
    12. Format quick fs=NTFS (Formatez en NTFS)
    13. Exit (quittez Diskpart)
  3. Normalement vous devriez maintenant pouvoir lancer la séquencce de tâche sans encombre.

 

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
    }
}

Nested Hyper-V sous Windows server 2016 TP5 : erreur au démarrage d’une machine virtuelle

 

Si vous rencontrer sous cette erreur en démarrant une machine virtuelle en utilisant la fonctionnalité Nested sous TP5

 

image

 

Cela est du au faite que votre Hyperviseur hôte n’est pas dans la bonne version de Build.

Pour que ce message n’apparaisse plus, il faut que la version de l’Hyperviseur hôte démarrant des VM Hyper-v TP5 soit également en version TP5.

Création d’une application virtuelle pour SCVMM 2012

Pour créer notre package d’application virtualisée, vous devez installer une machine qui servira de référence.

Cette machine doit se rapprocher le plus possible en terme de configuration (registre, ..) de l’environnement sur lequel sera déployé votre application virtualisée.

Connectez-vous sur cette machine et installer le séquenceur App-V.

Les binaires sont disponibles dans la librairie VMM (Application Framework)

image

L’application permettant la capture est désormais installée.

image

Lancer l’application et cliquer sur Create a New Virtual Application Package

image

 

Cliquer sur Next

clip_image001

 

Sélectionner l’application à virtualiser. Dans notre exemple, nous allons installer Filezilla.

Cliquer sur Next

image

Donner un nom à votre Package et cliquer sur Next

image

image

 

L’installation démarre. Procéder à l’exécution de votre application avec les paramètres tel que vous désirez que ceux-ci soient capturés.

image

Une fois l’application installée, vous pouvez procéder à d’autres modifications sur la machine. Ceux-ci seront capturés.

Cliquer maintenant sur I am finished installing et cliquer sur Next

image

image

Cliquer sur Next

image

image

Cliquer sur Close

image

Vous avez maintenant fini de capturer votre application. Il faut maintenant sauvegarder votre projet.

Cliquer sur File et Save as

image

image

Le package est désormais créé. Il ne vous reste plus qu’à déplacer votre package dans la librairie VMM.

image

image

 

Dans ce blog, vous pourrez trouver un exemple d’une installation d’application virtualisée à travers un Update de service  de type In-Place dans VMM 2012

http://blog.piservices.fr/post/Mise-a-jour-de28099un-service-dans-SCVMM-2012.aspx

Mise à jour d’un service dans SCVMM 2012

 

Nous avons une VM associée à un service. Nous allons ici mettre à jour le service en installant une application virtualisée : SumatraPDF

Notre service nommé Generic Server 2K12 a été installé à partir du service Template ST –Generic Server 2K12.

image

Pour mettre à jour notre service, nous allons dupliquer le service Template ST –Generic Server 2K12, effectuer notre modification sur celui-ci et ensuite l’appliquer à notre service en production.

Aller sur le service Template à éditer

image

Faites un clic droit et cliquer Copy

image

Une copie apparait dans la console.

image

Sur celui-ci à l’aide d’un clic droit allez dans Open Designer

image

La fenêtre d’édition du service Template apparait

Double-cliquer sur votre service Template

image

 

Aller dans la section Application Configuration et cliquez sur Add et sélectionner Virtual application

image

 

Cliquez sur Browse

image

Sélectionner votre Package. Pour l’exemple, nous allons sélectionner notre package correspondant à SumatraPDF.

Cliquez sur OK.

image

 

Donnez un nom à votre application virtuelle et cliquez sur ok.

image

Cliquez maintenant sur Save and Validate.

image

 

Faites maintenant un clic droit sur le service Template dupliqué et cliquer sur Publish.

image

Nous allons maintenant appliquer notre service Template sur le service en production.

Remarque : pour que la modification apportée sur le service soit effective, il faut que la/les VM présente sous le service dispose(nt) de l’agent App-V. (Celui-ci est présent dans la librairie VMM)

Affichez les services et faites un clic droit sur le service à updater et sélectionner Set Template

image

Cliquez sur Browse pour sélectionner le service précédemment configuré.

image

 

Cliquer sur Next

image

Sélectionner Apply updates to existing to virtual machines in-place et cliquer sur Next.

Cocher la case Apply the updates et cliquer sur Next puis sur Finish

image

Le job se lance.

image

Une fois celui-ci finit, rendez vous sur la / les VMs concernés.

SumatraPDF s’est bien installé sur l’ensemble des VMs de notre service.

image

SCVMM 2012 Computer already exist lors d’un Scale-Out de service

Vous souhaitez déployer une seconde instance de votre service avec un nom prédéfinit mais lorsque vous vous apprêtez à déployer votre VM, un message d’erreur apparait :

image

Cependant, dans votre Cloud privé, aucune machine virtuelle de ce nom n’est présente.

Pour remédier à ce problème, il est nécessaire d’accéder à la base de donnée VMM sur le serveur SQL et de supprimer l’entrée présente avec ce nom de VM.

Connecter vous sur votre base de donnée VMM

image

Aller sur la table tbl_WLC_VMDeploymentConfig

image

Editer la table et rechercher la colonne ComputerName et identifier votre nom de VM posant problème.

image

Supprimer la ligne du tableau.

image

Le problème de la VM déjà existante lors du Scale-Out dans VMM n’apparait plus. La VM peut être déployée.

image

Création et affectation d’un Switch convergé depuis SCVMM 2012

Nous allons ici créer un Switch Logique au travers de VMM et l’affecter à notre hôte Hyper-V.

L’affectation du Switch via VMM  va créer dans notre exemple le Teaming des cartes ainsi que les différentes VNICs avec la QOS associé.

Dans VMM, Créer un nouveau Port Profile

image

Donner un nom à ce nouveau Profil et sélectionner la configuration de Teaming que vous désirez créer pour vos hôtes Hyper-V en sélectionnant Uplink port profile et en sélectionnant le mode de Teaming souhaité et son algorithme de Load Balancing.

image

Sélectionner les différents Network Site que vous souhaiter intégrer a votre Port Profile et cocher Enable Windows Network Virtualization.

image

Le résumé de vos actions apparait.

Cliquer sur Finish

image

 

Nous allons maintenant créer un Logical Switch.

image

 

Cliquer sur Next

image

 

Donner le nom du Switch virtuel et cliquer sur Next.

image

 

Cliquer sur Next

 

image

 

Sélectionner Team et cliquer sur Add

image

Sélectionner le Port Profile précédemment créé et cliquer sur Ok.

image

Cliquer sur Next

image

Dans l’onglet Virtual Port, cliquer sur Add

image

Sélectionner les virtuals ports comme sur l’exemple ci dessous via le bouton Add.

(Ces virtuals ports sont nativement présent dans VMM et détiennent des Bandwidth Weight qui définiront notre QOS)

image

 

image

image

 

Cliquer sur Next

image

 

Cliquer sur Finish

image

 

Nous allons maintenant affecter à notre hyperviseur le Switch Logique précédemment créé.

Sélectionner votre Hôte et afficher ses propriétés.

image

 

Aller dans l’onglet Virtual Switches

image

Sélectionner New Logical Switch

image

 

Ici sélectionner les différentes interfaces réseaux devant participer à la configuration de votre Switch.

image

 

Nous allons maintenant ajouter 3 VNICs pour notre exemple qui permettront d’avoir des VNICs nécessaire pour notre cluster Hyper-V :

  • VNIC Cluster
  • VNIC Live Migration
  • VNIC Management

Cliquer sur New Virtual Network Adapter de manière à ajouter des VNICs

image

Procéder à la configuration de votre VNIC

image

Procéder de même pour les autres VNICs et cliquer sur OK.

image

 

Un message apparait. Cliquer sur OK

image

 

Votre Hyperviseur applique la configuration de votre Switch Convergé poussé depuis VMM.

Nos 3 VNICs sont maintenant apparue sur notre Hyperviseur.

image

 

Ces 3 VNICs détiennent également les configurations réseaux qui ont été appliqués.

image