-
Notifications
You must be signed in to change notification settings - Fork 2k
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
Client Side Allocation Directory GC #1418
Comments
Looking through the code more. Looks like the storage fingerprint is not periodic. I think that this especially is hurting me while trying to upgrade from 0.3.2 to 0.4.0. I ran |
Hey, This is something we are aware of and will be fixing. It is really do to the client not garbage collecting allocation directories it manages. It currently waits for a signal from the server that occurs on an interval which is incorrect. |
Are you saying that you want to gc the allocation directories before startup, and before the fingerprint runs? If you want to try and re-attach to any executors that are still running after startup (or run this check periodically) then you will encounter the problem of counting logs twice. |
@a86c6f7964 We will GC allocations which are dead and if there are new tasks trying to get disk space. |
+1 yo |
I can wait to see what happens, but I feel like I am a little lost. Current state of the world
State that I think would be good
|
There is also a PR which is going to land soon which is going to kill tasks when they exceed the allocated quota. |
@a86c6f7964 What you described is the goal |
@dadgar So we are seeing two issues:
From the above conversation it seems that my first point is being addressed. I'm unclear though from the above if the disk will actually be cleaned up from stopped or failed allocations automatically, or if we will need to run a GC task to clean up the file system manually? |
@jshaw86 You won't have to run a GC task to clean up the dead allocations. Nomad will clean them up automatically once we have implemented the client GC feature. |
Also they are automatically cleaned up periodically when the master server On Mon, Jul 18, 2016, 8:12 PM Diptanu Choudhury [email protected]
|
@a86c6f7964 are you currently seeing this automatically cleaned up behavior by master server GC? We are not seeing any disk cleanup under 0.4.0 even after the 24 hours. |
I saw them go away because in order to accomplish an upgrade of nomad I did.
So maybe it only does it if you run the system gc? |
Does anyone know if #2081 helps this issue out at all? |
Fixed via #2081 |
I'm going to lock this issue because it has been closed for 120 days ⏳. This helps our maintainers find and focus on the active issues. |
nomad 0.4.0
Since the disk fingerprint is both checking the disk for "free" space, and then is also being allocated for logs the logs on disk can end up counting twice.
If for instance I have 450 MB of disk space, and and 2 tasks that are set to have 10 rolling log files of 10MB each, and then I set both of those tasks to require 100MB of space. After my 2 tasks run for a long time and fill up all of the logs I can end up with resource allocation of 200/250 . Since the logs will be taking up physically 200MB on disk, and then also I will be trying to allocate 200MB worth for them.
This would mean that I could not put another task of 100MB disk allocation onto this node, because according to the resource check there is only 50MB available, but since we know that 200MB of the 250 have already been accounted for we should be able to provision the task.
The text was updated successfully, but these errors were encountered: