-
Notifications
You must be signed in to change notification settings - Fork 601
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
Impossible to use "metal-iso" from any partition #9538
Comments
Fixes siderolabs#9538 Re-do the implementation by using the volume management primitives, so that we can avoid/skip old code. This should fix all issues related to the partition/whole disk. Fix issues in the volume management (exposed, as we haven't used it this way before). Build a test case in `talosctl cluster create` to inject machine config via `metal-iso`. Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
Fixes siderolabs#9538 Re-do the implementation by using the volume management primitives, so that we can avoid/skip old code. This should fix all issues related to the partition/whole disk. Fix issues in the volume management (exposed, as we haven't used it this way before). Build a test case in `talosctl cluster create` to inject machine config via `metal-iso`. Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com> (cherry picked from commit d393938)
Hi team. Since this change, talos cannot automount the following block device with a configuration file on it. The config.yaml file located inside was automatically generated by terraform; its content is not important at this stage. It fails with the following error: The problem persists both on 1.8.3 and 1.9.0-alpha2. Reverting to 1.8.1 makes it work again. A slightly related, but different issue: I didn't go through the code very attentively, but looking at d393938 , I have a feeling that the ext2 file system isn't supported anymore because you require a FS from an explicit list in the code. Is this the case? I artificially inflated the size so that an ext4 file system is created by mke2fs for this test, but it creates an ext2 fs when the partition is smaller than 2MB. |
ext4 isn't supported to (from my tests). XFS works well. Try it. |
Thank you for confirming the issue and for the workaround. Is ext4 just plain unsupported by the team, or is it a bug? |
Idk. I tried ext4 for metal-iso partition without luck. Switches to xfs and it solved my problem. Tried on 1.8.2. |
|
Bug Report
In docs it is stated, that any correctly labeled partition on block device can be used to provide configuration to Talos - https://www.talos.dev/v1.8/reference/kernel/#metal-iso. But is it not. Only labeled filesystem that occupies whole block device can be used.
Description
i digged the code and placing config file in partition doesn’t work. at least in version 1.7.7, that i checked. in readConfigFromISO definition probe.GetDevWithFileSystemLabel(constants.MetalConfigISOLabel) return correct device (partition) name (for example, /dev/loop0p7), but later in filesystem.Probe(dev.Device().Name()) .Name() return block device name without partition in it (/dev/loop0) and .Probe() can’t parse superblock because of it.
List of partitions:
Logs
metal-iso-logs.txt
Environment
This patch should fix issue:
The text was updated successfully, but these errors were encountered: