-
Notifications
You must be signed in to change notification settings - Fork 59
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
use internal qcow2 compression for nutanix image #1191
Comments
@miabbott @sohankunkerkar See issue here as discussed. Please let us know if we should take up these changes ourselves. |
The
We'd probably want to implement something like |
Is the only reason you want the image compressed internally because you want to do the "direct download and import"? I've heard some people claim that using the internal qcow2 compression could have performance impacts, but I have no idea whether that is actually true. It might be worth investigating that before we made a change. |
Maybe the best place to make a change like this would be: |
@dustymabe this looks like exactly what we want, I see there are others that already implement "convert options", so we could just do the same with "-c". |
I'm going to transfer this to our main issue tracker for awareness. |
I concur that we should verify there are no performance impacts. Another alternative is simply to skip compressing the artifact altogether. |
I am confirming with our core virt/storage team on the performance aspect. We would definitely want to skip the gzip compression for the resulting artifact. |
I think we should skip compressing the artifact with |
Note that we can't stop shipping the compressed artifact (at least without a deprecation period), since that would break anyone using it. We'll need to add a new one. |
That's fine. Just note that these images are not yet GA'd from OpenShift perspective anyway. We are planning GA in 4.11. |
They're shipping in Fedora CoreOS though. |
I have confirmed that there is no performance impact with compression. Our image service converts all qcow2 images to raw for deployed VMs. |
@dustymabe Would something like this be sufficient to ensure internal qcow2 compression?
Looking at the nutanix variant, it doesn't specify compression anywhere. So, the actual compression of the artifact is happening elsewhere (explicit I'm trying to figure out how do the images assembled from the assembler end up as an artifact in https://github.com/openshift/installer/blob/master/data/data/coreos/rhcos.json#L489-L500 |
Looking at the past git commits, these changes to the contents of the |
We do the compression of the artifacts in the RHCOS build pipeline as a separate stage, where we just call https://github.com/coreos/coreos-assembler/blob/main/src/cmd-compress |
@miabbott Can we, as part of the RHCOS build pipeline, upload a non-gzipped variant along with the current gzipped variant. |
It's possible, though I think we'll need to define a new artifact as noted here #1191 (comment) |
Yeah, we're fine with a new artifact. So, what do we need to do to make that happen? |
There's a WIP checklist that covers some of it - #1170 Introducing a new artifact is not trivial, so I would be prepared for a lot of back and forth. |
I think there might be a problem with introducing a new artifact in this case. In stream metadata, we'd have both Considering this some more, I now think we shouldn't add a new artifact. The technical hurdles to introducing one aren't trivial, and I'm guessing there aren't many FCOS users who've started using the existing one. And if we carry a second artifact, there's the implication that we'll continue doing so for the long term. So instead, I think we should announce a short deprecation period on coreos-status and just switch over. |
Agree with ⬆️ - being compatible where possible is important, but I think this case doesn't quite warrant it. (I do think longer term though Nutanix and other platforms ideally learns how to accept e.g. kubevirt-style containerdisks natively instead) |
From this week's meeting:
|
The fix for this went into |
The fix for this went into |
Feature Request
support qemu-img "-c" option for compressing qcow2 images for nutanix platform
Desired Feature
We would like to add functionality to natively compress Nutanix qcow2 using the "-c" compress option rather than gzip them. This functionality would support the ability of the OpenShift installer to orchestrate the Nutanix Image Service to directly download and import the qcow2 rather than having the installer locally unzip then upload an uncompressed image.
Example Usage
coreos-assembler buildextend-nutanix --compress
Other Information
We need to coordinate this change with OpenShift installer functionality so it would be helpful to temporarily build both compressed qcow2 and gzip'd qcow2 artifacts.
The text was updated successfully, but these errors were encountered: