iPXE sur mesure
Equinix Metal™ prend en charge le passage de scripts iPXE personnalisés pendant le provisionnement, ce qui vous permet d'installer manuellement un système d'exploitation personnalisé. Lorsque vous provisionnez un serveur, Equinix Metal charge d'abord un build iPXE personnalisé qui servira l'URL du script iPXE chargé en chaîne que vous spécifiez.
Approvisionnement avec iPXE personnalisé
- Console
- CLI
- API
Pour provisionner un serveur On Demand avec iPXE personnalisé à l'aide de la console Metal d'Equinix, sélectionnez Custom iPXE dans les options sous Select an Operating System. Si votre script iPXE est hébergé sur un site http(s) accessible au public, indiquez l'URL de votre script dans le champ de texte.
Basculez l'interrupteur pour configurer votre serveur afin qu'il démarre de manière persistante à partir d'iPXE si nécessaire. Si le serveur échoue pendant le démarrage iPXE, vous pouvez modifier votre URL iPXE et redémarrer le serveur pour réessayer.

Lorsque vous cliquez sur Deploy Now pour approvisionner votre serveur, l'approvisionnement se fera à partir de votre URL iPXE.
metal device create \
--hostname netboot-custom-ipxe \
--plan c3.small.x86 \
--metro sv \
--operating-system custom_ipxe \
--project-id "$METAL_PROJECT" \
--ipxe-script-url "https://boot.netboot.xyz/"
Si vous utilisez l'API Metal d'Equinix pour provisionner des serveurs, vous pouvez utiliser Custom iPXE en passant "custom_ipxe" à la place de "operating_system" et l'URL dans le champ "ipxe_script_url" dans le corps de votre demande.
curl -X POST \
-H "Content-Type: application/json" \
-H "X-Auth-Token: <API_TOKEN>" \
"https://api.equinix.com/metal/v1/projects/{id}/devices" \
-d '{
"metro": "<metro_code>",
"plan": "<server_type>",
"operating_system": "custom_ipxe",
"always_pxe": true,
"ipxe_script_url": "https://boot.netboot.xyz/"
}'
Démarrage initial
Après avoir servi iPXE via DHCP, l'appareil sera marqué comme actif dans notre API et notre portail. Étant donné que le serveur se trouve sur le chargeur de démarrage et qu'il n'a pas d'accès SSH, utilisez la Console hors bande Equinix Metal pour accéder au serveur.
Note : si vous utilisez la console OOB pour effectuer une installation manuelle et que vous n'utilisez pas netboot.xyz, nos serveurs x86 requièrent console=ttyS1,115200n8, et nos serveurs aarch64 requièrent console=ttyAMA0,115200.
DHCP est disponible pendant toute la durée de vie d'un périphérique iPXE personnalisé. Vous pouvez donc obtenir la configuration du réseau via DHCP, puis configurer le réseau de manière statique dans le système d'exploitation en découvrant les informations relatives à l'adresse IP à partir du service de métadonnées. Depuis le serveur hôte, exécutez curl https://metadata.platformequinix.com/metadata.
Si quelque chose ne va pas et que vous ne pouvez pas accéder à votre serveur, utilisez la fonction Editer les détails de l'instance dans la Vue d'ensemble du serveur. Vous pouvez modifier votre comportement iPXE au démarrage, éditer votre script iPXE, puis redémarrer le serveur avec la nouvelle configuration.
Utilisation de l'exemple netboot.xyz
Si vous utilisez netboot.xyz pour installer manuellement votre système d'exploitation, connectez-vous à la console hors bande Equinix Metal pour obtenir le menu des options du système d'exploitation.
netboot.xyz
Default:
Boot from local hdd (283)
Distributions:
Linux Network Installs
Live CDs
BSD Installs
Unix Network Installs
Tools:
Architecture: x86_64 (64bit)
iPXE shell
Network card info
PCI Device List
About netboot.xyz
Signature Checks:
netboot.xyz [ enabled: true ]
Vous trouverez des informations sur les systèmes d'exploitation disponibles via netboot.xyz dans leur [GitHub Readme.
Si vous souhaitez installer un système d'exploitation qui ne figure pas dans la liste et qui est distribué avec une ISO, vous pouvez l'installer en sélectionnant l'option iPXE shell et en entrant les commandes :
kernel https://boot.netboot.xyz/memdisk iso raw
initrd http://url/to/iso
boot
Sachez que les [netboot.xyz docs mentionnent qu'il est possible (probable) que l'installation échoue. Si l'installation échoue pendant initramfs en essayant de charger le périphérique CD, mettez à jour le média d'installation pour qu'il recherche un média d'installation sur memdisk. Vous trouverez plus d'informations sur ce problème dans un article de reversengineered.com.
Metal CLI avec Netboot.xyz
metal device create \
--hostname netboot-custom-ipxe \
--plan c3.small.x86 \
--metro sv \
--operating-system custom_ipxe \
--project-id "$METAL_PROJECT" \
--userdata='#!ipxe
chain -ar https://boot.netboot.xyz'
PXE persistant
Lorsque le provisionnement de l'iPXE personnalisé démarre, l'option de démarrage suivante est PXE on first boot (PXE au premier démarrage). Par défaut, ce processus PXE ne se produit qu'une seule fois au premier démarrage. Pour configurer votre appareil de manière à ce qu'il démarre continuellement au premier démarrage iPXE, utilisez la bascule sous Paramètres iPXE personnalisés ou lors du provisionnement, ou à partir de Actions du serveur ou Modifier les détails de l'instance après le provisionnement.
Si c'est le cas, PXE restera la première option de démarrage après les redémarrages de provisionnement initiaux. Cette option est idéale pour tester votre script de provisionnement iPXE et pose les bases de futurs systèmes d'exploitation " toujours basés sur PXE " sur Equinix Metal.