[Unit] Description=ClickHouse Server (analytic DBMS for big data) Requires=network-online.target # NOTE: that After/Wants=time-sync.target is not enough, you need to ensure # that the time was adjusted already, if you use systemd-timesyncd you are # safe, but if you use ntp or some other daemon, you should configure it # additionaly. After=time-sync.target network-online.target Wants=time-sync.target [Service] Type=notify # NOTE: we leave clickhouse watchdog process enabled to be able to see OOM/SIGKILL traces in clickhouse-server.log files. # If you wish to disable the watchdog and rely on systemd logs just add "Environment=CLICKHOUSE_WATCHDOG_ENABLE=0" line. User=clickhouse Group=clickhouse Restart=always RestartSec=30 # The following ClickHouse directives should be used instead of forcing SIGKILL by systemd: # - shutdown_wait_unfinished_queries # - shutdown_wait_unfinished TimeoutStopSec=infinity # Disable forwarding signals by watchdog, since with default systemd's # kill-mode control-group, systemd will send signal to all process in cgroup. Environment=CLICKHOUSE_WATCHDOG_NO_FORWARD=1 # Since ClickHouse is systemd aware default 1m30sec may not be enough TimeoutStartSec=0 # %p is resolved to the systemd unit name RuntimeDirectory=%p ExecStart=/usr/bin/clickhouse-server --config=/etc/clickhouse-server/config.xml --pid-file=%t/%p/%p.pid # Minus means that this file is optional. EnvironmentFile=-/etc/default/%p # Bring back /etc/default/clickhouse for backward compatibility EnvironmentFile=-/etc/default/clickhouse LimitCORE=infinity LimitNOFILE=500000 CapabilityBoundingSet=CAP_NET_ADMIN CAP_IPC_LOCK CAP_SYS_NICE CAP_NET_BIND_SERVICE AmbientCapabilities=CAP_NET_ADMIN CAP_IPC_LOCK CAP_SYS_NICE CAP_NET_BIND_SERVICE [Install] # ClickHouse should not start from the rescue shell (rescue.target). WantedBy=multi-user.target