J'ai récemment été invité à examiner la possibilité de le faire et dans le cadre de la recherche d'une solution, j'ai trouvé cette question-réponse.
Comme le dit Michael, l'utilisation de l'out-of-band est préférable mais ce n'est pas toujours disponible.
J'ai examiné le serveur snake que Dawud suggère. Ça fonctionne mais il n'est pas apprécié et il y a des erreurs dans sa documentation. Je ne recommanderais pas de l'utiliser.
J'ai demandé sur IRC #centos et ils m'ont dirigé vers installer à partir de grub. C'est similaire à la solution d'Aaron mais ça utilise des ressources réseau plutôt qu'une partition séparée. C'est ce que j'ai finalement mis en place. L'idée générale est
-
Télécharger le vmlinuz et initrd.img d'installation dans /boot
wget -N http://mirror.centos.org/centos/6.5/os/x86_64/isolinux/vmlinuz
wget -N http://mirror.centos.org/centos/6.5/os/x86_64/isolinux/initrd.img
-
Modifier /boot/grub/grub.conf et créer une entrée pour le nouveau noyau
title Réinstaller CentOS kernel /vmlinuz ro upgradeany ip=192.168.254.44 netmask=255.255.255.0 hostname=somehost.tld ks=http://server.tld/ks/kickstart.ks gateway=192.168.254.220 dns=8.8.8.8 headless vnc vncpassword=SomePassword initrd /initrd.img
-
Sur le serveur.tld, vous devrez avoir httpd servant un fichier kickstart configuré de manière appropriée, la chose importante ici étant la directive url
-
url --url http://mirror.centos.com/centos/6.5/os/x86_64
Cela provoque la copie des fichiers d'installation à partir du système distant nommé.
Cela ne fonctionne évidemment que si vous pouvez installer votre propre noyau donc par exemple cela ne fonctionnerait pas avec un droplet Digital Ocean.
Vous pouvez facilement mal configurer quelque chose en développant la solution donc je ne recommande pas de le faire sur un système qui n'a pas de méthode pour réinstaller facilement l'image des fournisseurs de services.
Depuis que j'ai réussi à le faire fonctionner, je n'ai rencontré aucun problème.