cloudstack: Dedication of public IP ranges broken after upgrade to 4.17.0.1
ISSUE TYPE
- Bug Report
COMPONENT NAME
API, UI, SSVM, CPVM
CLOUDSTACK VERSION
4.17.0.1
CONFIGURATION
1 Zone, Advanced networking, 3 domains
OS / ENVIRONMENT
All running Ubuntu 20.04.5 Database mysql 8
SUMMARY
Existing configuration (working running CS 4.16.1)

Setting system.vm.public.reservation.mode.strictness
= true
After upgrade:
While deploying SSVM / CPVM, dedicated IP Ranges for use of system VMs aren’t concidert for deployment. With system.vm.public.reservation.mode.strictness
enabled, a deployment of SSVM / CPVM fails “due to Insufficent address capacity”.
With system.vm.public.reservation.mode.strictness
set to ‘false’ deployment is successfull while using IP ranges not marked as dedicated for system VMs.
Newly created IP ranges with dedication for systemVMs aren’t stored or found in db table domain_vlan_map
. Also prior used ip ranges dedicated for systemVMs aren’t referenced in domain_vlan_map
.
Currently tested with public IP addresses. Not tested with “strictness” for management IP addresses.
STEPS TO REPRODUCE
- Create IP range for public IPs with dedication for system VMs enabled
- Change setting
system.vm.public.reservation.mode.strictness
to true - Destroy existing CPVM / SSVM
EXPECTED RESULTS
- Table `domain_vlan_map` shows entry for newly created IP range (stored as new vlan) assigned to domain
- System VMs are successfully deployed using IPs from the dedicated IP range
ACTUAL RESULTS
- Table `domain_vlan_map` shows no entry
- Deployment of systemVMs fails due to insufficent address capacity
- Changeing setting `system.vm.public.reservation.mode.strictness` to "false"
--> deployment successfull using IP range of domain not dedicated for systemVMs
About this issue
- Original URL
- State: closed
- Created 2 years ago
- Comments: 26 (16 by maintainers)
Commits related to this issue
- server: fix cannot get systemvm ips in dedicated ranges (#7144) This fixes #6698 — committed to apache/cloudstack by weizhouapache 10 months ago
thanks @Hudratronium , for all the information.
I can reproduce the issue if (1) use.system.public.ips = true (2) system.vm.public.ip.reservation.mode.strictness = true (3) there is a dedicated IP range for ROOT domain (4) there is a dedicated IP range for SystemVMs
Your comment in https://github.com/apache/cloudstack/issues/6698#issuecomment-1236740037 is correct. We need to add a record in account_vlan_map (for ROOT/system) or change the logic of picking up a public ip address. I will look into it.
Thanks @Hudratronium - I will book some time to try replicating it for an upgraded environment