След дълго търсене най-накрая открих, че systemd има стандартно ограничение от 4096 и независимо от това какво сте задали на системно ниво, нивото на systemd винаги ще има предимство. Поправката за това е да промените ограничението за отваряне на файл systemd, като редактирате /etc/systemd/system.conf и добавите следната настройка
DefaultLimitNOFILE=65536
Изглежда, че има много настройки по подразбиране в systemd, които отменят системните настройки, така че трябва да бъдат зададени в systemd
Така че, ако има някаква полза за хората, това са моите окончателни настройки за сървър на Ubuntu 16.04 за стартиране на производствения redis.
Редактирайте /etc/systemd/system.conf (sudo nano /etc/systemd/system.conf) и добавете
DefaultLimitNOFILE=65536
Редактирайте /etc/security/limits.conf (sudo nano /etc/security/limits.conf) и добавете
* soft nofile 64000
* hard nofile 64000
root soft nofile 64000
root hard nofile 64000
Редактирайте /etc/pam.d/common-session (sudo nano /etc/pam.d/common-session) и добавете
session required pam_limits.so
Редактирайте /etc/pam.d/common-session-noninteractive (sudo nano /etc/pam.d/common-session-noninteractive) и добавете
session required pam_limits.so
Редактирайте /etc/rc.local (sudo nano /etc/rc.local) и добавете
sysctl -w net.core.somaxconn=65535
Редактирайте /etc/sysctl.conf (sudo nano /etc/sysctl.conf) и добавете
vm.overcommit_memory = 1
Редактирайте /etc/rc.local (sudo nano /etc/rc.local) и добавете
echo never > /sys/kernel/mm/transparent_hugepage/enabled