AWS DevOps Engineer Professional DOP-C01 – Question480

What are the default memory limit policies for a Docker container?

A.
Limited memory, limited kernel memory
B. Unlimited memory, limited kernel memory
C. Limited memory, unlimited kernel memory
D. Unlimited memory, unlimited kernel memory

Correct Answer: D

Explanation:

Explanation:
Kernel memory limits are expressed in terms of the overall memory allocated to a container.
Consider the following scenarios:
Unlimited memory, unlimited kernel memory: This is the default behavior.
Unlimited memory, limited kernel memory: This is appropriate when the amount of memory needed by all cgroups is greater than the amount of memory that actually exists on the host machine.
You can configure the kernel memory to never go over what is available on the host machine, and containers which need more memory need to wait for it.
Limited memory, umlimited kernel memory: The overall memory is limited, but the kernel memory is not.
Limited memory, limited kernel memory: Limiting both user and kernel memory can be useful for debugging memory-related problems.
If a container is using an unexpected amount of either type of memory, it will run out of memory without affecting other containers or the host machine. Within this setting, if the kernel memory limit is lower than the user memory limit, running out of kernel memory will cause the container to experience an OOM error.
If the kernel memory limit is higher than the user memory limit, the kernel limit will not cause the container to experience an OOM.
Reference:
https://docs.docker.com/engine/admin/resource_constraints/#–kernel…