Назад | Перейти на главную страницу

redis «Нет маршрута к хосту» при проверке связи с удаленным хостом Redis

Я настраиваю сервер Resque, и мне нужно настроить Redis в первый раз. При использовании redis-cli для проверки связи с удаленным сервером я получаю сообщение об ошибке «Нет маршрута к хосту», однако, когда я напрямую проверяю связь с удаленным сервером, он возвращает ОК. Поскольку у меня никогда не было много работы с Redis или, если на то пошло, много работы за кулисами на сервере, я не совсем уверен, что делать дальше.

[root@ss03-dev-worker bin]# redis-cli -h 10.176.x.yyy ping
Could not connect to Redis at 10.176.x.yyy:6379: No route to host

[root@ss03-dev-worker bin]# ping 10.176.x.yyy
PING 10.176.x.yyy (10.176.x.yyy) 56(84) bytes of data.
64 bytes from 10.176.x.yyy: icmp_seq=1 ttl=61 time=2.09 ms
64 bytes from 10.176.x.yyy: icmp_seq=2 ttl=61 time=0.812 ms
64 bytes from 10.176.x.yyy: icmp_seq=3 ttl=61 time=0.508 ms
^C
--- 10.176.x.yyy ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2785ms
rtt min/avg/max/mdev = 0.508/1.139/2.099/0.690 ms

Я убедился, что правила iptable на дополнительных серверах разрешают соединения с каждого из них.

[root@ss03-dev-worker bin]# iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
...snip....
ACCEPT     tcp  --  10.176.x.yyy         anywhere            tcp dpt:6379

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         
REJECT     all  --  anywhere             anywhere            reject-with icmp-host-prohibited 

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         

Chain fail2ban-SSH (0 references)
target     prot opt source               destination       

но все еще не удается подключить Redis. Что еще мне нужно реализовать?

Если что-то другое, то это в Rackspace Cloud.

Редактировать:

Закомментирован параметр привязки redis conf.

Кажется, iptables все отфильтровывал. Решением было создание сети РЕДИС.

iptables -N REDIS
iptables -A REDIS -s 192.168.10.1 -j ACCEPT
iptables -A REDIS -s 192.168.10.2 -j ACCEPT
iptables -A REDIS -j LOG --log-prefix "unauth-redis-access"
iptables -A REDIS -j REJECT --reject-with icmp-port-unreachable
iptables -I INPUT -p tcp --dport 6379 -j REDIS

Совет шляпы http://www.golja.org/blog/monitoring-traffic-with-iptables/

Для меня я просто использую графический интерфейс межсетевого экрана, чтобы открыть порт 6379 TCP (который используется redis-server).

После этого я могу использовать командную строку redis-cli для подключения, используя:

redis-cli -h <server IP> -p 6379