2.7 KiB
title | date | last_modified_at | url | layout | category | image | description |
---|---|---|---|---|---|---|---|
Some Redis installation notes | 2019-01-25 | 2023-10-21 | some-redis-installation-notes | post | Tutorials | /img/blog/some-redis-installation-notes.png | A blog post with a full and viable Redis installation procedure on Debian |
Introduction
I've just achieved one more Redis installation today, and as the previous ones, I had to browse the WEB again, looking for the same pieces of information.
You'll find below my Redis-installation-memo (at least for me, in the future).
No slow listening TCP sockets. Only a hardened UNIX one.
No boot warnings. Only Linux kernel tweaks.
Not so many databases. Only what we usually need.
No hand-made Bash scripts for standalone program administration. Only a systemd-supervised instance.
A procedure powered by Debian ❤️
EDIT 2019-11-11 : This post has been updated, extending compatibility to Debian Buster !
EDIT 2021-08-07 : This post has been updated (again), according to Debian Bullseye new requirements. You may browse previous revisions of it here.
The procedure
{% highlight bash %} apt install -y redis-server
systemctl stop redis-server.service
- nano /etc/redis/redis.conf
- '
...
port 0
...
unixsocket /run/redis/redis-server.sock unixsocketperm 770
...
supervised systemd
...
pidfile /run/redis/redis-server.pid
...
databases 1
...
requirepass '
- systemctl edit redis-server.service
- ' [Service] Type=notify TimeoutStartSec=infinity
If running in non-cluster mode:
ProtectSystem=full '
sysctl -w vm.overcommit_memory=1 echo 'vm.overcommit_memory = 1' > /etc/sysctl.d/redis.conf
- echo "never" > /sys/kernel/mm/transparent_hugepage/enabled
- nano /etc/default/grub
- '
...
GRUB_CMDLINE_LINUX_DEFAULT="[...] transparent_hugepage=never"
...
' update-grub2
systemctl start redis-server.service {% endhighlight %}
At this time the server should be up and running, you may want to check that everything went fine this way :
{% highlight bash %} systemctl status redis-server.service tail -f /var/log/redis/redis-server.log {% endhighlight %}
For Redis usage from PHP-based applications you'll need :
{% highlight bash %} usermod -a -G redis www-data
Using mod_php
?
systemctl restart apache2
Using FPM ?
systemctl restart php7.X-fpm {% endhighlight %}
Conclusion
No conclusion. It should work, even for you, young Web-wanderer.