Redis roda no OpenSuse 42.1, mas gera muitos erros. Como faço para corrigir?

1

Instalado o Redis 3.2.4 no OpenSuse 42.1 com o gerenciador de pacotes. A máquina tem 16GB de memória.

Estas etapas foram executadas. (Eu gostaria de correr como deamon, mas não alterei as configurações.)

  • cp default.conf.example default.conf
  • chown root.redis default.conf
  • systemctl enable redis@default
  • systemctl start redis@default
  • service redis start

Como obter esses erros:

54778:C 18 Jan 12:38:56.664 # systemd supervision requested, but    NOTIFY_SOCKET not found   

54778:M 18 Jan 12:38:56.665 # You requested    maxclients of 10000 requiring at least 10032 max file descriptors.     

54778:M 18 Jan 12:38:56.665 # Server can't set maximum open files to    10032 because of OS error: Operation not permitted.  

54778:M 18 Jan 12:38:56.665 # Current maximum open files is 4096. maxclients has    been reduced to 4064 to compensate for low ulimit. If you need higher    maxclients increase 'ulimit -n'.

54778:M 18 Jan 12:38:56.666 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.

54778:M 18 Jan 12:38:56.666 # Server started, Redis version 3.2.4

54778:M 18 Jan 12:38:56.666 # WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.

54778:M 18 Jan 12:38:56.666 # WARNING you have Transparent Huge Pages (THP) support enabled in your kernel. This will create latency and memory usage issues with Redis. To fix this issue run the command 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' as root, and add it to your /etc/rc.local in order to retain the setting after a reboot. Redis must be restarted after THP is disabled.
    
por Merlin 18.01.2017 / 18:50

2 respostas

0

parece que você precisa ajustar o seu kernel Linux. Dê uma olhada no comando sysctl, no arquivo de configuração sysctl.conf e nas respectivas páginas man.

Você precisa aumentar os seguintes valores de kernel: descritores de arquivos máximos, máximo de arquivos abertos, conexões máximas, habilitar memória de supercomprometimento e desabilitar páginas enormes e transparentes. E reinicie depois disso

Parece que sua instância de redis está em execução, mas com desempenho limitado

    
por 18.01.2017 / 19:08
0

deve inserir uma linha Type=forking na seção [Service] file redis.service

para o tipo de Ubuntu sudo nano /etc/systemd/system/redis.service

    
por 14.04.2017 / 11:48