diff --git a/provision/box_tuning.zsh b/provision/box_tuning.zsh new file mode 100644 index 000000000..ae2d9d7c1 --- /dev/null +++ b/provision/box_tuning.zsh @@ -0,0 +1,33 @@ +#!/usr/bin/env zsh + +### +# Tune-up the system settings +system_tuning() +{ + echo "Tunning up the system" + + # Enable overcomit memmory for Redis + sudo echo -e "\n## Redis tune-up" >> /etc/sysctl.conf + sudo echo '# Allow background save on low memory conditions' >> /etc/sysctl.conf + sudo echo -e "vm.overcommit_memory = 1\n" >> /etc/sysctl.conf + + # Enagle huge pages for Redis + sudo touch /etc/rc.local + sudo echo '## Redis tune-up' >> /etc/rc.local + sudo echo '# Reduce latency and memory usage' >> /etc/rc.local + sudo echo 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' >> /etc/rc.local + sudo echo -e "\n\n" + sudo echo -e "exit 0\n" >> /etc/rc.local + sudo chmod +x /etc/rc.local + + # Increase virtual memory areas for ElasticSearch + sudo echo -e "\n## ElasticSearch tune-up" >> /etc/sysctl.conf + sudo echo '# Increase max virtual memory areas' >> /etc/sysctl.conf + sudo echo -e "vm.max_map_count = 262144\n" >> /etc/sysctl.conf +} + +setup() { + system_tuning +} + +setup "$@" \ No newline at end of file