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

Proper Methodology to Sequence Multi-object Fabric Changes #19

Open
rherrell opened this issue Feb 16, 2024 · 0 comments
Open

Proper Methodology to Sequence Multi-object Fabric Changes #19

rherrell opened this issue Feb 16, 2024 · 0 comments
Assignees
Labels
documentation Improvements or additions to documentation enhancement New feature or request

Comments

@rherrell
Copy link
Collaborator

Using the allocation of MemoryChunks (FAM) to CXL Logical Devices and composing them into virtual Platforms by binding FAM to specific hosts as an example, I propose some features / actions that are required of various pieces of the Sunfish Framework that enable the Framework to properly serialize the Redfish model updates submitted to Sunfish Core and send the proper sequence of corresponding Redfish requests to the appropriate Agents involved .

Specifically, in terms of the example from the accompanying slides, here are some of the requirements that fall out from adopting this general strategy for the Sunfish Framework when launching a composed virtual platform:

  • Resource Managers and Composition tools that run as clients of Sunfish Core Services are required to provide sufficiently complete Redfish models of the overall virtual Platform that contains the composited resources to the Sunfish Core in a proper sequence using an 'atomic change request' Action in the Sunfish Core API.

  • Such RM and Composition tools are responsible for serializing multiple requests for reservations of the composable resources, validating the compatibility of the chosen resources, validating the consistency of configurations of the chosen resources, and invoking the correct sequence of requests to the Sunfish Core API.

  • The above implies the RM and Composition tools have a Redfish sandbox for previewing a proposed virtual Platform and validating its correctness.

  • CXL Agents are not required to process incomplete descriptions of MemoryChunk allocations when such requests lack critical details required to successfully perform the allocation on CXL hardware. This rule would be extended to other fabric types.

  • Likewise, CXL Agents are not required to process incomplete descriptions of Zones or Connections.

  • Sunfish Core Services are not responsible for detecting incompatibilities in proposed fabric changes

  • Still TBD: whether Sunfish Core is responsible for adjusting navigation links on related objects when changes to a given object are processed (eg. When a new Connection is POSTED, if an existing Endpoint, MemoryChunk, or other object is involved, is Sunfish obligated to update the MemoryChunk with the navigation link back to the new Connection? (different issue, but similar impact to Sunfish Framework architecture.)

Redfish_CXL_FAM_modeling_4_Sunfish_021624.pptx

@rherrell rherrell added documentation Improvements or additions to documentation enhancement New feature or request labels Feb 16, 2024
@rherrell rherrell self-assigned this Feb 16, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant