Closed AlexanderKgr closed 2 years ago
Hi @AlexanderKgr There is too a topic in the ACS Mailing list here : Acs ML
Xcp-ng 8.2 which is fully supported by Cloudstack is now broken after update
His hypervisor capabilities are available trough hypervisor_capabilities
There are description of Xenserver capabilities with a version 8.2.0
However after updating trough official process of xcp-ng, a yum update caused to change the minor version of the hypervisor
Now it has changed from 8.2.0 to 8.2.1
When Cloudstack management server is reconnecting to Hypervisors, the host
table, field hypervisor_version
is updated with value 8.2.1
This is causing this error message on Cloudstack management server :
2022-05-02 15:52:33,157 ERROR [c.c.s.ManagementServerImpl] (qtp1850777594-186961:ctx-2ee90dcf ctx-d6c062ae) (logid:1b094155) Capabilities for host Host {"id": "2", "name": "xcp-cluster1-node2", "uuid": "ae51578b-928c-4d25-9164-3bd7ca0afed4", "type"="Routing"} couldn't be retrieved. 2022-05-02 15:52:33,157 INFO [c.c.s.ManagementServerImpl] (qtp1850777594-186961:ctx-2ee90dcf ctx-d6c062ae) (logid:1b094155) Volume Vol[320|vm=191|DATADISK] is attached to a running vm and the hypervisor doesn't support storage motion.
The Xen live storage migration is no more available
I used this fix to have fully features working with xcp-ng 8.2.1 and ACS 4.16.0
#add hypervisor xcp 8.2.1 to acs 4.16 INSERT IGNORE INTO
cloud.
hypervisor_capabilities`(uuid, hypervisor_type,
hypervisor_version, max_guests_limit, max_data_volumes_limit,
max_hosts_per_cluster, storage_motion_supported) values (UUID(), 'XenServer',
'8.2.1', 1000, 253, 64, 1);
+-- Copy XenServer 8.1.0 hypervisor guest OS mappings to XenServer 8.2.0
+INSERT IGNORE INTO cloud
.guest_os_hypervisor
(uuid,hypervisor_type,
hypervisor_version, guest_os_name, guest_os_id, created, is_user_defined)
SELECT UUID(),'Xenserver', '8.2.1', guest_os_name, guest_os_id,
utc_timestamp(), 0 FROM cloud
.guest_os_hypervisor
WHERE
hypervisor_type='Xenserver' AND hypervisor_version='8.2.0';`
I used xcp-ng 8.2.0 capabilities in order to create xcp-ng 8.2.1 entries
There is also some bugs with "Debian 11" vms
Vms running "Debian 11" on 8.2.0 were finding their mapping with ACS trough "Other media" Now with 8.2.1, features like snapshots are no more working due to error of guest os mapping
I used this fix in order to get it working with "Debian 11"
INSERT INTO cloud
.guest_os_hypervisor
(hypervisor_type
, guest_os_name
, guest_os_id
, hypervisor_version
, uuid
, created
, removed
, is_user_defined
) VALUES ('Xenserver', 'Debian Bullseye 11', 337, '8.2.1', uuid(), now(), NULL, 0);
INSERT INTO guest_os_hypervisor
(id
, hypervisor_type
, guest_os_name
, guest_os_id
, hypervisor_version
, uuid
, created
, removed
, is_user_defined
) VALUES (8231, 'Xenserver', 'Debian Bullseye 11', 338, '8.2.1', uuid(), now(), NULL, 0);
It could be done too for adding support for "WIndows server 2022", "AlmaLinux 8", "Gooroom Platform 2.0" and "Rocky Linux 8"
I tested a set of features after modyfing so the Cloudstack databases entries :
test export vm OK test import vm OK (adding template via URL)
test migration XenMotion live OK test migration XenStorageMotion live OK (was bugged)
test snapshot OK test snapshot vm OK (was bugging before patching guest os mapping)
test revert snapshot OK test revert snapshot vm OK (was bugged)
This has been tested on Centos, Debian 10 and Debian 11 vms
@AlexanderKgr from my point of vue, this is not an improvement but a critical bug.
Xcp-NG have not changed of version Xcp-NG 8.2.1 is in life cycle of Xcp-NG 8.2 LTS as @stormi from @vates said
This is a maintenance release, no new features So we shall talk about 8.2 and not 8.2.1
@nvazquez anyone to check this?
Thanks @AlexanderKgr @BenoitLair for testing. We can include the DB records as you have done but document that the version 8.2.1 is not fully tested, and plan to add full support on next release
I'm the release manager for XCP-ng. 8.2.1 is really 8.2. If 8.2 is supported, then 8.2.1 and any 8.2.x is de facto. They are (will be) just maintenance releases.
Anyone using XCP-ng 8.2 and who installs security and bugfix updates will end-up with version 8.2.1, so I really advise to consider they're the same in your context.
I'm the release manager for XCP-ng. 8.2.1 is really 8.2. If 8.2 is supported, then 8.2.1 and any 8.2.x is de facto. They are (will be) just maintenance releases.
@nvazquez
Anyone using XCP-ng 8.2 and who installs security and bugfix updates will end-up with version 8.2.1, so I really advise to consider they're the same in your context.
@nvazquez
@nvazquez as @stormi said (Also confirmed by @olivierlambert from @vates) , Xcp-ng 8.2.1 has no new features It has any changes with Xapi nor interactions with hypervisor features trough the Cloud agent
Thanks @stormi - that makes sense. I have added the SQL inserts tested by @BenoitLair on PR #6362 - full support can be added later for missing guest OS
Thanks. As XCP-ng 8.2 is a LTS, it will probably receive more minor numbered updates like 8.2.1 in the future. Main component versions don't change (linux kernel, Xen, XAPI...).
Oh, by the way: I don't know how you test for the version currently. If you source /etc/xensource-inventory
, then PRODUCT_VERSION_TEXT_SHORT
will remains with value 8.2
for all of XCP-ng 8.2's lifetime.
@stormi the version is read from field 'product_version' (or 'platform_version' if the first is empty) of the 'softwareVersion' XCP host field while connecting it to CloudStack. Reading the version from xensource-inventory could be a good refactor for us, avoiding the DB records addition each time a 8.2.x version is released
So, I had some internal discussion and it turns out my promise that component versions won't change is not 100% accurate. Although we have a policy of not updating, there may be major events that force us to upgrade major components (for example security issues).
So maybe it's safer to keep adding records for each new 8.2.x version (there aren't such versions so often).
sorry checked again and there is no problem
ISSUE TYPE
COMPONENT NAME
CLOUDSTACK VERSION
CONFIGURATION
Advanced Networking
OS / ENVIRONMENT
UbuntuServer20
SUMMARY
Since last update on xcp-ng via yum update (8.2.1), Cloudstack management platform does not recognize hypervisor capabilities Live storage migration is no more available due that capabilities of xcp-ng could not be retrieved anymore
STEPS TO REPRODUCE
EXPECTED RESULTS
ACTUAL RESULTS