-
Notifications
You must be signed in to change notification settings - Fork 1.4k
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
Does not support containers running with random uid #8067
Comments
This might be implemented as a extensive part of #7963, that is, we allow users to specify a customized dir. This increases the risk of failures and the cost of troubleshooting. Therefore, we need a further consideration. |
For security purposes, we have designed all of our application images to be completely read-only by the application process/user. This is why we run the containers with a random uid. This ensures that all directories and files within the container are immutable and cannot be modified if an attack were to take place. The only directory that most of our applications have access to is the /tmp directory. There are some cases where applications need to store persistent data so they use PVC's which is the only other directory that the application has write access to (e.g. /persist). Correct me if I am wrong, but if velero is backing up the PVC, I don't think storing it under /persist/udmrepo would be a good idea. So, our only option is storing it in the volume (/persist), or in /tmp. Also, we run most of our nodes on spot instances so pod restarts happen quite frequently, probably more frequently than the container OS deleting files in the /tmp directory. |
Yes, backup tool should not change anything to the backup source. This is a basic principle. |
If so, I think you will probably encounter further problems when you backup/restore data, since the backup/restore may last long time and if Velero server/node-agent pods are restarted before the backup/restore completes, the backup/restore will fail |
As a workaround, we have reinstalled velero using the |
Given there's concern about putting it in |
What steps did you take and what happened:
unable to create config directory: mkdir /udmrepo: permission denied
The following information will help us better understand what's going on:
It seems to attempt to write to $HOME/udmrepo (link to function), but since the container user does not exist, $HOME is blank which results in /udmrepo which the user does not have write access.
You can replicate this with the following:
Anything else you would like to add:
Would it be possible for us to specify a custom workPath directory (e.g. /tmp/udmrepo)?
Environment:
velero version
): v1.14.0velero client config get features
):kubectl version
): 1.25Vote on this issue!
This is an invitation to the Velero community to vote on issues, you can see the project's top voted issues listed here.
Use the "reaction smiley face" up to the right of this comment to vote.
The text was updated successfully, but these errors were encountered: