Référence Pour: administrateurs, utilisateurs

Erreurs de datastore

Causes et solutions des codes d'erreur des datastores, des fichiers de datastore, des téléversements et des images de disque.

error.datastore.not_shareable

Texte dans la console
Le datastore {datastore} ne peut pas être monté sur un hôte ni démonté d'un seul hôte. Supprimez-le, ou choisissez un datastore NFS.
Signification pour les clients de l'API
The datastore cannot be mounted on or unmounted from a single host: an iSCSI (VMFS-like) datastore belongs to one host, a local datastore to its own.
Code
FAILED_PRECONDITION, HTTP 412
ArgumentContenu
datastorele nom du datastore.

Cause. Un datastore devait être monté sur un hôte, ou démonté d'un seul hôte, qui ne peut pas le partager. Un datastore sur un LUN iSCSI (le type semblable à VMFS) est un système de fichiers d'un seul hôte et ne peut pas passer d'un hôte à l'autre de cette façon. Un datastore local est un répertoire de son propre hôte et ne peut être remonté que sur cet hôte.

Solution.

  1. Pour ne plus utiliser un datastore iSCSI, supprimez-le : kyvernon host remove-datastore <id> <ds-id>, ou de tous les hôtes : kyvernon datastore remove <ds-id>.
  2. Pour partager du stockage entre hôtes, utilisez un datastore NFS et montez-le sur chaque hôte : kyvernon host mount-datastore <id> <ds-id>.

error.datastore.insufficient_space

Texte dans la console
Le datastore {datastore} a de la place pour {available} octets ; {requested} octets ont été demandés. Choisissez un disque plus petit ou un autre datastore.
Signification pour les clients de l'API
A new or grown disk asks for more bytes than the datastore has free (thick) or than the thin-disk cap.
Code
FAILED_PRECONDITION, HTTP 412
ArgumentContenu
requestedles octets demandés par l'opération.
availableles octets que le datastore, ou la limite des disques à allocation dynamique, peut fournir.
datastorele nom du datastore.

Cause. Un disque nouveau ou agrandi demande plus d'octets que le datastore n'en a de libres (disques à allocation statique), ou plus que le plus grand disque à allocation dynamique autorisé. Cette limite est max_thin_disk_gib dans la section [vm_ops] de la configuration du contrôleur, ou la capacité du datastore lorsque le paramètre vaut 0.

Solution.

  1. Choisissez une taille de disque plus petite, ou un datastore avec plus d'espace libre.
  2. Libérez de l'espace sur le datastore : supprimez les fichiers que rien n'utilise. kyvernon datastore orphans <id> liste les images de disque qu'aucune machine virtuelle, aucun modèle ni aucun instantané ne référence.
  3. Pour les disques à allocation dynamique, un administrateur peut augmenter max_thin_disk_gib. Transmettez-lui l'identifiant de message et le nom du datastore.

error.image_in_use

Texte dans la console
Le fichier image sert encore de support à la machine virtuelle {vm}. Supprimez ou déplacez d’abord cette machine virtuelle.
Signification pour les clients de l'API
The image file backs a VM.
Code
FAILED_PRECONDITION, HTTP 412
ArgumentContenu
vml'identifiant de la machine virtuelle dont le fichier est le disque.

Cause. Un disque devait être créé à partir d'un fichier image qui est toujours le disque d'une autre machine virtuelle. La copie ou la liaison du fichier d'une machine virtuelle en cours d'exécution ou suspendue, ou de tout clone lié, est refusée.

Solution.

  1. Mettez hors tension la machine virtuelle qui détient le fichier, ou supprimez-la si elle n'est plus nécessaire.
  2. Créez le disque à partir d'un modèle, ou clonez la machine virtuelle au lieu de son fichier.
  3. Répétez l'opération.

error.datastore_bad_path

Texte dans la console
Le chemin n’est pas valide : il doit être relatif, situé sous la racine du datastore et non vide. Corrigez le chemin.
Signification pour les clients de l'API
The datastore path is empty, absolute, or escapes the root.
Code
INVALID_ARGUMENT, HTTP 400
ArgumentContenu
fieldle champ de la requête qui contient le chemin refusé.

Cause. Le chemin sur le datastore est vide, absolu, contient .. ou un nom interne, ou sortirait du dossier racine du datastore. La racine elle-même ne peut pas être supprimée.

Solution.

  1. Donnez un chemin relatif à la racine du datastore, par exemple images/disk1.qcow2.
  2. Ne commencez pas le chemin par / et n'utilisez pas ...

error.datastore_file_exists

Texte dans la console
Un fichier ou un dossier portant ce nom existe déjà. Choisissez un autre nom ou autorisez l’écrasement.
Signification pour les clients de l'API
The file or folder exists (use overwrite).
Code
ALREADY_EXISTS, HTTP 409

Cause. Un fichier ou un dossier portant ce nom existe déjà à la destination.

Solution.

  1. Choisissez un autre nom, ou supprimez le fichier existant s'il n'est plus nécessaire : kyvernon datastore rm <id> <path>.
  2. Pour remplacer le fichier volontairement, répétez l'opération en autorisant l'écrasement : kyvernon datastore upload <id> <file> --overwrite, ou --overwrite avec cp et mv.

error.datastore_file_not_found

Texte dans la console
Le fichier n’existe pas sur le datastore. Il a peut-être été supprimé. Actualisez la liste.
Signification pour les clients de l'API
No such file on the datastore.
Code
NOT_FOUND, HTTP 404

Cause. Le fichier n'existe pas sur le datastore. Il a peut-être été déplacé ou supprimé, ou le nom du datastore est incorrect.

Solution.

  1. Listez le dossier : kyvernon datastore ls <id> <path>. Dans la console, actualisez la liste des fichiers avec Actualiser.
  2. Répétez l'opération avec le chemin tel qu'il est listé.

error.datastore_folder_not_found

Texte dans la console
Le dossier n’existe pas sur le datastore. Il a peut-être été supprimé. Actualisez la liste.
Signification pour les clients de l'API
No such folder on the datastore.
Code
NOT_FOUND, HTTP 404

Cause. Le dossier n'existe pas sur le datastore, ou le chemin mène à un fichier là où un dossier était attendu.

Solution.

  1. Listez le dossier parent : kyvernon datastore ls <id> <path>.
  2. Créez le dossier, avec ses parents : kyvernon datastore mkdir <id> <path>. Dans la console, utilisez Nouveau dossier.

error.datastore_folder_not_empty

Texte dans la console
Le dossier contient encore des fichiers. Supprimez d’abord son contenu.
Signification pour les clients de l'API
The folder still has entries.
Code
FAILED_PRECONDITION, HTTP 412

Cause. Le dossier contient encore des fichiers ou des dossiers, et un dossier ne peut être supprimé que s'il est vide.

Solution.

  1. Listez le contenu : kyvernon datastore ls <id> <path>.
  2. Supprimez d'abord les fichiers qu'il contient : kyvernon datastore rm <id> <path>/<name>.
  3. Supprimez le dossier.

error.datastore_file_in_use

Texte dans la console
Le fichier sert de support à un disque de la machine virtuelle {vm}. Retirez d’abord le disque de cette machine virtuelle.
Signification pour les clients de l'API
The file backs a VM disk.
Code
FAILED_PRECONDITION, HTTP 412
ArgumentContenu
vmle nom de la machine virtuelle qui utilise le fichier.
vmIdl'identifiant de cette machine virtuelle.

Cause. Le fichier ou le dossier contient un disque d'une machine virtuelle, ou d'un instantané de celle-ci. Kyvernon refuse de supprimer ou d'écraser de tels fichiers.

Solution.

  1. Retirez le disque de cette machine virtuelle, ou supprimez la machine virtuelle, si les données ne sont plus nécessaires.
  2. Répétez l'opération.

error.datastore_upload_too_large

Texte dans la console
Le téléversement dépasse la limite de {limit} octets. Fractionnez le fichier ou demandez à un administrateur de relever la limite.
Signification pour les clients de l'API
The upload exceeds limit bytes (HTTP 413).
Code
RESOURCE_EXHAUSTED, HTTP 413
ArgumentContenu
limitla limite de téléversement en octets.

Cause. Le fichier dépasse la limite de téléversement du contrôleur. La limite est max_upload_bytes dans la section [files] de la configuration du contrôleur. La valeur 0 signifie aucune limite.

Solution.

  1. Découpez le fichier, ou placez-le autrement sur le datastore, par exemple en le copiant sur l'hôte.
  2. Un administrateur peut augmenter max_upload_bytes et redémarrer le contrôleur. Transmettez-lui l'identifiant de message et la taille du fichier.

error.datastore_upload_incomplete

Texte dans la console
Le téléversement s’est interrompu avant l’arrivée du fichier complet. Téléversez de nouveau le fichier.
Signification pour les clients de l'API
The upload ended before Content-Length bytes.
Code
INVALID_ARGUMENT, HTTP 400

Cause. Le téléversement s'est terminé avant que le nombre d'octets annoncé dans Content-Length soit arrivé. La connexion s'est interrompue, ou le client s'est arrêté trop tôt.

Solution.

  1. Téléversez à nouveau le fichier : kyvernon datastore upload <id> <file> --path <path> --overwrite.
  2. Sur une connexion instable, téléversez le fichier depuis une machine mieux connectée au contrôleur.

error.datastore_read_only

Texte dans la console
Le datastore refuse les écritures. Choisissez un autre datastore ou demandez à un administrateur de le rendre accessible en écriture.
Signification pour les clients de l'API
The datastore refuses writes.
Code
FAILED_PRECONDITION, HTTP 412

Cause. Le datastore refuse les écritures. Il est monté en lecture seule, ou son pool est marqué en lecture seule.

Solution.

  1. Choisissez un autre datastore.
  2. Un administrateur rend le datastore accessible en écriture, ou le monte en lecture-écriture. Transmettez-lui le nom du datastore.

error.datastore_range_invalid

Texte dans la console
La partie demandée du fichier n’existe pas. Téléchargez le fichier entier.
Signification pour les clients de l'API
The Range header cannot be satisfied (HTTP 416).
Code
INVALID_ARGUMENT, HTTP 416

Cause. L'en-tête Range d'un téléchargement demande des octets situés au-delà de la fin du fichier.

Solution.

  1. Téléchargez le fichier entier : kyvernon datastore download <id> <path> --to <local-path>.
  2. Les clients d'API qui reprennent un téléchargement placent le début de la plage en deçà de la taille du fichier, qu'ils lisent d'abord.

error.datastore_inaccessible

Texte dans la console
Le datastore {datastore} est inaccessible depuis ses hôtes. Vérifiez la connexion de stockage des hôtes.
Signification pour les clients de l'API
The datastore is not accessible from its hosts.
Code
FAILED_PRECONDITION, HTTP 412
ArgumentContenu
datastorele nom du datastore.

Cause. Le datastore est marqué comme inaccessible depuis ses hôtes, ou n'a pas de chemin de fichier que le contrôleur peut utiliser.

Solution.

  1. Vérifiez la connexion de stockage des hôtes qui montent le datastore : le montage, le chemin réseau et l'état du serveur de stockage.
  2. Rétablissez la connexion. Le datastore redevient accessible lorsqu'un hôte le signale.
  3. Transmettez l'identifiant de message et le nom du datastore si vous ne pouvez pas atteindre le stockage vous-même.

error.datastore_no_host

Texte dans la console
Aucun hôte connecté ne monte le datastore {datastore}. Connectez un hôte qui le monte.
Signification pour les clients de l'API
No connected host mounts the datastore.
Code
dépend de la cause
ArgumentContenu
datastorele nom du datastore.

Cause. Aucun hôte connecté au contrôleur ne monte le datastore ; aucun hôte ne peut donc lire ou écrire ses fichiers.

Solution.

  1. Vérifiez quels hôtes montent le datastore : kyvernon inventory datastore <id>.
  2. Connectez un hôte qui le monte, ou montez le datastore sur un hôte connecté. Un administrateur reconnecte un hôte avec kyvernon host reconnect <id>.

error.datastore_not_on_host

Texte dans la console
L’hôte choisi ne monte pas le datastore {datastore}. Choisissez un autre hôte ou un autre datastore.
Signification pour les clients de l'API
The chosen host does not mount the datastore.
Code
FAILED_PRECONDITION, HTTP 412
ArgumentContenu
datastorel'identifiant du datastore.

Cause. Un disque a été placé sur un datastore que l'hôte choisi ne monte pas.

Solution.

  1. Choisissez un datastore que l'hôte monte, ou un hôte qui monte le datastore.
  2. Répétez l'opération.

error.datastore_not_shared

Texte dans la console
L’opération nécessite un datastore partagé par les deux hôtes. Choisissez un datastore partagé.
Signification pour les clients de l'API
The operation needs a datastore shared by both hosts.
Code
FAILED_PRECONDITION, HTTP 412

Cause. L'opération déplace une machine virtuelle en cours d'exécution vers un autre hôte, ce qui exige un datastore que les deux hôtes montent. Le déplacement d'une machine virtuelle avec ses disques vers un hôte qui ne monte pas le datastore n'est pas proposé.

Solution.

  1. Choisissez un datastore que les deux hôtes montent.
  2. Mettez la machine virtuelle hors tension et déplacez-la avec un datastore de l'hôte de destination : kyvernon vm relocate <id> --host <host> --datastore <datastore>.

Version 0.1. Dernière modification : 2026-11-13