Installer OpenIndiana sur un serveur OVH SYS-1 | Intel Xeon-E 2136
Présentation
A la différence de l'image RAW d'OmniOSce, l'image Cloud d'OpenIndiana pose quelques soucis sur OVH.
Peut-être que certains ont réussi à s'en servir, mais ce n'est pas mon cas.
Donc autre méthode. Mais on y arrive très bien quand même.
Déroulé du déploiement :
- Effectuer une installation minimale de OpenIndiana dans une machine virtuelle VirtualBox.
- Créer un petit script pour configurer automatiquement l'adresse IP au premier démarrage du serveur cible.
- Exporter la VM, convertir l'image disque .vmdk en format RAW, puis, à partir d'un système secondaire Linux/BSD/illumos (ou depuis Windows avec plink), écrire directement l'image RAW sur le disque NVMe/SSD de votre serveur hébergé via SSH.
- Démarrer à partir de l'image installée et, si nécessaire, utiliser IPMI/KVM pour finaliser la configuration réseau.
1) Démarrer le serveur hébergé en mode Rescue (Debian 12), effacer les disques et identifier l'interface réseau
- Dans le panneau de contrôle OVH, configurez le mode de démarrage en Rescue (Debian 12) avec un mot de passe (saisissez votre adresse e-mail pour recevoir le lien vers le mot de passe temporaire).
- Redémarrez le serveur depuis la console OVH.
- Connectez-vous via SSH :
ssh root@PUBLIC-SERVER-IP
- Listez les disques
lsblk
Dans cet exemple : /dev/nvme0n1 and /dev/nvme1n1.
- Effacez le début et la fin de chaque disque pour supprimer les étiquettes ZFS
(afin d'éviter d'éventuels conflits) :
zpool labelclear -f /dev/nvme0n1
dd if=/dev/zero of=/dev/nvme0n1 bs=1M count=100
dd if=/dev/zero of=/dev/nvme0n1 bs=1M seek=$(( $(blockdev --getsz /dev/nvme0n1) * 512 / 1024 / 1024 - 100 )) count=100
zpool labelclear -f /dev/nvme1n1
dd if=/dev/zero of=/dev/nvme1n1 bs=1M count=100
dd if=/dev/zero of=/dev/nvme1n1 bs=1M seek=$(( $(blockdev --getsz /dev/nvme0n1) * 512 / 1024 / 1024 - 100 )) count=100
- Identifiez la carte réseau utilisée pour l'IP publique :
ip a
Dans cet exmple, c'est eth0.
Sur OpenIndiana, les interfaces correspondantes seront ixgbe0 et ixgbe1, avec ixgbe0 = eth0.
2) Créez la VM OpenIndiana dans VirtualBox, préparer la configuration réseau, exporter et convertir en RAW
- Téléchargez l'ISO depuis : https://openindiana.org/downloads
(Nous allons utiliser le DVD d'installation minimale) - Créez une VM sur VirtualBox :
- Nom : OImin-OVH
- Type : Solaris
- Version : OpenSolaris / Illumos / OpenIndiana (64-bit)
- RAM : 2048 MB
- CPUs : 1
- Taille du disque : 4 GB - Installez OpenIndiana, utilisez tout le disque pour le système. Ne configurez pas de connection Ethernet durant l'installation (choisissez "None")
- Après l'installation, redémarrez, retirez l'ISO d'installation, authentifiez-vous avec votre utilisateur standard et passez en root
su -
- Créez un script de configuration réseau automatique : /etc/init.d/network-setup.sh
#!/bin/bash
ipadm delete-ip ixgbe0 2>/dev/null
ipadm delete-ip ixgbe0 2>/dev/null
sleep 5
ipadm create-ip ixgbe0
ipadm create-addr -T static -a local=12.23.34.45/24 ixgbe0/v4
sleep 5
route -p add default 12.23.34.254
- Rendez-le exécutable :
chmod +x /etc/init.d/network-setup.sh
- Ajoutez-le à un script de démarrage et créez un lien symbolique :
echo "nohup /etc/init.d/network-setup.sh &" >> /etc/init.d/startall.sh
chmod +x /etc/init.d/startall.sh
ln -s /etc/init.d/startall.sh /etc/rc3.d/S80-startall.sh > /dev/null 2>&1
- Arrêtez la VM ou ajoutez d'autres configurations (par exemple une clef SSH publique).
- Supprimez l'ISO et exportez la VM en tant qu'.ova en supprimant les adresses MAC.
- Renommez OImin-OVH.ova en OImin-OVH.7z, décompressez, and localisez OImin-OVH-disk001.vmdk à l'intérieur.
- Convertissez en RAW (Voici comment faire sur Windows par exemple):
New-Alias -Name "VBoxManage" -Value "C:\Program Files\Oracle\VirtualBox\VBoxManage.exe"
Set-Location C:\Users\YOURSELF\Desktop\OImin-OVH
VBoxManage clonemedium disk ".\OImin-OVH-disk001.vmdk" "OImin-OVH.raw" --format RAW
3) Transférez l'image RAW via SSH
Depuis Windows, la méthode la plus simple est d'utiliser une seconde VM Linux/BSD/illumos VM pour envoyer l'image RAW vers le serveur hébergé.
- Transférez votre image RAW depuis Windows vers la VM via SCP:
scp ./OImin-OVH.raw USER@SECONDARY-VM-IP:/tmp/
- Connectez-vous à la seconde VM (via SSH par exemple), et écrivez l'image RAW directement vers le serveur hébergé via ssh et dd
dd if=/tmp/OImin-OVH.raw bs=1M | ssh root@12.23.34.45 "dd of=/dev/nvme0n1 bs=1M"
4) Démarrez le serveur hébergé à partir de l'image écrite via SSH
- A partir du panneau de configuration OVH, réglez le démarrage du serveur sur Hard Disk et redémarrez le serveur.
- Attendez jusqu'à 5 minutes, et tentez la connexion via SSH. Si ça fonctionne, passez à 5)
- Si la connexion SSH échoue, connectez-vous via IPMI/KVM pour comprendre ce qui coince. Vérifiez notamment le nom des interfaces réseau
dladm
dladm show-phys -m ixgbe0
dladm show-phys -m ixgbe1
Si ixgbe1 est la bonne interface, alors reconfigurez-la:
ipadm delete-ip ixgbe0
ipadm create-ip ixgbe1
ipadm create-addr -T static -a local=12.23.34.45/24 ixgbe1/v4
route add default 12.23.34.254
Testez l'accès à internet :
ping 1.1.1.1
Si c'est bon, mettez à jour le script /etc/init.d/network-setup.sh avec la bonne interface.
5) Etendez rpool et mirroirez-le sur le second NVMe
- Vérifiez la taille actuelle du pool :
zpool list
- Récupérez le nom du disque :
zpool status
- Etendez pour occuper tout l'espace disque disponible
zpool online -e rpool c3t001B448B46BE45C2d0
- Si vous disposez d'un second NVMe identique, créez un miroir de rpool :
echo | format
zpool labelclear -f /dev/dsk/c4t001B448B46BBF825d0
ashift=$(zdb | awk '/ashift/ {print $2}')
zpool attach -o ashift="$ashift" rpool c3t001B448B46BE45C2d0 c4t001B448B46BBF825d0
zpool status
Votre pool miroir est prêt
↑ Haut de page