Skip to content
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

When pulling images check for stale cached images #624

Closed
wants to merge 7 commits into from

Conversation

biecho
Copy link

@biecho biecho commented Oct 13, 2022

Summary

When vHive does pull images, it must check in its local cache if an image is stale. vHive should do this without pulling the whole image again. skopeo is used to only inspect the metadata from a remote image.

@biecho biecho requested a review from ustiugov October 13, 2022 17:34
Copy link
Member

@ustiugov ustiugov left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks good! however, I am afraid that the image check check would slow down the system if used by default. @biecho could you please measure the added overhead? you can use timestamps printed within log messages, we just need an estimate.

@biecho
Copy link
Author

biecho commented Oct 14, 2022

looks good! however, I am afraid that the image check check would slow down the system if used by default. @biecho could you please measure the added overhead? you can use timestamps printed within log messages, we just need an estimate.

Done

@ustiugov
Copy link
Member

@biecho great! could you please publish the measurements in this PR?

also, could you please take a look at the test failures (must be very simple), particularly vHive unit tests/ [misc, taps, ...]. The failure is likely due to the repo migration last week. I would really appreciate if you could help fix the problems.

@biecho
Copy link
Author

biecho commented Oct 16, 2022

@biecho great! could you please publish the measurements in this PR?

also, could you please take a look at the test failures (must be very simple), particularly vHive unit tests/ [misc, taps, ...]. The failure is likely due to the repo migration last week. I would really appreciate if you could help fix the problems.

Sure I'll publish the measurements as soon as possible. Regarding the vHive unit/tests, I see the following in the logs:

(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 241927 files and directories currently installed.)
Preparing to unpack .../numactl_2.0.12-1_amd64.deb ...
Unpacking numactl (2.0.12-1) ...
Setting up numactl (2.0.12-1) ...
Processing triggers for man-db (2.9.1-1) ...
Cloning into '/usr/local/pmu-tools'...
fatal: could not read Username for 'https://github.com/': No such device or address
Error: Process completed with exit code 128.

I guess this is related to what @EstellaPaula posted on elements.

ctriface/iface.go Outdated Show resolved Hide resolved
}

imageUrl := getImageURL(imageName)
if !found || imageIsOutdated(image, imageUrl) {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you check how image staleness is checked in containerd? Clone the containerd repo and have a look into ContainerCreate stage of the sandbox creation in code, as well as in the logs. Containerd is already running on the worker node and you can check the performance of ContainerCreate phase in containerd logs. It should be creating queue-proxy container. Look into Estella's writing to see how to find logs.

ctriface/iface.go Outdated Show resolved Hide resolved
ctriface/iface.go Show resolved Hide resolved
@ustiugov
Copy link
Member

@cvetkovic do you guys still need this patch? if so, can someone take it over?

@cvetkovic cvetkovic closed this Aug 21, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants