Fargate のコンテナから AWS Redis に接続する方法が知りたい

0

private subnetに配置した Fargate の PHP コンテナから、predis を使用して、同じprivate subnet に配置した AWS Redis に接続したいのですが、下記のエラーが発生しており、接続できません。

Fatal error: Uncaught Predis\Connection\ConnectionException: Error while reading line from the server.

Redisはサーバレスで起動し、エンジンバージョンは、7.1です。 ユーザーグループによるパスワードを設定しています。

セキュリティーグループでは、Redis のSGとFargateのSGでぞれぞれ下記を許可しています。

・Redis SG

インバウンドルール
・TCP 6379 ソース->FargateのSG
・TCP 6380 ソース->FargateのSG
・Fargate SG

アウトバウンドルール
・TCP 6379 ソース->RedisのSG
・TCP 6380 ソース->RedisのSG

predisの接続処理は下記です。 環境変数で接続情報を設定しています。

$client = new Client([
            'scheme' => 'tcp',
            'host' => $_ENV['REDIS_HOST'],
            'port' => $_ENV['REDIS_PORT'],
            'password' => $_ENV["REDIS_PASSWORD"],
        ]);

何かヒントになるアドバイスがいただけましたら幸いです。

gefragt vor einem Monat213 Aufrufe
1 Antwort
0
Akzeptierte Antwort

コード自体はコンテナでなくローカルの開発環境などでは問題無く動作する認識で合っていますか?

エラーメッセージで調べると接続のパラメータの"read_write_timeout"を"-1"にすると解決するみたいな情報がいくつか見つかりました。
https://stackoverflow.com/questions/11776029/predis-is-giving-error-while-reading-line-from-server
https://github.com/predis/predis/wiki/Connection-Parameters

profile picture
EXPERTE
beantwortet vor einem Monat
  • ご回答いただきありがとうございます。Redisついて理解不足なのですが、サーバレスで起動していたインスタンスを今回は大きなデータは扱わないという前提のもと、Demoで提供されているインスタンスで作成しなおしたところ、接続に成功しました。ありがとうございました。

Du bist nicht angemeldet. Anmelden um eine Antwort zu veröffentlichen.

Eine gute Antwort beantwortet die Frage klar, gibt konstruktives Feedback und fördert die berufliche Weiterentwicklung des Fragenstellers.

Richtlinien für die Beantwortung von Fragen