Linux Éléments à prendre en compte pour la migration vers IBM Cloud VPC
Consultez les considérations relatives à la migration d' Linux vers IBM Cloud VPC, notamment la vérification du pilote VirtIO, la configuration de cloud-init et les paramètres réseau.
Avant de lancer une migration, veuillez prendre en compte les informations suivantes.
Vérifier les pilotes de VirtIO
Linux sont généralement plus simples que celles de Windows, mais le guide décrit quelques considérations importantes à garder à l'esprit.
Les distributions Linux suivantes incluent des pilotes VirtIO dans le noyau :
- Ubuntu: 16.04 et versions ultérieures
- RHEL/CentOS: 6.x et plus tard
- Debian: version 8 et suivantes
- SUSE: 12 et plus
Utilisez la commande suivante pour vérifier que les pilotes « VirtIO » sont bien installés.
lsmod | grep virtio
Les pilotes suivants s'affichent :
virtio_blk- Pilote de périphérique en blocvirtio_net- Pilote de réseauvirtio_scsi- Pilote SCSIvirtio_pci- Pilote de bus PCI
Si ces pilotes sont manquants, vous devez reconstruire le noyau avec le support de VirtIO ou installer une distribution plus récente.
Aucun équivalent de Sysprep n'est nécessaire
Linux ne lie pas les pilotes au matériel. Le noyau détecte le nouveau matériel au démarrage et charge les pilotes appropriés. Ce processus simplifie la migration et ne nécessite généralement aucune préparation.
Ajuster la configuration du réseau
Linux ne lie pas les pilotes au matériel comme le fait Windows. Le noyau détecte le nouveau matériel au démarrage et charge les pilotes appropriés, ce qui facilite considérablement la migration sans qu'aucune préparation particulière ne soit nécessaire.
Problème courant : Les noms des interfaces réseau changent pendant la migration.
Dans VMware, votre interface pourrait être nommée :
ens192(nom prévisible de systemd)eth0(dénomination traditionnelle)
Dans VPC, cela peut devenir :
ens3ouens33(courant dans les environnements VirtIO )eth0(si vous utilisez les conventions d'appellation traditionnelles)
Pour résoudre la configuration de l'IP statique, utilisez les informations suivantes :
-
NetworkManager-based ( Red Hat Enterprise Linux (RHEL) 7 ou version ultérieure Ubuntu )
# Identify new interface name ip link show # Edit connection nmcli con edit "System eth0" # Change interface-name to new name # Save and quit # Restart NetworkManager systemctl restart NetworkManager -
Basé sur Netplan ( Ubuntu 18.04 +)
# /etc/netplan/01-netcfg.yaml network: version: 2 ethernets: ens3: # Updated from ens192 addresses: [10.240.0.10/24] gateway4: 10.240.0.1 nameservers: addresses: [8.8.8.8, 8.8.4.4] -
Traditionnel /etc/network/interfaces ( Debian, plus ancien Ubuntu )
auto ens3 iface ens3 inet static address 10.240.0.10 netmask 255.255.255.0 gateway 10.240.0.1
Correction de la configuration DHCP :
Si vous utilisez DHCP, la configuration est automatique, mais vous devrez peut-être mettre à jour les noms d'interface dans les fichiers de configuration.
Considérations relatives à l'installation en nuage
Cloud-init est utilisé pour initialiser les instances du nuage, généralement avec des modèles d'images. L'outil s'exécute lors du premier démarrage pour effectuer les actions suivantes :
- Définir un nom d'hôte
- Configurer les réseaux
- Créer des utilisateurs et des clés SSH
- Exécuter des scripts personnalisés
Contexte de migration : si cloud-init est installé sur votre serveur virtuel migré, VPC peut considérer le premier démarrage comme un « premier démarrage », ce qui déclenche les actions suivantes :
- Changements de nom d'hôte
- Reconfiguration du réseau
- Modifications du compte d'utilisateur
- Exécution des scripts d'installation dans le nuage
Décisions en matière de conception
Option 1 : Désactiver le "cloud-init
# Before migration
sudo touch /etc/cloud/cloud-init.disabled
# Or after migration via VNC console
Option 2 : Accepter le comportement du premier démarrage
- Utile si vous souhaitez que le VPC configure automatiquement le réseau via DHCP
- peut nécessiter des réglages manuels après le démarrage (nom d'hôte, utilisateurs)
Option 3 : Configurer cloud-init
- Créer une configuration d'initialisation du nuage pour préserver vos paramètres
- Plus complexe, mais qui vous donne le contrôle
Pour les migrations individuelles vers VM (et non les déploiements de modèles), désactivez cloud-init pour préserver la configuration existante. Pour les déploiements basés sur des modèles, utilisez cloud-init pour une configuration automatique.
Considérations sur les partitions et les systèmes de fichiers
Vérification des tables de partitions : Après avoir transféré les disques, utilisez la commande suivante pour vérifier que les tables de partitions sont intactes :
# On worker virtual server instance (VSI) after transfer
fdisk -l /dev/vdb
# For GPT
gdisk -l /dev/vdb
Redimensionnement du volume de démarrage : Si vous avez redimensionné le volume de démarrage vers le haut (exemple : de 80 GB dans VMware à 100 GB dans VPC),
- Vous devrez peut-être mettre à jour la table de partition :
Si vous avez redimensionné le volume de démarrage vers le haut (de 80 Go dans VMware à 100 Go dans VPC):
# For MBR
fdisk /dev/vda
# Delete and recreate partition with same start sector, new end sector
# For GPT (automatic backup GPT update)
gdisk /dev/vda
- Redimensionner le système de fichiers :
# For ext4
resize2fs /dev/vda1
# For xfs
xfs_growfs /
# For LVM
pvresize /dev/vda2
lvextend -l +100%FREE /dev/mapper/vg-root
resize2fs /dev/mapper/vg-root
fstrim et Thin Provisioning
Dans VMware, vous pouvez utiliser fstrim pour récupérer l'espace inutilisé dans les fichiers VMDK à allocation dynamique. Dans VPC, tous les volumes sont en provisionnement fin au niveau de la couche de stockage, mais fstrim n'a
pas d'effet sur la récupération d'espace dans VPC. Gardez à l'esprit que fstrim ne libère pas de mémoire.
Les tâches cron existantes de fstrim peuvent rester en place ou être supprimées pour éviter les entrées/sorties inutiles.