Доступ к GCP Memorystore с локальных компьютеров - PullRequest
0 голосов
/ 11 мая 2018

Каков наилучший способ доступа к Memorystore с локальных машин во время разработки? Есть ли что-то вроде Cloud SQL Proxy, которое я могу использовать для настройки туннеля?

Ответы [ 3 ]

0 голосов
/ 01 сентября 2018

Вы можете запустить экземпляр Compute Engine и настроить haproxy, используя следующий образ докера образ докера haproxy , затем haproxy перенаправит ваши tcp-запросы в memorystore.

Например, я хочу получить доступ к экземпляру memorystore с ip 10.0.0.12, поэтому добавил следующие конфиги haproxy:

frontend redis_frontend
   bind *:6379
   mode tcp
   option tcplog
   timeout client  1m
   default_backend redis_backend

backend redis_backend
   mode tcp
   option tcplog
   option log-health-checks
   option redispatch
   log global
   balance roundrobin
   timeout connect 10s
   timeout server 1m
   server redis_server 10.0.0.12:6379 check

Так что теперь вы можете получить доступ к memorystore с вашего локального компьютера, используя следующую команду:

redis-cli -h <your-haproxy-public-ipaddress> -p 6379

Примечание: замените фактическим IP-адресом haproxy.

Надеюсь, что это поможет вам решить вашу проблему.

0 голосов
/ 05 октября 2018

Я создал виртуальную машину на облаке Google

gcloud compute instances create redis-forwarder --machine-type=f1-micro

, затем вставил в нее ssh и установил haproxy

sudo su
apt-get install haproxy

, затем обновил файл конфигурации

/etc/haproxy/haproxy.cfg

....existing file contents
frontend redis_frontend
  bind *:6379
  mode tcp
  option tcplog
  timeout client  1m
  default_backend redis_backend

 backend redis_backend
   mode tcp
   option tcplog
   option log-health-checks
   option redispatch
   log global
   balance roundrobin
   timeout connect 10s
   timeout server 1m
   server redis_server [MEMORYSTORE IP]:6379 check

restarthaproxy

/etc/init.d/haproxy restart

Затем я смог подключиться к хранилищу памяти с моей локальной машины для разработки

0 голосов
/ 31 июля 2018

Вы можете раскрутить экземпляр Compute Engine и использовать переадресацию портов для подключения к вашему компьютеру Redis.

Например, если ваш компьютер Redis имеет внутренний IP-адрес 10.0.0.3, вы должны сделать:

gcloud compute instances create redis-forwarder --machine-type=f1-micro
gcloud compute ssh redis-forwarder -- -N -L 6379:10.0.0.3:6379

Пока вы держите туннель ssh открытым, вы можете подключаться к localhost: 6379

...