Les problèmes abordés dans cette section sont spécifiques aux instances de machine virtuelle.
Une instance de machine virtuelle pourra être en statut d'erreur car vous tentez de l'installer sur un système hôte qui a une architecture différente. Dans ce cas, vous risquez de ne pas recevoir un message d'erreur vous indiquant précisément que les architectures ne correspondent pas. Pour éviter ce problème, assurez-vous d'avoir correctement défini la propriété architecture de l'image lorsque vous téléchargez celle-ci depuis le magasin d'images glance. Si vous utilisez Horizon pour télécharger une image, vous devez définir les propriétés de l'image après les téléchargements. Vous pouvez également utiliser la ligne de commande pour télécharger l'image et définir les valeurs de propriété en une seule commande glance image-create. Pour un exemple, voir Préparation des images pour le référentiel Glance.
Certaines informations qu'OpenStack retourne sur une instance de machine virtuelle ne correspondent pas aux informations retournées par Oracle Solaris sur la zone correspondante. Les informations affichées dans Horizon ou par la commande nova peuvent ne pas correspondre aux informations affichées par la commande zoneadm ou par d'autres commandes Oracle Solaris.
Le nom d'une instance de machine virtuelle tel qu'affiché dans Horizon ou par la commande nova list est le nom que vous avez affecté lors de la création de l'instance, tel que example-instance. Le nom de la zone affiché par la commande zoneadm list est identique à instance-00000001. Utilisez la commande nova show pour déterminer quelles zones sont associées à quelles instances de machine virtuelle. Dans la sortie nova show, la valeur de la propriété OS-EXT-SRV-ATTR:instance_name est le nom de la zone, et la valeur de la propriété name est le nom de l'instance de machine virtuelle.
L'UUID d'une instance de machine virtuelle telle qu'affichée dans Horizon ou par la commande nova show ne correspond pas à l'UUID de la même zone telle qu'affichée par la commande zoneadm list -p. L'UUID affichée par la commande zoneadm est un identificateur différent de celui utilisé pour Nova.
Le nombre de CPU virtuelles d'une instance de machine virtuelle tel qu'affiché dans Horizon est le nombre de CPU plafonnées qui sont virtualisées uniquement dans la mesure du nombre de fractions de CPU pouvant être utilisées par l'instance. Ce chiffre ne fournit pas d'observabilité à l'intérieur de l'instance plafonnée. La commande psrinfo signale les CPU dédiées qui sont allouées à la zone.
La quantité de mémoire d'une instance de machine virtuelle telle qu'affichée dans Horizon peut être différente de la quantité de mémoire que la commande prtconf affiche lorsque vous êtes connecté à cette instance de machine virtuelle. Horizon indique la quantité de mémoire spécifiée par la variante utilisée pour créer l'instance de machine virtuelle. La commande prtconf signale l'ensemble de la mémoire système.
La quantité de stockage d'une instance de machine virtuelle telle qu'affichée dans Horizon peut être différente de la quantité de stockage affichée lorsque vous êtes connecté à cette instance de machine virtuelle, sauf si l'instance de machine virtuelle est une zone non globale utilisant ZOSS (Zones on Shared Storage).
Dans certains cas, vous pouvez recevoir des messages d'erreur relatifs aux informations d'identification incorrectes qui vous empêchent d'émettre des commandes de service. Par exemple, lors de l'exécution d'une commande glance, il est possible que le message d'erreur suivant s'affiche :
Invalid OpenStack Identity credentials.
La cause à l'origine de ce message peut être différente à chaque fois. En conséquence, vous devez consulter les journaux pour limiter les causes probables. Par exemple, pour le service glance, consultez le contenu des journaux de service SMF Glance. Le fichier /var/log/glance/api.log peut signaler ce qui suit :
WARNING keystonemiddleware.auth_token [-] Authorization failed for token
Si vous avez défini Debug = True et Verbose = True dans les fichiers de configuration glance, vous verrez d'autres détails dans le fichier /var/svc/log/application-openstack-glance-glance-api:default.log, notamment :
DEBUG keystonemiddleware.auth_token [-] Received request from user: user_id None, project_id None, roles None service: user_id None, project_id None, roles None __call__/usr/lib/python2.7/vendor-packages/keystonemiddleware/auth_token.py:821
Vous pouvez explorer les zones suivantes pour résoudre le problème.
Vérifiez les fichiers de configuration du service pour vous assurer que les paramètres appropriés sont correctement définis.
Vérifiez que les variables shell globales sont correctement définies pour le service. Pour le service Glance, par exemple, les variables suivantes devraient être définies :
OS_USERNAME=glance
OS_PASSWORD=service-password
OS_TENANT_NAME=service
OS_AUTH_URL=http://$CONTROLLER_ADMIN_NODE:5000/v2.0
Si la commande continue d'échouer et que les mêmes messages d'erreur sont affichés, il vous faudra peut-être recréer l'utilisateur du service pour générer de nouvelles informations d'identification. Etudiez l'exemple suivant :
# export OS_USERNAME=keystone # export OS_PASSWORD=service-password # export OS_TENANT_NAME=service # export OS_AUTH_URL=http://$CONTROLLER_ADMIN_NODE:5000/v2.0 # keystone user-list
Dans la sortie de cette commande, notez le numéro de l'ID de l'utilisateur du service altéré. Vous devrez supprimer cet utilisateur et le recréer avec des informations d'identification correctes :
# keystone user-delete user-ID # keystone user-create --name glance --password service-password # keystone user-role-add --user=glance --tenant=service --role=admin