Skip to content
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

NAS-131090 / 25.04 / Fibre Channel Support #14683

Merged
merged 27 commits into from
Oct 29, 2024
Merged

NAS-131090 / 25.04 / Fibre Channel Support #14683

merged 27 commits into from
Oct 29, 2024

Conversation

bmeagherix
Copy link
Contributor

@bmeagherix bmeagherix commented Oct 14, 2024

Add support for Fibre Channel targets

Overview

SCST includes support for Fibre Channel targets using QLA2xxx HBAs. This PR includes the middleware changes necessary to utilize the mechanism.

  • ALUA is supported, using the same HA internal iSCSI targets as are used for iSCSI ALUA support,
  • NPIV will be supported

API summary

In CORE an fcport CRUD interface was available to perform the target to FC port mapping. A similar CRUD API is presented here.

However, in CORE we could reliably pair the ports on each node in a HA system simply by using the same moniker (e.g. isp0). Since this is not quite true in SCALE we instead will have a DB table / API to wire the ports together based upon the slot information obtained from dmidecode. The auto-wiring will use a default moniker of fc0, etc ... so that any migration from SCALE will be forced to manually check that the A/B controllers port pairing are as expected. The upshot of all of this is that another (private) fc.fc_host API is implemented.

The fc.fc_host API will also include the NPIV setting for the FC Host port, which in CORE was a System Tunable.

To support the UI fcport.port_choices and fcport.status are also included.


This CI run shows

  • no general iSCSI regressions
  • Passing Fibre Channel CI tests

@bmeagherix bmeagherix added the WIP label Oct 14, 2024
@bugclerk bugclerk changed the title NAS-131090 NAS-131090 / 25.04 / NAS-131090 Oct 14, 2024
@bugclerk
Copy link
Contributor

@bmeagherix bmeagherix changed the title NAS-131090 / 25.04 / NAS-131090 NAS-131090 / 25.04 / Fibre Channel Support Oct 14, 2024
@bmeagherix bmeagherix force-pushed the NAS-131090 branch 2 times, most recently from e299d4c to 474c7c0 Compare October 21, 2024 18:01
@bmeagherix
Copy link
Contributor Author

FWIW, currently writing more unit tests, but will need to wait for another PR to land/merge before rebasing this PR and committing those tests.

@bmeagherix bmeagherix merged commit 7b1597a into master Oct 29, 2024
2 of 3 checks passed
@bmeagherix bmeagherix deleted the NAS-131090 branch October 29, 2024 19:00
@bugclerk
Copy link
Contributor

This PR has been merged and conversations have been locked.
If you would like to discuss more about this issue please use our forums or raise a Jira ticket.

@truenas truenas locked as resolved and limited conversation to collaborators Oct 29, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants