KVM: Live migration of SSVM fails with dedicated VLAN
- 主要言語
- Java
- スター
- 3.1k
- フォーク
- 1.4k
- 平均マージ
- 6日 19時間
- マージ済み PR(30日)
- 32
説明
### 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_
コントリビューションガイド
調査の方向性
BridgeVifDriver.createStorageVnetBridgeIfNeeded() から開始し、ライブマイグレーション中に PrepareForMigrationCommand がストレージネットワークをどのように処理するかを追跡します。専用のストレージ VLAN を使用する KVM ゾーンで問題を再現し、その後、移行先でストレージ VLAN ブリッジが作成され、Secondary Storage VM の移行が成功することを確認します。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- java
- 領域
- cloud, infrastructure
- issue の種類
- バグ
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 活発さ
- 静か
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 52/100