-
Roman Tsisyk authored
Set LimitNOFILE to 65535 to provide the best Vinyl experience out of the box. Closes #2465
Roman Tsisyk authoredSet LimitNOFILE to 65535 to provide the best Vinyl experience out of the box. Closes #2465
tarantool@.service.in 1.81 KiB
# Please don't modify this file in-place, because it will be overwrriten
# during package upgrades. It is recommended to copy this file to
# /etc/systemd/system and then modify the chosen settings. Alternatively,
# one can create a directory named service.d/ within /etc/systemd/system and
# place a drop-in file name.conf there that only changes the specific
# settings one is interested in.
#
# For example, if you want to change the maximum number of open files
# for example.lua instance, you need to perform the following steps:
#
# 1. Create directory /etc/systemd/system/tarantool@example.service.d/ with
# file limits.conf containing:
#
# [Service]
# LimitNOFILE=10000
#
# 2. Reload systemd daemon
#
# systemctl daemon-reload
#
# 3. Check new settings
#
# systemctl show tarantool@example|grep LimitNOFILE
#
# 4. Restart tarantool@example service
#
# systemctl restart tarantool@example
#
# Please see http://tarantool.org/doc/book/administration.html and
# systemd.service(5) man page for additional information.
#
[Unit]
Description=Tarantool Database Server
After=network.target
Documentation=man:tarantool(1)
# Instance file
ConditionPathExists=@TARANTOOL_INSTANCEDIR@/%I.lua
[Service]
Type=notify
User=@TARANTOOL_USER@
Group=@TARANTOOL_USER@
# Disable OOM killer
OOMScoreAdjust=-1000
# Increase fd limit for Vinyl
LimitNOFILE=65535
ExecStart=@CMAKE_INSTALL_FULL_BINDIR@/tarantoolctl start %I
ExecStop=@CMAKE_INSTALL_FULL_BINDIR@/tarantoolctl stop %I
## NYI: https://github.com/tarantool/tarantool/issues/1229
#ExecReload=@CMAKE_INSTALL_FULL_BINDIR@/tarantoolctl reload %I
# Systemd waits until all xlogs are recovered
TimeoutStartSec=86400s
# Give a reasonable amount of time to close xlogs
TimeoutStopSec=10s
Restart=on-failure
RestartSec=100ms
[Install]
WantedBy=multi-user.target
DefaultInstance=example