[DRBD-announce] linstor-proxmox v7.0.1
Roland Kammerer <[email protected]> Thu, 15 Jun 2023 09:41:18 +0200
| Newsgroups | dev.linux.lists.drbd-announce |
|---|---|
| Message-ID | <[email protected]> |
Dear DRBD on PVE users, this is version 7.0.1 of the linstor-proxmox plugin. The RC phase was exceptionally long, which was a result of public holidays and me being on vacation. There have not been any reported bugs, the original announcement for your convenience: - it fixes a performance regression introduced with 7.0.0 - it requires LINSTOR 1.23.0 - all users of 7.0.0 should then upgrade to 7.0.1 The detailed version: Long story short, PVE calls status() freaking often. Depending on if you select the storage in the GUI, this can happen every second, otherwise like every 10s. To accommodate for that Proxmox's status() API has a "cache" object that is passed in for every storage type. Let's say you have 4 'drbd' storages (as in storage.cfg), then for the first call we get an empty cache which we can fill, and for the next 3 we can use that. That helps, but - we can not make use of that for more than one iteration (remember, PVE calls status an awful lot), that is why we introduced a file based persistent cache to keep some information longer than 10 seconds. - things get even worse if you have a distributed system where then every PVE node hammers the LINSTOR controller with (the same) questions all the time. Do the math, the LINSTOR controller gets too many "what is the status of my storage" calls very very quickly even in setups with a handful of nodes. Recently we improved how we display storage information, but that also rendered the built in PVE cache useless as we needed to query every RG individually. That was known, I thought we could get away with it. We did not. How was it fixed: - we can now query the storage information for all RGs once. That helps to again use the builtin cache more effectively as we again need 1 call for every iteration. - The new LINSTOR API for querying all RGs at once also got a cache parameter which also helps a lot because it avoids the pressure on the controller that resulted from the distributed nature of LINSTOR/DRBD. The http queries were/are not the problem, the problem is that the controller then needs to get the state of all satellites. Regards, rck GIT: https://github.com/LINBIT/linstor-proxmox/commit/e72f262ca0db1f875f996c22da322c28a39d7831 TGZ: https://pkg.linbit.com//downloads/connectors/linstor-proxmox-7.0.1.tar.gz
signature.asc
(application/pgp-signature, 488 B)
-----BEGIN PGP SIGNATURE----- iQEzBAABCgAdFiEEdesqw/S/2vE9wNKDRgmezyI6myIFAmSKwJoACgkQRgmezyI6 myKcAQgAlsr0x0qpW7xyv/nYcbeoIJ+2oGHxvAx1mElebr/Y8dfG1zQ7Ugpt0b9u xHFD8I3Emqt0xHNCBuCcMlaU3PIQoU7iW/CvMgQ3aBfhO/79vwgdYGUR1fYG0i7h DW7b/gOv8c7/zayZIbSykV+EWKfXxP/Ov9jihgPxP3lHpLto6UutGv6u4/lLqScm mcB+edc/aER4icqzwQdp0WiosoOXWVX/Dht/UH511ieqYn3UXGRdzolTX66dMdor YxXh1/g4W0di57DzTygU5AebwyJYCc1w4xvddgeKSS152uVDkAE0EL1RvjhUToH2 mgljXjHgWVwHB+zYzdfqpb8ZyYOt4Q== =8IVl -----END PGP SIGNATURE-----