Skip to content

Adding Datacore-recommended udev rules and multipath rules for XAPI/sm #741

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

ylebris
Copy link

@ylebris ylebris commented Mar 18, 2025

This commit integrates Datacore-recommended udev rules and multipath rules for XAPI.

Key changes:

  • Implemented udev rules to adjust time for DataCore volumes.
  • Implemented multipath rules for DataCore volumes.
  • Ensured compliance with existing XAPI storage management (SM) conventions.
  • Verified functionality through test scenarios to avoid regression with non-DataCore configurations.

Motivation:
These changes aim to improve performance and reliability for deployments using DataCore arrays, adhering to vendor-recommended best practices while maintaining compatibility with the broader XAPI ecosystem.

Testing:

  • Manually verified udev rules on test systems with DataCore arrays.
  • Confirmed compatibility with non-DataCore environments.
  • Ran unit tests for related storage subsystems.

This change is backward-compatible, introduces no breaking changes and only affect DataCore arrays.

…rules for XAPI.

Key changes:
- Implemented udev rules to adjust time for DataCore volumes.
- Implemented multipath rules for DataCore volumes.
- Ensured compliance with existing XAPI storage management (SM) conventions.
- Verified functionality through test scenarios to avoid regression with non-DataCore configurations.

Motivation:
These changes aim to improve performance and reliability for deployments using DataCore arrays, adhering to vendor-recommended best practices while maintaining compatibility with the broader XAPI ecosystem.

Testing:
- Manually verified udev rules on test systems with DataCore arrays.
- Confirmed compatibility with non-DataCore environments.
- Ran unit tests for related storage subsystems.

This change is backward-compatible, introduces no breaking changes and only affect DataCore arrays.

Signed-off-by: Yann LE BRIS <[email protected]>
@MarkSymsCtx
Copy link
Contributor

We are actually in the process of deprecating the multipath.conf in this repository, it's no longer being used as responsibility for managing this file has reverted to the owning package, that being device-mapper-multipath.

@ylebris
Copy link
Author

ylebris commented Mar 18, 2025

We are actually in the process of deprecating the multipath.conf in this repository, it's no longer being used as responsibility for managing this file has reverted to the owning package, that being device-mapper-multipath.

Very clear.

In that case, I will let you close this PR.

@ydirson
Copy link
Contributor

ydirson commented Mar 19, 2025

We are actually in the process of deprecating the multipath.conf in this repository, it's no longer being used as responsibility for managing this file has reverted to the owning package, that being device-mapper-multipath.

So what would be the channel now for sending such contributions?

@olivierlambert
Copy link

Same question. I think it's at least very useful to be able to contribute on this kind of configuration right on Github.

@ylebris
Copy link
Author

ylebris commented Mar 20, 2025

For your information, I spend a lot of time with manufacturers to obtain this type of information.
I know that you do the same.

I can get vendor validation here.

You want to separate the elements, fine: give the instructions and the elements. But to do it properly.

@MarkSymsCtx
Copy link
Contributor

Abd that place is here - https://github.com/opensvc/multipath-tools

@olivierlambert
Copy link

I'm not sure to get it, you are pointing to the upstream Multipath project, right? We are talking about the multipath config file used by both downstreams of "XAPI Project" in here: XenServer and XCP-ng. I don't see there the file that will be used in there in that upstream repo, can you point me to it?

@MarkSymsCtx
Copy link
Contributor

Precisely, vendor recommended multipath configuration should be sent to the upstream maintainers of multipath and from there it can be consumed into distributions either by updating the build of multipath or backporting the relevant commits. The storage manager has no business thinking it can take ownership of the multipath configuration of the system and for XenServer 9 onwards it no longer does.

@MarkSymsCtx
Copy link
Contributor

And udev updates should go to - https://github.com/systemd/systemd/tree/main/rules.d really

@ylebris
Copy link
Author

ylebris commented Mar 20, 2025

You know very well that our configurations are specific to hypervisors.

Why?

@olivierlambert
Copy link

olivierlambert commented Mar 20, 2025

I understand very well your point but still, such a big change should be done in cooperation and pointing directly where to do the upstream changes (you haven't answer yet which file precisely will replace the multipath.conf in the upstream repo). This is how open source works, in cooperation 🙂

You cannot take unilateral decision and not giving some context or any clue on the new way to do it after (without having us to ask multiple times), otherwise it could be seen as voluntary obstruction.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants