JacquesF

[Tuto] Créer un datastore pour ESXi directement sur la carte SD ou la clé USB

Recommended Posts

Cette procédure permet de créer un datastore directement sur la carte SD supportant VmWare ESXi.
Elle a été testée sur un Proliant Gen8 1610T avec VmWare ESXi 6.5 avec une carte SD de 16 Go.

 

En utilisant la carte SD ou la clé USB (la VM Xpenoboot étant démarrée et n'ayant pas d'accès disque, la carte n'est pas sollicitée ensuite), cette méthode évite d'avoir à installer un disque dur supplémentaire pour stocker les fichiers de configuration de la machine virtuelle (moins de 100 Mo suffisent).


Les commandes sont données sous Linux, pour ceux qui utilisent Windows, je recommande d'utiliser un LiveCD Linux contenant (impérativement) gdisk afin de retrouver un environnement similaire. On peut récupérer une image ISO avec l'outil directement sur le site gparted.org.

 

1) Installer VmWare ESXi sur la carte microSD (ou la clé USB), la place prise est de l'ordre de 4 Go seulement.

 

2) Arrêter le serveur et le redémarrer avec le LiveCD ou si vous utilisez Linux, placer la carte SD dans votre lecteur de carte sur votre PC.

 

3) Rechercher le nom du périphérique associé à la carte SD (ou la clé USB) :
(ici il n'y a que les lignes intéressantes)
[root@jacques ~]# dmesg | tail
[20710.163993] sd 18:0:0:2: [sdj] 31116288 512-byte logical blocks: (15.9 GB/14.8 GiB)
[20710.190258]  sdj: sdj1 sdj5 sdj6 sdj7 sdj8 sdj9

 

4) La carte SD (ou la clé) est donc associée au périphérique /dev/sdj dans l'exemple

 

5) Utiliser gdisk pour modifier la table de partitions (et en faire un backup au cas où...), cette table est au format GPT :

Lors de la création de la partition (en fin de disque), j'ai conservé les valeurs proposées par défaut, donc il suffit de faire ENTRÉE pour valider le choix

Les commandes sont indiquées dans le menu accessible par la touche "m" et celles utilisées sont :

 

  • p : affiche le contenu de la table de partitions
  • b : sauvegarde de la table actuelle avant les modifications
  • n : création d'une nouvelle partition (le code abrégé pour VMFS est FB00, le GUID est AA31E02A-400F-11DB-9590-000C2911D1B8)
  • i : affiche les informations sur la partition choisie
  • w : sauvegarde la table GPT et quitte le programme


[root@jacques ~]# gdisk /dev/sdj

GPT fdisk (gdisk) version 0.8.10

Partition table scan:
  MBR: protective
  BSD: not present
  APM: not present
  GPT: present

Found valid GPT with protective MBR; using GPT.

Command (? for help): p
Disk /dev/sdj: 31116288 sectors, 14.8 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): 1EF374F4-FAB2-472E-B44B-DB42579DF55C
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 31116254
Partitions will be aligned on 32-sector boundaries
Total free space is 158 sectors (79.0 KiB)

Number  Start (sector)    End (sector)  Size       Code  Name
   1              64            8191   4.0 MiB     EF00  
   5            8224          520191   250.0 MiB   0700  
   6          520224         1032191   250.0 MiB   0700  
   7         1032224         1257471   110.0 MiB   FC00  
   8         1257504         1843199   286.0 MiB   0700  
   9         1843200         7086079   2.5 GiB     FC00  

Command (? for help): b
Enter backup filename to save: sdj-gpt.bak
The operation has completed successfully.

Command (? for help): n
Partition number (2-128, default 2): 10
First sector (34-1257503, default = 7086080) or {+-}size{KMGTP}:
Last sector (7086080-31116254, default = 31116254) or {+-}size{KMGTP}:
Current type is 'Linux filesystem'
Hex code or GUID (L to show codes, Enter = 8300): FB00
Changed type of partition to 'VMWare VMFS'

Command (? for help): p
Disk /dev/sdj: 31116288 sectors, 14.8 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): 1EF374F4-FAB2-472E-B44B-DB42579DF55C
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 31116254
Partitions will be aligned on 32-sector boundaries
Total free space is 158 sectors (79.0 KiB)

Number  Start (sector)    End (sector)  Size       Code  Name
   1              64            8191   4.0 MiB     EF00  
   5            8224          520191   250.0 MiB   0700  
   6          520224         1032191   250.0 MiB   0700  
   7         1032224         1257471   110.0 MiB   FC00  
   8         1257504         1843199   286.0 MiB   0700  
   9         1843200         7086079   2.5 GiB     FC00  
  10         7086080        31116254   11.5 GiB    FB00  

Command (? for help): i
Partition number (1-10): 10
Partition GUID code: AA31E02A-400F-11DB-9590-000C2911D1B8 (VMWare VMFS)
Partition unique GUID: 835EA227-E905-4B14-86BB-DAD6E2AB31A4
First sector: 7086080 (at 3.4 GiB)
Last sector: 31116254 (at 14.8 GiB)
Partition size: 24030175 sectors (11.5 GiB)
Attribute flags: 0000000000000000
Partition name: ''

Command (? for help): w

Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING
PARTITIONS!!

Do you want to proceed? (Y/N): Y
OK; writing new GUID partition table (GPT) to /dev/sdj.
The operation has completed successfully.
[root@jacques ~]#

6) Ejecter la carte ou la clé et redémarrer le serveur sur celle-ci, et si ce n'est pas déjà fait autoriser les connexions locales ou SSH à la console :
Touche "F2" à l'écran de connexion ESXi puis "Options de dépannage" et "activer ESXi Shell" et/ou "Activer SSH"


7) Se connecter à la console (les exemples ici sont via SSH avec authentification par clé publique/privée) :
[jacques@jacques ~]$ ssh root@vmware

X11 forwarding request failed on channel 0
The time and date of this login have been sent to the system logs.

WARNING:
   All commands run on the ESXi shell are logged and may be included in
   support bundles. Do not provide passwords directly on the command line.
   Most tools can prompt for secrets or accept them from standard input.

VMware offers supported, powerful system administration tools.  Please
see www.vmware.com/go/sysadmintools for details.

The ESXi Shell can be disabled by an administrative user. See the
vSphere Security documentation for more information.

8) Identifier le nom de la partition créée pour le datastore :
[root@vmware:~] cd /dev/disk
[root@vmware:/dev/disks] ls -l

total 31116176
-rw-------    1 root     root     15931539456 Dec 11 19:40 mpx.vmhba32:C0:T0:L0
-rw-------    1 root     root       4161536 Dec 11 19:40 mpx.vmhba32:C0:T0:L0:1
-rw-------    1 root     root     12303449600 Dec 11 19:40 mpx.vmhba32:C0:T0:L0:10
-rw-------    1 root     root     262127616 Dec 11 19:40 mpx.vmhba32:C0:T0:L0:5
-rw-------    1 root     root     262127616 Dec 11 19:40 mpx.vmhba32:C0:T0:L0:6
-rw-------    1 root     root     115326976 Dec 11 19:40 mpx.vmhba32:C0:T0:L0:7
-rw-------    1 root     root     299876352 Dec 11 19:40 mpx.vmhba32:C0:T0:L0:8
-rw-------    1 root     root     2684354560 Dec 11 19:40 mpx.vmhba32:C0:T0:L0:9
lrwxrwxrwx    1 root     root            20 Dec 11 19:40 vml.0000000000766d68626133323a303a30 -> mpx.vmhba32:C0:T0:L0
lrwxrwxrwx    1 root     root            22 Dec 11 19:40 vml.0000000000766d68626133323a303a30:1 -> mpx.vmhba32:C0:T0:L0:1
lrwxrwxrwx    1 root     root            23 Dec 11 19:40 vml.0000000000766d68626133323a303a30:10 -> mpx.vmhba32:C0:T0:L0:10
lrwxrwxrwx    1 root     root            22 Dec 11 19:40 vml.0000000000766d68626133323a303a30:5 -> mpx.vmhba32:C0:T0:L0:5
lrwxrwxrwx    1 root     root            22 Dec 11 19:40 vml.0000000000766d68626133323a303a30:6 -> mpx.vmhba32:C0:T0:L0:6
lrwxrwxrwx    1 root     root            22 Dec 11 19:40 vml.0000000000766d68626133323a303a30:7 -> mpx.vmhba32:C0:T0:L0:7
lrwxrwxrwx    1 root     root            22 Dec 11 19:40 vml.0000000000766d68626133323a303a30:8 -> mpx.vmhba32:C0:T0:L0:8
lrwxrwxrwx    1 root     root            22 Dec 11 19:40 vml.0000000000766d68626133323a303a30:9 -> mpx.vmhba32:C0:T0:L0:9

La partition créée sur la carte était la 10, on la retrouve ici sous le nom "mpx.vmhba32:C0:T0:L0:10" (mpx.vmhba32:C0:T0:L0 est l'identifiant du disque complet)


9) Formater la partition avec l'outil vmkfstools :
[root@vmware:/dev/disks] vmkfstools -C vmfs5 -b 1m -S datastore-sd /vmfs/devices/disks/mpx.vmhba32:C0:T0:L0:10

  • -C : type de système de fichiers (ici version 5)
  • -b : taille des blocs (ici 1 Mo)
  • -S : nom du datastore (ici "datastore-sd")
create fs deviceName:'/vmfs/devices/disks/mpx.vmhba32:C0:T0:L0:10', fsShortName:'vmfs5', fsName:'datastore-sd'
deviceFullPath:/dev/disks/mpx.vmhba32:C0:T0:L0:10 deviceFile:mpx.vmhba32:C0:T0:L0:10
ATS on device /dev/disks/mpx.vmhba32:C0:T0:L0:10: not supported
.
Checking if remote hosts are using this device as a valid file system. This may take a few seconds...
Creating vmfs5 file system on "mpx.vmhba32:C0:T0:L0:10" with blockSize 1048576 and volume label "datastore-sd".
Successfully created new volume: 5a2ee03f-33d3d6c4-a104-d0bf9c465a4c

10) Se déconnecter et redémarrer le serveur, le datastore sera disponible directement sur la carte (ou la clé) et suffit largement pour installer la VM Xpenoboot.

 

 

Share this post


Link to post
Share on other sites

Excellent tuto, bien que je ne vois pas d'intérêt. En effet si on souhaite utiliser ESxi, c'est pour y stocker d'autres VM autres qu'EXPEnology. Il faudra donc bien un réel datastore sur disque pour les stocker. Sauf si l'idée est de créer plusieurs VM XPEnology à des fins de tests mais pour moi c'est beaucoup de manip pour pas grand chose!

Share this post


Link to post
Share on other sites

je vois pas trop l'intérêt lorsque l'on connaît la fragilité d'une carte SD les utilisateurs de RPI le savent très bien carte SD ou Clé usb sont des supports peu fiable pour un nombre d'écriture importante

Envoyé de mon SM-G901F en utilisant Tapatalk

Share this post


Link to post
Share on other sites

@JacquesF  Tres intéressant tuto!! Merci de partager!

Pouvez vous nous donner une situation qui pousse a envisager une SD ou USB comme datastore?

C'est bien sympa les OVA, OVF et autre snapshot de ses system.

 

Je suis tout a fait d'accord avec les autre personnes au sujet d'un hyperviseur et de la datastore. Mais on est pas tous dans la même situation lol Et j'aime bien savoir comment d'autre personne ont trouver une solution a leur problème.

Edited by xpeno1

Share this post


Link to post
Share on other sites

Bonjour,

 

Typiquement, une VM de test pour Xpenology, inutile de dédier un disque pour faire les tests de compatibilité.

Des VM d'OS en test, l'espace disque nécessaire (si on a besoin de plus) pouvant être un montage NFS, sur un autre serveur ou éventuellement sur le NAS Xpenology (attention en ce cas à l'ordre de démarrage des VM est à déclarer les dépendances entre elles éventuellement.

Il y a beaucoup de VM sous linux se contenant de très peu d'espace disque.

 

Jacques

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now