Add usage doc for compute section#1212
Merged
afritzler merged 5 commits intoironcore-dev:mainfrom Jan 29, 2025
Merged
Conversation
6dab515 to
88f8e7b
Compare
afritzler
requested changes
Jan 9, 2025
b5b0bff to
311373f
Compare
311373f to
13e297d
Compare
afritzler
requested changes
Jan 17, 2025
docs/usage/compute/machine.md
Outdated
| - **Update Cache**: The scheduler updates the cache with recalculated allocatable `machineClass` quantities. | ||
| - **Assign MachinePoolRef**: The scheduler assigns the selected `machinePoolRef` to the machine object. | ||
|
|
||
| 2. **IRI Machine creation**: Once the Machine is allocated to a particular pool, the `MachineController` processes the `Machine` resource and it extracts the `ignitionData`, `networkInterfaces` and `volumes` information from the `spec` and prepares IRI machine resource. |
Member
There was a problem hiding this comment.
Here I would mention that a machinepoollet responsible for this Pool is picking up the Machine and is doing the subsequent IRI call either against a broker (to copy the resource into another cluster) OR a provider implementation e.g. libvirt-provider which creates a corresponding machine against libvirt/QEMU.
| 5. **Volume handling**: `MachineControllerVolume` takes care of attach/detach of Volumes(Storage) defined for machine. Once the attachment is successful status is updated from `Pending` to `Attached`. | ||
|
|
||
| 6. **Ephemeral resource handling**: If `NetworkIntreface` or `Volume` is defined as ephemeral(i.e. coupled to the lifetime of the machine object) in the machine spec, `MachineEphemeralControllers` takes care of creating and destroying respective objects on creation/deletion of the machine. | ||
|
|
Member
There was a problem hiding this comment.
Maybe it also makes sense here to mention that you can bind the Volume and NIC lifecycle with the Machine lifecycle by creating ephemeral resources on the fly and reference here the e2e examples for those.
| # MachinePool | ||
|
|
||
| A `MachinePool` is a resource in `Ironcore` that represents a pool of compute resources managed collectively. It defines the infrastructure's compute configuration used to provision and manage `Machines`, ensuring resource availability and compatibility with associated `MachineClasses`. | ||
|
|
Member
There was a problem hiding this comment.
Maybe we should mention here that always ONE machinepoollet is responsible for one MachinePool.
13e297d to
44bbbf0
Compare
afritzler
approved these changes
Jan 29, 2025
balpert89
pushed a commit
that referenced
this pull request
Apr 23, 2025
* add usage doc for compute * refactoring * refactoring * incorporating review comments * incorporating review comments
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Proposed Changes
Machine,MachineClassandMachinePoolin compute section.Fixes #1190