Redis is running on a server that is not publicly accessible (it's in a private subnet) so I'm using ssh tunnel to connect from a public facing server that is in the same VPC.
If I ssh into that public facing server, I can connect to the redis instance on the private server just fine using redis-cli. But I get I'm getting timeout errors when I try to deploy to production using the following config:
'redis': {
allowOverwrite: true,
keyPrefix: 'pigeon:index',
url: 'redis://:' + env('REDIS_PASSWORD') + '@' + env('REDIS_HOST') + ':6379',
},
'ssh-tunnel': {
username: env('SSH_USER'),
host: env('SSH_HOST'),
privateKeyPath: env('SSH_KEY'),
}
I'm guessing this is some sort of configuration issue on my end since I don't see any other issues about it. But I get this same error using the host, password, port configuration variation rather than specifying a connection url:
Error: Redis connection to internal-pigeon-db-production-1812613668.us-east-1.elb.amazonaws.com:6379 failed - connect ETIMEDOUT 192.168.1.148:6379
at RedisClient.on_error (/Applications/MAMP/htdocs/pigeon-web-app/node_modules/ember-cli-deploy-lightning-pack/node_modules/ember-cli-deploy-redis/node_modules/redis/index.js:196:24)
at Socket.<anonymous> (/Applications/MAMP/htdocs/pigeon-web-app/node_modules/ember-cli-deploy-lightning-pack/node_modules/ember-cli-deploy-redis/node_modules/redis/index.js:106:14)
at emitOne (events.js:77:13)
at Socket.emit (events.js:169:7)
at emitErrorNT (net.js:1269:8)
at nextTickCallbackWith2Args (node.js:442:9)
at process._tickCallback (node.js:356:17)