无法在Centos 7上启动redis服务器

时间:2017-03-19 19:48:15

标签: redis centos centos7

我正在尝试安装OpenVas,但无法在CentOS上启动Redis服务器。我该怎么做才能排除故障?

我通过运行安装openvas(这会安装redis和所有其他依赖项):

# yum install openvas

我尝试通过运行来启动它:

# systemctl enable redis && systemctl restart redis

我通过运行以下命令检查systemctl状态日志中的redis:

# systemctl status redis -l

它显示连接被拒绝且无法启动:

Mar 19 12:37:13 hostname.local systemd[1]: Started Redis persistent key-value database.
Mar 19 12:37:13 hostname.local systemd[1]: Starting Redis persistent key-value database...
Mar 19 12:37:14 hostname.local systemd[1]: redis.service: main process exited, code=exited, status=1/FAILURE
Mar 19 12:37:14 hostname.local redis-shutdown[19127]: Could not connect to Redis at 127.0.0.1:6379: Connection refused
Mar 19 12:37:14 hostname.local systemd[1]: redis.service: control process exited, code=exited status=1
Mar 19 12:37:14 hostname.local systemd[1]: Unit redis.service entered failed state.
Mar 19 12:37:14 hostname.local systemd[1]: redis.service failed.

3 个答案:

答案 0 :(得分:0)

首先,查看/var/log/redis/redis.log

我尝试使用此帖子进行设置 https://forums.atomicorp.com/viewtopic.php?f=31&t=8047

1) Disable SELINUX.
Edit /etc/selinux/config, save and reboot
2) Add required packages
yum install wget bzip2 texlive net-tools alien
3) Add Atomicorp repo
wget -q -O - http://www.atomicorp.com/installers/atomic | sh
4) Install OpenVAS 
yum install openvas
5) edit /etc/redis.conf. Add/uncomment the following
unixsocket /tmp/redis.sock
unixsocketperm 700
6) Restart Redis
systemctl enable redis && systemctl restart redis

redis ip up and running

[root@localhost ~]# cat /var/log/redis/redis.log
                _._
           _.-``__ ''-._
      _.-``    `.  `_.  ''-._           Redis 3.2.3 (00000000/0) 64 bit
  .-`` .-```.  ```\/    _.,_ ''-._
 (    '      ,       .-`  | `,    )     Running in standalone mode
 |`-._`-...-` __...-.``-._|'` _.-'|     Port: 6379
 |    `-._   `._    /     _.-'    |     PID: 29645
  `-._    `-._  `-./  _.-'    _.-'
 |`-._`-._    `-.__.-'    _.-'_.-'|
 |    `-._`-._        _.-'_.-'    |           http://redis.io
  `-._    `-._`-.__.-'_.-'    _.-'
 |`-._`-._    `-.__.-'    _.-'_.-'|
 |    `-._`-._        _.-'_.-'    |
  `-._    `-._`-.__.-'_.-'    _.-'
      `-._    `-.__.-'    _.-'
          `-._        _.-'
              `-.__.-'

29645:M 21 Mar 14:55:00.551 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.
29645:M 21 Mar 14:55:00.551 # Server started, Redis version 3.2.3
29645:M 21 Mar 14:55:00.551 # 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.
29645:M 21 Mar 14:55:00.551 # 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.
29645:M 21 Mar 14:55:00.551 * The server is now ready to accept connections on port 6379

答案 1 :(得分:0)

是否启用了SELinux?你可以使用这个命令来检查:

$ getenforce

如果是'Enforcing',可能是SELinux政策阻止了redis,你还可以检查/etc/redis.conf吗?找到以'unixsocket'开头的行,如果是/tmp/redis.sock,请尝试将其更改为'/var/run/redis/redis.sock':

unixsocket /var/run/redis/redis.sock

然后重新启动redis服务器,检查服务器状态,OpenVAS安装程序需要redis侦听unix套接字。

答案 2 :(得分:0)

CentOs8 配置私网

  1. 更新防火墙服务以允许来自专用网络的传入连接:

    sudo firewall-cmd --permanent --zone=trusted --change-interface=ens7

表示接口网络名称 2.创建systemd服务,延迟Redis启动,直到私有接口up并分配IP地址

sudo nano /etc/systemd/system/redis.service.d/wait-for-ips.conf
  1. 将以下文本粘贴到文件中,然后保存并关闭它:

    [单位] After=network-online.target Wants=network-online.target

  2. 重新加载服务

    sudo systemctl daemon-reload

  3. 重启服务

    sudo systemctl restart redis.service

谢谢信用 https://www.vultr.com/docs/install-and-configure-redis-on-centos-8