Bring Your Own Image (BYOI)
Découvrez comment déployer facilement vos propres images sur des serveurs dédiés
Objectif
La fonctionnalité Bring Your Own Image (BYOI) vous permet de déployer des images cloudready directement sur votre serveur dédié. Vous pouvez ainsi utiliser le service bare metal comme ressource pour vos déploiements.
Que signifie cloudready ?
La norme cloudready signifie généralement être agnostique de l’infrastructure sur laquelle l’image est déployée. En plus des prérequis et limitations mentionnés ci-dessous, vous devez vous assurer que l'image (téléchargée ou générée) répond correctement à la définition des attentes techniques d'une image cloudready.
Ce guide vous explique comment utiliser Bring Your Own Image (BYOI) sur votre serveur dédié OVHcloud.
Prérequis
- Un serveur dédié dans votre compte OVHcloud
- Avoir accès à l'API OVHcloud (pour la méthode de déploiement via l'API de ce guide)
- Votre image doit être inférieure à la RAM du serveur moins 3 Gio
Pour appliquer les personnalisations OVHcloud au premier démarrage, votre image doit inclure cloud-init ou une alternative compatible (par exemple nuageinit sur FreeBSD).
Accès à l'espace client OVHcloud
- Lien direct :
- Pour accéder à vos services :
Bare Metal Cloud>Serveurs dédiés> Sélectionnez votre serveur
Tout comme une installation OS classique, une nouvelle installation par BYOI effacera l'intégralité des données présentes sur le serveur.
En pratique
Limites techniques :
Certaines limites techniques sont liées à l’utilisation de produits physiques comme les serveurs dédiés. Voici une liste non exhaustive à garder à l'esprit lors de la préparation de votre déploiement :
- Type de démarrage : uefi ou legacy
- Type de partition : MBR ou GPT
- Format de l'image : qcow2 ou raw
À propos du RAID :
-
Bring Your Own Image (BYOI) ne prend pas en charge la configuration RAID logicielle au moment de l'installation, mais vous pouvez utiliser le service Bring Your Own Linux (BYOLinux) pour le faire. Choisissez le type d'installation personnalisée le plus adapté : Comparaison entre Bring Your Own Image (BYOI) et Bring Your Own Linux (BYOLinux).
-
BYOI déploie l'image sur un seul disque : le premier disque du groupe de disques cible.
-
Le RAID matériel fonctionne sur les serveurs équipés d'un contrôleur RAID, car il présente la matrice au système d'exploitation comme un seul disque virtuel.
Méthodes de déploiement :
- Déploiement via l'espace client : vous permet de déployer simplement votre image depuis l'espace client OVHcloud.
- Déploiement via API : vous pouvez utiliser l’API OVHcloud pour intégrer des images dans vos propres scripts afin d’automatiser les déploiements.
Déploiement de votre image via l’espace client
Dans l'onglet Informations générales, cliquez sur le bouton ... à côté de « Système (OS) » puis cliquez sur Installer.
À l'étape suivante, sélectionnez Personnalisé dans le menu puis Bring Your Own Image - byoi et cliquez sur Suivant.
Vous allez être redirigé vers la page de configuration. Assurez-vous que l'URL de votre image est au bon format. Remplissez le reste des champs obligatoires de cette page. Une fois que vous avez confirmé que les informations sont correctes, cliquez sur Confirmer.
Vous trouverez plus de détails sur les options dans la section « options de déploiement » ci-dessous.
Déploiement de votre image via l'API
Connectez-vous sur https://api.ovh.com/ puis rendez-vous dans la section /dedicated/server.
Le contenu de la requête API de Bring Your Own Image (BYOI) doit être similaire au fichier JSON suivant :
Dans la section customizations, seuls les champs imageURL, imageType et efiBootloaderPath sont obligatoires.
Même si configDriveUserData peut être envoyé à l'API directement en clair en échappant les bons caractères, il est recommandé d'envoyer à l'API le script encodé en base64 en utilisant par exemple la commande UNIX/Linux suivante :
Voici la version en clair de configDriveUserData de l'exemple ci-dessus :
Une fois les champs complétés, démarrez le déploiement en cliquant sur Execute.
Options de déploiement
¹ Données utilisateur cloud-init standard — généralement un document #cloud-config ou un script (voir les exemples officiels de cloud-init). Équivalent à server create --user-data <fichier> chez OpenStack. Sa représentation JSON doit être sur une seule ligne avec \n pour les retours à la ligne, car les chaînes JSON ne peuvent pas contenir de retours à la ligne littéraux.
² À utiliser uniquement si vous avez besoin d'en-têtes HTTP, tels que Basic Auth
³ Le chemin du bootloader EFI est utilisé par iPXE pour démarrer votre système d'exploitation. Pour plus d'informations, consultez notre guide « Comprendre le processus de démarrage des serveurs dédiés ». Exemples :
Les chemins ci-dessous utilisent l'échappement JSON : \\ représente un seul antislash. Par exemple, \\efi\\debian\\grubx64.efi correspond au chemin \efi\debian\grubx64.efi.
⁴ Objet JSON de couples clé/valeur arbitraires, équivalent à server create --property clé=valeur chez OpenStack. Les couples sont écrits dans le meta_data.json du config drive sous la clé meta, où cloud-init peut les lire. Exemple : "configDriveMetadata": {"role": "webserver", "env": "prod"} devient "meta": {"role": "webserver", "env": "prod"} dans meta_data.json. Voir la documentation du service de métadonnées OpenStack pour le schéma complet.
Lorsque vous renseignez l'une des personnalisations de cette page, OVHcloud ajoute une petite partition de config drive lors de l'installation ; sinon, aucun config drive n'est créé. Cloud-init la lit au premier démarrage. Renseignez configDriveUserData pour ajouter vos propres données utilisateur (user-data) cloud-init.
Les erreurs clients fréquentes
Le tableau suivant donne un aperçu des erreurs clients les plus connues et de la manière de les corriger.
Aller plus loin
API OVHcloud et installation d'un OS
Bring Your Own Linux (BYOLinux)
Comparaison entre Bring Your Own Image (BYOI) et Bring Your Own Linux (BYOLinux)
Comprendre le processus de démarrage des serveurs dédiés
Échangez avec notre communauté d'utilisateurs.