apache / apache/cloudstack

KVM: Live migration of SSVM fails with dedicated VLAN

Ouverte
#13,378 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
component:kvm component:migration
Langage dominant
Java
Étoiles
3.1k
Forks
1.4k
Merge moyen
6 j 19 h
PR mergées (30 j)
32

Description

### problem

Live migration of SSVMs fails on KVM when the zone has a dedicated storage network IP range configured with a VLAN. The destination agent never creates the storage VLAN bridge during
PrepareForMigrationCommand, so libvirt cannot find the bridge from the source VM's XML and aborts

This is because the storage network is created with broadcast_domain_type: Native and broadcastUri: storage://
And In BridgeVifDriver.createStorageVnetBridgeIfNeeded():
```

if (!Networks.BroadcastDomainType.Storage.equals(nic.getBroadcastType()) || nic.getBroadcastUri() == null) {
return storageBrName; // exits early and bridge is never created
}
```

the above check causes it to exit early and never create the bridge on the destination host

### versions

4.20.3 onward

### The steps to reproduce the bug

Steps to Reproduce

1. Create a zone with KVM hosts
2. Add a pod management network IP range (untagged)
3. Add a Storage Network IP Range to the pod with a non-zero VLAN ID (storage_vlan)
4. Start the zone - system VMs are created; confirm br- exists on the source host
5. Attempt live migration of the Secondary Storage VM to the other host
6. Migration fails with Cannot get interface MTU on 'br-': No such device

### What to do about it?

_No response_

Guide de contribution

Ouvrir le guide de contribution

Piste de recherche

Commencez dans BridgeVifDriver.createStorageVnetBridgeIfNeeded() et suivez la manière dont PrepareForMigrationCommand gère le réseau de stockage pendant la migration à chaud. Reproduisez le problème avec une zone KVM utilisant un VLAN de stockage dédié, puis vérifiez que la destination crée le bridge du VLAN de stockage et que la migration de la Secondary Storage VM réussit.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
java
Domaine
cloud, infrastructure
Type d'issue
Bug
Difficulté
4/5
Temps estimé
3-5 jours
Activité
Calme
Clarté
Plutôt claire
Accessibilité débutants
52/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.