9.3. Fournisseur de bureau Oracle VM VirtualBox

9.3.1. Pourquoi mes pilotes audio Windows 7 ne sont-ils pas installés automatiquement ?
9.3.2. L'installation de Oracle VM VirtualBox échoue avec des erreurs "Postinstall Script Did Not Complete Successfully" (Le script de post-installation ne s'est pas terminé correctement).
9.3.3. J'obtiens une erreur lorsque j'ajoute un hôte Oracle VM VirtualBox à un fournisseur de bureau.
9.3.4. Toutes les versions de Oracle VM VirtualBox sont-elles compatibles avec Oracle VDI ?
9.3.5. Je peux voir mon bureau Oracle VM VirtualBox hébergé, mais il ne démarre pas.
9.3.6. L'horloge de mon bureau Oracle VM VirtualBox est trop lente.
9.3.7. Quelle est la configuration requise pour la haute disponibilité de Oracle VM VirtualBox ?
9.3.8. Comment modifier le mot de passe de l'utilisateur VirtualBox ?
9.3.9. Le texte est flou dans Internet Explorer.
9.3.10. Une alerte critique s'affiche lors de l'ajout de stockage à un fournisseur de bureau
9.3.11. Un stockage ne peut pas être supprimé d'un fournisseur de bureau
9.3.12. L'ajout d'un stockage échoue avec une erreur "Impossible d'arrêter le cluster"

9.3.1. Pourquoi mes pilotes audio Windows 7 ne sont-ils pas installés automatiquement ?

Windows 7 32 bits n'est pas fourni avec les pilotes du matériel audio Oracle VM VirtualBox émulé (AC'97). Toutefois, l'exécution de Windows Update devrait résoudre ce problème grâce à la récupération automatique d'un pilote approprié. Après cette mise à jour, et un redémarrage, le son devrait fonctionner.

Avec les versions 64 bits de Windows 7, vous devez télécharger les pilotes Realtek AC'97 pour activer le son.

Pour obtenir des instructions sur le téléchargement, reportez-vous à la page http://www.realtek.com.tw/downloads.

9.3.2. L'installation de Oracle VM VirtualBox échoue avec des erreurs "Postinstall Script Did Not Complete Successfully" (Le script de post-installation ne s'est pas terminé correctement).

Si vous êtes en train d'installer Oracle VM VirtualBox, l'erreur suivante peut s'afficher dans la console :

## Executing postinstall script.
Configuring VirtualBox kernel modules...
VirtualBox Host kernel module unloaded.
devfsadm: driver failed to attach: vboxdrv
Warning: Driver (vboxdrv) successfully added to system but failed to attach
can't load module: No such device or address
## Aborting due to attach failure.
## Configuration failed. Aborting installation.
pkgadd: ERROR: postinstall script did not complete successfully

Installation of <SUNWvbox> partially failed.

Cette erreur se produit généralement lorsque des versions précédentes de VirtualBox sont toujours installées. Essayez de supprimer VirtualBox (./vb-install -u). Vérifiez ensuite que les packages suivants ont bien été supprimés :

  • SUNWvbox

  • SUNWvboxkern

Redémarrez, puis recommencez l'installation.

9.3.3. J'obtiens une erreur lorsque j'ajoute un hôte Oracle VM VirtualBox à un fournisseur de bureau.

Des erreurs peuvent se produire lorsque vous ajoutez un hôte Oracle VM VirtualBox à un fournisseur de bureau. Dans Oracle VDI Manager, les alertes d'erreur peuvent s'afficher lors des étapes Spécification de l'hôte ou Vérification du certificat de l'assistant de configuration.

Etape Spécification de l'hôte

Après avoir saisi les détails de l'hôte, les actions suivantes se produisent :

  • Le système d'exploitation de l'hôte est vérifié.

  • Le nom DNS de l'hôte est résolu (si un nom DNS est utilisé).

  • Les certificats SSL et SSH de l'hôte sont extraits.

Si le message "The operating system does not match because all hosts should run the same operating system." s'affiche, cela signifie que vous ne pouvez pas ajouter l'hôte au fournisseur de bureau. En raison des différences de disponibilité des types de stockage et de la façon dont ils sont utilisés, les hôtes de virtualisation pour un fournisseur de bureau Oracle VM VirtualBox doivent utiliser le même système d'exploitation. Si vous disposez d'un mélange d'hôtes de virtualisation Oracle Solaris et Oracle Linux, vous devez leur créer des fournisseurs de bureaux séparés.

Une erreur peut être provoquée par des erreurs DNS, soit lors de la résolution du nom d'hôte, soit lors du contact de l'hôte. Si cela se produit, vérifiez les éléments suivants :

  • Vérifiez l'exactitude de toutes les informations que vous avez saisies, y compris les ports SSH et SSL.

    Vous indiquez le port SSL lorsque vous installez VirtualBox.

  • Vérifiez que l'hôte Oracle VDI peut résoudre l'hôte à l'aide de la commande nslookup <hostname> sur l'hôte Oracle VDI.

  • Vérifiez que l'hôte est en cours d'exécution et que le service SSH est démarré :

    # svcs svc:/network/ssh:default

    Le service doit être en ligne. Si le service est signalé comme étant en maintenance, essayez de le réinitialiser via la commande :

    # svcadm clear <service_frmi>

Etape Vérification du certificat

Une erreur lors de l'étape Vérification du certificat indique que le service Web VirtualBox ne peut pas être contacté ou n'est peut-être pas en cours d'exécution.

Vérifiez que le service Web VirtualBox est en ligne, à l'aide de la commande suivante :

# svcs svc:/application/virtualbox/webservice:default

Si le service est en mode de maintenance, utilisez la commande suivante pour effacer le service et vérifier à nouveau le statut :

# svcadm clear svc:/application/virtualbox/webservice:default

Si le service est hors ligne, utilisez la commande suivante pour l'activer :

# svcadm enable svc:/application/virtualbox/webservice:default

9.3.4. Toutes les versions de Oracle VM VirtualBox sont-elles compatibles avec Oracle VDI ?

Non. Pour plus d'informations sur la prise en charge, reportez-vous à la Section 4.1.2, « Configuration système requise pour Oracle VM VirtualBox ».

Si vous voulez créer des modèles de machines virtuelles localement, par exemple sur un ordinateur portable, assurez-vous d'utiliser la même version que celle installée dans l'hôte de votre fournisseur de bureau Oracle VM VirtualBox. Vous serez ainsi certain d'installer la version appropriée des invités ajoutés et éviterez les problèmes d'incompatibilité avec les fichiers de configuration XML de vos machines virtuelles, problèmes qui peuvent empêcher leur importation dans Oracle VDI.

9.3.5. Je peux voir mon bureau Oracle VM VirtualBox hébergé, mais il ne démarre pas.

Dans certains cas plutôt rares, il arrive qu'un bureau demeure enregistré et éteint dans un hôte Oracle VM VirtualBox. Les bureaux qui restent dans cet état pendant plusieurs minutes peuvent être supprimés de l'hôte VirtualBox en toute sécurité, car la configuration est stockée dans la base de données Oracle VDI et toutes les données sont conservées dans un hôte de stockage. Lorsque vous annulez manuellement l'enregistrement d'un bureau dans VirtualBox, assurez-vous d'annuler également l'enregistrement de l'image de disque correspondante.

Résolution du problème :

  1. Connectez-vous avec le nom d'utilisateur spécifié lors de l'installation de VirtualBox (en général 'root').

  2. Déterminez l'UUID de la machine virtuelle :

    • Exécutez la commande VBoxManage list vms.

    • Vous pouvez également utiliser Oracle VDI Manager pour récupérer le nom du volume ZFS répertorié dans l'onglet de résumé des paramètres du bureau. L'UUID correspond à la chaîne située après la barre oblique (exemple : f3ced2bb-d072-4efc-83c9-5a487872919d).

  3. Pour annuler l'enregistrement de la machine virtuelle dans l'hôte VirtualBox (cette opération ne supprime pas le bureau Oracle VDI), exécutez la commande :

    VBoxManage unregistervm <uuid> -delete
  4. Pour annuler l'enregistrement du disque virtuel dans l'hôte VirtualBox (cette opération ne supprime pas le bureau Oracle VDI), exécutez la commande :

    VBoxManage unregisterimage disk <uuid>

9.3.6. L'horloge de mon bureau Oracle VM VirtualBox est trop lente.

Windows permet aux applications aléatoires de définir la fréquence d'horloge par défaut 100 Hz (qui donne de très bonnes performances des machines virtuelles dans les hôtes Oracle Solaris) sur une valeur arbitrairement plus élevée, en général 1 kHz.

En général, VBox.log (~/.VirtualBox/Machines/VDA/<VMNAME>/Logs/VBox.log) donne de manière fiable la résolution d'horloge actuelle si vous recherchez la dernière ligne contenant PIT: mode=... (ch=0). Cela fonctionne pour tout système d'exploitation invité, pour autant que le nombre de CPU assignées à une machine virtuelle reste défini sur la valeur par défaut (1). Cela devrait concerner la majorité des configurations utilisées avec Oracle VDI.

Les lignes typiques sont PIT: mode=2 count=0x2ead (11949) - 99.85Hz (ch=0) et PIT: mode=2 count=0x4ad (1197) - 996.81Hz (ch=0).

En supposant qu'une seule application demande une résolution d'horloge plus élevée, il suffit d'arrêter toutes les applications en exécution une par une, puis de vérifier si le fichier journal affiche une baisse de la résolution d'horloge pour la détecter. L'indication est immédiate.

De même, l'examen du résultat de la commande prstat permet souvent d'identifier les processus de machine virtuelle qui utilisent plus de temps CPU que les autres. Cela permet de réduire le nombre de candidats lorsque quelques machines virtuelles seulement utilisent une résolution d'horloge de 1 kHz.

Les problèmes de performances dus à la résolution d'horloge restent souvent en sommeil jusqu'à ce que le nombre de machines virtuelles d'un hôte VirtualBox dépasse le nombre de coeurs CPU (true) du serveur. La raison est que VirtualBox tente de gérer au mieux la situation, ce qui laisse généralement un coeur CPU pleinement occupé. Lorsqu'il existe plusieurs de ces machines virtuelles, elles se bloquent les unes les autres, ce qui provoque un symptôme facile à observer : l'horloge de la machine virtuelle s'exécute bien plus lentement que prévu.

9.3.7. Quelle est la configuration requise pour la haute disponibilité de Oracle VM VirtualBox ?

La haute disponibilité d'une plate-forme de virtualisation Oracle VM VirtualBox exige au moins deux hôtes VirtualBox. En cas de panne de l'un des serveurs VirtualBox, toutes les sessions de bureau existantes sont interrompues. Les sessions interrompues redémarrent ensuite sur les serveurs VirtualBox au fur et à mesure que les utilisateurs les demandent, tant que la mémoire disponible est suffisante.

La haute disponibilité pour Oracle VDI, Sun Ray Software et MySQL exige deux hôtes Oracle VDI. Pour plus d'informations sur les configurations matérielles prenant en charge ce type de redondance, reportez-vous à la Section 2.1, « A propos des Centres et des Hôtes Oracle VDI ».

9.3.8. Comment modifier le mot de passe de l'utilisateur VirtualBox ?

Lorsque vous ajoutez un hôte Oracle VM VirtualBox à un fournisseur de bureau, vous fournissez le nom d'utilisateur et le mot de passe de l'utilisateur qui exécute VirtualBox sur l'hôte. Ces informations d'authentification sont les mêmes que celles fournies lors de l'installation de VirtualBox. Oracle VDI utilise les informations d'authentification pour accéder à l'hôte VirtualBox à l'aide de SSH et pour accéder au service Web VirtualBox.

Avant de modifier le mot de passe de l'utilisateur VirtualBox, il est préférable d'activer le mode de maintenance pour l'hôte VirtualBox afin de minimiser les perturbations des utilisateurs.

Pour modifier le mot de passe de l'utilisateur VirtualBox, vous devez procéder comme suit :

  1. Modifiez le mot de passe de l'utilisateur UNIX.

    1. Connectez-vous à l'hôte VirtualBox en tant qu'utilisateur root ou utilisateur VirtualBox.

    2. Modifiez le mot de passe de l'utilisateur VirtualBox.

      Suivez la stratégie standard de votre organisation pour la modification des mots de passe.

      Par exemple, utilisez la commande passwd :

      # /usr/bin/passwd
      passwd: Changing password for root
      New Password:
      Re-enter new Password:
      passwd: password successfully changed for root
      
  2. Modifiez le mot de passe de l'utilisateur du service Web VirtualBox.

    1. Connectez-vous à l'hôte VirtualBox en tant qu'utilisateur root.

    2. Générez le hachage de mot de passe du nouveau mot de passe.

      Vous pouvez utiliser la ligne de commande de VirtualBox pour générer le hachage.

       # VBoxManage internalcommands passwordhash <Password>

      Exemple :

      # VBoxManage internalcommands passwordhash T0pSecr3t
      Password hash: bfd5bde76fcee3c2e6fc583cd0541569a1d35d551c19d99b36a0ee7628b4b114
      
    3. Modifiez le hachage de mot de passe pour l'utilisateur du service Web.

      Le service Web VirtualBox utilise la bibliothèque VBoxAuthSimple pour authentifier les utilisateurs du service Web. Le mot de passe haché est stocké dans les éléments de données supplémentaires globales de VirtualBox.

      # VBoxManage setextradata global VBoxAuthSimple/users/<User> <PasswordHash>

      Exemple :

      # VBoxManage setextradata global VBoxAuthSimple/users/root \
      bfd5bde76fcee3c2e6fc583cd0541569a1d35d551c19d99b36a0ee7628b4b114
      
    4. Vérifiez que le hachage de mot de passe stocké pour l'utilisateur du service Web VirtualBox est correct.

      # VBoxManage getextradata global VBoxAuthSimple/users/<User>

      Exemple :

      # VBoxManage getextradata global VBoxAuthSimple/users/root
      Value: bfd5bde76fcee3c2e6fc583cd0541569a1d35d551c19d99b36a0ee7628b4b114
      
  3. Modifiez le mot de passe de l'hôte VirtualBox dans Oracle VDI.

    1. Dans Oracle VDI Manager, accédez à Fournisseurs de bureau.

    2. Sélectionnez le fournisseur de bureau qui contient l'hôte VirtualBox.

    3. Ouvrez l'onglet Hôte, sélectionnez l'hôte et cliquez sur Modifier.

    4. Dans le champ Mot de passe, saisissez le nouveau mot de passe et cliquez sur Suivant pour confirmer les détails modifiés.

    Vous pouvez également utiliser la commande vda provider-host-setprops pour modifier le mot de passe.

9.3.9. Le texte est flou dans Internet Explorer.

Lorsque le texte affiché dans Internet Explorer est flou pour certains utilisateurs, le problème peut être dû au fait que Oracle VM VirtualBox interprète par erreur la zone en tant que vidéo presque en plein écran. Cela est dû à la façon dont Internet Explorer redessine la fenêtre du navigateur.

Pour résoudre ce problème, vous pouvez limiter les zones que Oracle VM VirtualBox détecte et envoie sous forme de vidéo. Pour ce faire, vous devez configurer une propriété pool via la commande suivante :

/opt/SUNWvda/sbin/vda pool-setprops -p limited-rca-detection=enabled <PoolName>

Lorsque cette propriété est activée, les surfaces d'écran supérieures à 800 x 600, mais plus petites que le plein écran, ne sont pas réduites.

9.3.10. Une alerte critique s'affiche lors de l'ajout de stockage à un fournisseur de bureau

Une alerte critique peut s'afficher dans Oracle VDI Manager lorsque vous créez un fournisseur de bureau Oracle VM VirtualBox ou lorsque vous ajoutez du stockage à un fournisseur existant et que les hôtes VirtualBox sont exécutés sur la plate-forme Oracle Linux. Sur la ligne de commande, l'état du fournisseur est affiché comme critique. L'alerte prenant beaucoup de temps à s'effacer, il peut apparaître qu'une erreur s'est produite.

L'alerte s'affiche car le stockage configuré n'est pas encore prêt à l'emploi. Lorsque les hôtes VirtualBox sont exécutés sur la plate-forme Oracle Linux, Oracle VDI formate le stockage à l'aide d'OCFS2 (Oracle Cluster File System version 2). L'alerte critique s'affiche pendant toute la durée du formatage du stockage. Cela affecte les types de stockage Sun ZFS et iSCSI uniquement, les types de stockage de système de fichiers local et réseau ne sont pas affectés.

9.3.11. Un stockage ne peut pas être supprimé d'un fournisseur de bureau

Problème : Un stockage ne peut pas être supprimé d'un fournisseur de bureau car le bouton Supprimer est désactivé dans l'onglet Stockage d'Oracle VDI Manager.

Solution : Vous devez d'abord activer le mode de maintenance pour le stockage. Cela permet à Oracle VDI de migrer les bureaux vers un autre hôte de stockage et de démonter les systèmes de fichiers OCFS2 si nécessaire. Une fois le stockage en mode de maintenance, il peut être supprimé.

Si le stockage est un stockage local et que plusieurs hôtes de virtualisation existent, Oracle VDI crée automatiquement un stockage local pour chaque hôte de virtualisation de sorte que l'espace libre et le nombre de bureaux puissent être surveillés sur chaque hôte. Vous devez activer le mode de maintenance pour tous les stockages locaux avant de pouvoir supprimer le stockage local.

9.3.12. L'ajout d'un stockage échoue avec une erreur "Impossible d'arrêter le cluster"

Problème : Lorsque vous ajoutez pour la première fois un stockage iSCSI ou Sun ZFS à un fournisseur de bureau Oracle Linux VirtualBox, l'opération peut échouer avec une erreur Impossible d'arrêter le cluster car le signal d'activité est toujours actif . Le problème est provoqué par l'échec de l'arrêt d'un cluster Oracle OCFS2 (Cluster File System version 2).

Solution : Arrêtez les services OCFS2, déconnectez la cible iSCSI et ajoutez à nouveau le stockage.

Pour arrêter les services OCFS2 et déconnecter la cible iSCSI, procédez comme suit sur chaque hôte de virtualisation pour le fournisseur de bureau :

  1. Connectez-vous à l'hôte de virtualisation en tant qu'utilisateur root.

  2. Arrêtez le service OCFS2.

    # /etc/init.d/ocfs2 stop

    Cette commande devrait démonter tous les systèmes de fichiers OCFS2 et arrêtez toutes les activités OCFS2.

  3. Vérifiez que le système de fichiers OCFS2 n'est pas monté dans /vdi/<mount>.

    Utilisez la commande mount pour vérifier si quelque chose est monté dans cet emplacement.

    Si le système de fichiers n'est pas démonté, essayez de le démonter à l'aide de la commande suivante :

    # umount /vdi/<mount>
    

    S'il n'est pas possible de démonter le système de fichiers OCFS2 car le périphérique est occupé. Utilisez la commande suivante pour arrêter tous les processus en cours d'exécution sur le montage :

    # fuser -k /vdi/<mount>
    
  4. Arrêtez le service de cluster O2CB.

    # /etc/init.d/o2cb offline 
    # /etc/init.d/o2cb unload
  5. Déconnectez la cible iSCSI.

    Utilisez la commande iscsiadm -m session pour répertorier les cibles iSCSI sur l'hôte. Exemple :

    # iscsiadm -m session
    tcp: [1] 192.168.1.100:3260,1 iqn.1986-03.com.sun:vdi:j4c4iwosixizjpniicm9:y29qlvunnmdnes5jolyu
    

    Dans cette exemple, l'ID de session est indiqué entre crochets [1], suivi de l'adresse IP et du port du serveur iSCSI (192.168.1.100:3260), suivi du nom de la cible iSCSI (iqn.1986-03.com.sun:vdi:j4c4iwosixizjpniicm9:y29qlvunnmdnes5jolyu).

    Déconnectez-vous de la cible iSCSI.

    # iscsiadm -m node -T <targetname> -p <ip>:<port> --logout
    

    Exemple :

    # iscsiadm -m node -T iqn.1986-03.com.sun:vdi:j4c4iwosixizjpniicm9:y29qlvunnmdnes5jolyu \
    -p� 192.168.1.100:3260 --logout

    Supprimez la cible iSCSI.

    # iscsiadm -m node -T <targetname> -p <ip>:<port> -o delete
    

    Exemple :

    # iscsiadm -m node -T iqn.1986-03.com.sun:vdi:j4c4iwosixizjpniicm9:y29qlvunnmdnes5jolyu \
    -p 192.168.1.100:3260 -o delete