Update prerequisites to clarify ulimit and sysctl checks
In our prerequsites docs, we call out setting sysctl commands and ulimits for the host machine. This works the majority of the time because containers will inherit these settings from the host. However, there are other factors that can change these values. For example, the --default-ulimit
option in dockerd
can override the ulimit from the host.
The documentation needs to be clarified to indicate that the values should be checked in a running container to see the true sysctl/ulimit settings that elasticsearch and/or sonarqube would see. We should also provide an easy example of how to test this by running docker run and sysctl/ulimit. Reading the values in the container should not require root access or a privileged container.
We can also call out that certain distros may not allow modification of these settings. In those distros init containers should be used - see EK example https://repo1.dso.mil/platform-one/big-bang/apps/core/elasticsearch-kibana/-/blob/main/chart/values.yaml#L99-106 and the discussion in https://repo1.dso.mil/platform-one/big-bang/apps/core/elasticsearch-kibana/-/issues/27