You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Hi k0s maintainers, I'm trying to reduce the size of the k0s binary as we do with other Go binaries we put in our images. This is because space can be crucial to some of our users. When I try to do this with k0s, it unfortunately doesn't run the controller any longer. I'm aware this is not k0s fault per se, but I was wondering if you have an idea why. Thanks!
Unfortunately, you cannot upx-compress k0s after the fact. This is because k0s is "sort of" a self-extracting tarball. It has gzipped files attached to the ELF/PE executable. If that executable is mangled by UPX, the offsets will be different, and k0s won't be able to uncompress the embedded binaries.
However, if UPX would be included in k0s's build process, at a stage before the amalgamation, it might work. I'm currently having a look at that ...
Alright. The linked PR shows that k0s can in principle be UPX-compressed. Whether this should be the default for the prebuilt binaries on the GitHub release pages needs more thought, though, as the compression is not free. There are runtime caveats that may be more or less important depending on the scenario.
@mauromorales would you be interested in joining the k0s community call next Tuesday? We'd love to learn more about k0s in Kairos and see where we can help. Maybe we can discuss a solution for UPX compression as well: https://dateful.com/eventlink/2735919704
Hi k0s maintainers, I'm trying to reduce the size of the k0s binary as we do with other Go binaries we put in our images. This is because space can be crucial to some of our users. When I try to do this with k0s, it unfortunately doesn't run the controller any longer. I'm aware this is not k0s fault per se, but I was wondering if you have an idea why. Thanks!
For compression, I use https://github.com/upx/upx in the following way
which as mentioned previously takes a 250M binary
down to aprox 188M
However, after doing this, I can no longer start the controller because it breaks with the following error:
The text was updated successfully, but these errors were encountered: