Set vm.max_map_count on systemd package install

Our docs claim that we set vm.max_map_count automatically. This is not
quite the case. The story is that on SysV init we set vm.max_map_count
each time the service starts, which is good. On systemd, we create a
sysctl.d conf file that sets vm.map_max_count, but this is only
meaningful if the system is rebooted after package install. This commit
modifies the post-install script so that we run systemd-sysctl so that
the vm.max_map_count change occurs after package install without a
reboot.

Relates #21507
This commit is contained in:
Jason Tedor 2016-11-11 16:41:54 -05:00 committed by GitHub
parent 5f1d108704
commit 1fde26347a
2 changed files with 6 additions and 0 deletions

View File

@ -51,6 +51,11 @@ case "$1" in
;;
esac
# to pick up /usr/lib/sysctl.d/elasticsearch.conf
if command -v /usr/lib/systemd/systemd-sysctl > /dev/null; then
/usr/lib/systemd/systemd-sysctl
fi
if [ "x$IS_UPGRADE" != "xtrue" ]; then
if command -v systemctl >/dev/null; then
echo "### NOT starting on installation, please execute the following statements to configure elasticsearch service to start automatically using systemd"

View File

@ -123,6 +123,7 @@ verify_package_installation() {
assert_file "/usr/lib/systemd/system/elasticsearch.service" f root root 644
assert_file "/usr/lib/tmpfiles.d/elasticsearch.conf" f root root 644
assert_file "/usr/lib/sysctl.d/elasticsearch.conf" f root root 644
[[ $(sysctl vm.max_map_count) =~ "vm.max_map_count = 262144" ]]
fi
if is_sysvinit; then