-
Notifications
You must be signed in to change notification settings - Fork 6
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
Add usage doc for compute section #1212
base: main
Are you sure you want to change the base?
Add usage doc for compute section #1212
Conversation
6dab515
to
88f8e7b
Compare
b5b0bff
to
311373f
Compare
311373f
to
13e297d
Compare
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. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
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.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
done
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. | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
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.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
done
@@ -1 +1,33 @@ | |||
# 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`. | |||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe we should mention here that always ONE machinepoollet
is responsible for one MachinePool
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
done
13e297d
to
44bbbf0
Compare
Proposed Changes
Machine
,MachineClass
andMachinePool
in compute section.Fixes #1190