diff options
author | Jason Tedor <jason@tedor.me> | 2016-11-11 16:41:54 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-11-11 16:41:54 -0500 |
commit | 1fde26347affe49225135decac2f54cd0e3b390e (patch) | |
tree | e8c4b32e439acfc68e82a0ede7a663a750f857d2 | |
parent | 5f1d1087041f5a4be9d9da4b8ed5a36ed4c0861f (diff) |
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
-rw-r--r-- | distribution/src/main/packaging/scripts/postinst | 5 | ||||
-rw-r--r-- | qa/vagrant/src/test/resources/packaging/scripts/os_package.bash | 1 |
2 files changed, 6 insertions, 0 deletions
diff --git a/distribution/src/main/packaging/scripts/postinst b/distribution/src/main/packaging/scripts/postinst index 6d19e5f33c..91042ffbf5 100644 --- a/distribution/src/main/packaging/scripts/postinst +++ b/distribution/src/main/packaging/scripts/postinst @@ -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" diff --git a/qa/vagrant/src/test/resources/packaging/scripts/os_package.bash b/qa/vagrant/src/test/resources/packaging/scripts/os_package.bash index db274b6498..21ce874971 100644 --- a/qa/vagrant/src/test/resources/packaging/scripts/os_package.bash +++ b/qa/vagrant/src/test/resources/packaging/scripts/os_package.bash @@ -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 |