Redis на лазурном Debian VM - подключить ETIMEDOUT

440
Achiel Volckaert

Я сделал виртуальную машину Debian 9 в Azure, я также установил MariaDB, PHPMyAdmin и узел с pm2. После этого я установил во входящих правилах порт 80 для HTTP, 3306 для MySQL и порт 6379 для Redis.

когда я пытаюсь соединиться с клиентом Windows, он отказывается или в коде он также отказывается, и я получаю «Ошибка: Redis соединение с [someIP]: 6379 не удалось - подключить ETIMEDOUT [someIP]: 6379». когда я изменяю настройки подключения на другой Redis, который у меня есть, он работает, поэтому не должно быть проблем с кодом.

короче говоря: что я должен проверить для успешного соединения из моей домашней сети с Redis на Azure.

2
redis-cli, хост по умолчанию - localhost. Если вы хотите получить доступ к redis из Интернета, служба не может прослушивать localhost, вам следует использовать частный ip. Затем используйте `redis-cli -h`и` redis-cli -h `. Надеюсь, поможет. Shui Shengbao 6 лет назад 0
Привет, у тебя это работает? Пожалуйста, дайте мне знать, если вам нужна дополнительная помощь в будущем. Shui Shengbao 6 лет назад 0

1 ответ на вопрос

0
Shui Shengbao

Я ссылаюсь на этот официальный документ и устанавливаю redis на Debian 9. Я мог бы подключить его к VM Public IP.

Вы должны включить Redis прослушивает частный IP-адрес виртуальной машины. По умолчанию он прослушивает localhost. Изменить, /etc/redis/6379.confкак показано ниже:

bind <vm's private ip> 

Затем перезапустите Redis. systemctl restart redis_6379,

Проверьте соединение в Linux.

root@shui:~/redis-stable/utils# redis-cli -h 52.232.114.152 52.232.114.152:6379> set test HugeServer OK 52.232.114.152:6379> get test "HugeServer" 

Примечание: вы должны открыть порт 6379 на NSG, как на этом скриншоте .

Я также тестирую на клиенте Windows, это также работает для меня. https://imgur.com/a/aEz2m Shui Shengbao 6 лет назад 0
Я полагаю, вы имеете в виду redis.conf? Achiel Volckaert 6 лет назад 1
Да, может быть, это ошибка, я проверю это. Shui Shengbao 6 лет назад 0
Каков результат `netstat -ant | grep 6379`? Shui Shengbao 6 лет назад 0
@AchielVolckaert Я тестирую в своей лаборатории, это `/etc/redis/6379.conf`. Вы найдете это в своей виртуальной машине? Shui Shengbao 6 лет назад 0
да, после переустановки я его нашел, теперь все перенастраиваю Achiel Volckaert 6 лет назад 1
@AchielVolckaert Вам нужно прослушать redis на частном IP виртуальной машины. Кроме того, откройте порт 6379 в Azure NSG и firwall виртуальной машины (я тестирую в своей лаборатории, нет необходимости). Shui Shengbao 6 лет назад 0
это результат netstat https://imgur.com/a/TCgaN 10.0.0.4 - мой личный ip. Команда redis-cli говорит, что не может подключиться. https://imgur.com/a/cWuxB Achiel Volckaert 6 лет назад 1
Я добавил правило в NSG, я даже установил конфигурацию Redis для принятия всех IP-адресов, я понятия не имею, Achiel Volckaert 6 лет назад 1
Привет, вы должны использовать `redis-cli -h 10.0.0.4` или` redis-cli -h ` Shui Shengbao 6 лет назад 0
Redis не слушает на 127.0.0.1. Shui Shengbao 6 лет назад 0
Давайте [продолжим это обсуждение в чате] (http://chat.stackexchange.com/rooms/71567/discussion-between-shengbao-shui-msft-and-achiel-volckaert). Shui Shengbao 6 лет назад 0

Похожие вопросы