私たちのサイトではElastiCache-Redisを使用しています。Redisキャッシュをフラッシュする必要があります。また、任意のPCからこのコマンドを使用してElastiCache-Redisにリモートで接続しようとすると、
redis-cli -h example-redis-1.example.0001.euw1.cache.amazonaws.com -p 6379
それは常に言う:
Example-redis-1.example.0001.euw1.cache.amazonaws.com:6379でRedisに接続できませんでした:接続が拒否されました>
インバウンドルールが任意のIPからの6379を許可することを確認し、/ etc/redis.confを編集してbind example-redis-1.example.0001.euw1.cache.amazonaws.comを追加しようとしましたが、エラーよりも残っています同じ。
ElastiCacheクラスターには、それが存在するVPC内からのみ直接アクセスできます。これは、ElastiCacheが安全なサービスではないためです。
ElastiCacheにリモートで接続するには、要塞サーバーまたはNATを経由する必要があります。 AWSはここに指示を作成しました:
http://docs.aws.Amazon.com/AmazonElastiCache/latest/UserGuide/Access.Outside.html
要塞を使用するには、VPCにある要塞EC2インスタンスにSSHで接続します。接続したら、PCからElastiCache接続をトンネリングするか、要塞のコマンドプロンプトからキャッシュに接続できます。
ステップ1:
ssh -f -N -L6379:<your redis node endpoint>:6379 <your EC2 node that you use to connect to redis>
例:ssh -f -N -L6379:redis.aps1.cache.amazonaws.com:6379 [email protected]
ステップ2:
redis-cli -h 127.0.0.1 -p 6379
そのVPCでOpenVPNアクセスサーバーを起動することもできます。詳細は VPNサーバーを使用してAWSに接続する の記事にあります
問題を追跡して修正する最も簡単な方法。
1。ポート6379でredis instance
にtelnetできますか?.
2。そうでない場合は、セキュリティグループの受信を確認します。
3。はいの場合、Redisのセットアップ中にencryption at rest
およびencryption in transit
がオンになっているかどうかを確認します
4。その場合、redis-cli
はSSLで機能しません。stunnel
をセットアップする必要があります。
以下のAWSのガイドに従ってstunnelをセットアップし、Redisインスタンスに接続します。
https://docs.aws.Amazon.com/AmazonElastiCache/latest/red-ug/in-transit-encryption.html#connect-tls
Elasticacheノードに接続できない理由は、DNS名またはエンドポイントがVPC CIDRに属するIP(パブリックIPまたはElastic IPではない)にのみ解決されるためです。これらのIPは公的にルーティング可能ではないため、インターネット経由で接続を確立することはできません。
ノードにアクセスできるようにするには、インターネットへのルートを確立する方法が必要です。これは、VPNを使用するか、NAT設定を@ "Matt Houser"の指示に従って使用することで)実行できます。
私はsshトンネリングを試しませんでしたが、うまくいくはずです。ただし、この場合のEncryption-In-Transitの動作については不明なので、試してみる必要があります。