Knowledge Center Monthly Newsletter - June 2025
Stay up to date with the latest from the Knowledge Center. See all new Knowledge Center articles published in the last month, and re:Post's top contributors.
Valkey、Redis OSS、または Memcached エンジン用の ElastiCache 上で稼働する ElastiCache Serverless クラスターまたはセルフマネージドクラスターに接続する方法を教えてください。
Amazon ElastiCache for Valkey、Amazon ElastiCache for Redis OSS、または Amazon ElastiCache for Memcached エンジンで実行する Amazon ElastiCache Serverless クラスターまたはセルフマネージドクラスターの接続をテストしようとしています。
簡単な説明
注: 次の解決策では、予期しない使用状況に関する接続のみをテストします。サポートされているクライアントのリストについては、「Connect with Redis クライアント API ライブラリ」(Redis のウェブサイト) および、「クライアントライブラリ」(Valkey のウェブサイト) を参照してください。
ElastiCache クラスターの設定に応じて、次のセクションの手順を実行して接続をテストします。
- 暗号化されていない ElastiCache for Valkey または ElastiCache for Redis OSS クラスターに接続します。これには、(クラスターモード無効) クラスターと (クラスターモード有効) クラスターが含まれます。
- 暗号化 ElastiCache for Valkey または ElastiCache for Redis OSS クラスターに接続します。これには、(クラスターモード無効) クラスターと (クラスターモード有効) クラスターが含まれます。
- Telnet または OpenSSL を使用して (クラスターモード無効) クラスターに接続します。
- ElastiCache for Memcached クラスターに接続します。これには、暗号化されていないクラスターと暗号化されたクラスターが含まれます。
- ElastiCache Serverless のキャッシュに接続します。
解決策
注: AWS コマンドラインインターフェイス (AWS CLI) コマンドの実行中にエラーが発生した場合は、「AWS CLI で発生したエラーのトラブルシューティング」を参照してください。また、AWS CLI の最新バージョンを使用していることを確認してください。
暗号化されていない ElastiCache for Valkey または ElastiCache for Redis OSS クラスターに接続する
ElastiCache は、Valkey および Redis OSS クラスターにおいて、(クラスターモード無効) クラスターと (クラスターモード有効) の両方をサポートしています。クラスターへの接続をテストするには、valkey-cli または redis6-cli を使用します。詳細については、「Valkey CLI」(Valkey のウェブサイト) および「Redis CLI」(Redis のウェブサイト) を参照してください。
注: valkey-cli のインストール方法については、「Linux での暗号化接続」を参照してください。クラスターが暗号化されていない場合は、BUILD_TLS パラメータを指定しないでください。Amazon Linux 2023 でテストする場合は、redis6 パッケージをインストールしてください。このパッケージには、デフォルトの暗号化サポート付きの redis6-cli が含まれています。
Redis エンドポイントを特定する方法については、「ElastiCache での接続エンドポイントを特定する」を参照してください。
**(クラスターモード無効) Valkey または Redis OSS クラスターに接続する **
(クラスターモード無効) クラスターに接続するには、次のコマンドを実行します。
Amazon Linux 2023:
redis6-cli -h yourEndpoint -p 6379
Amazon Linux、Amazon Linux 2:
src/valkey-cli -h yourEndpoint -p 6379
注: 実際のものでそれぞれ、yourEndpoint をクラスターのエンドポイントに、6379 をポート番号に置き換えます。
上記のコマンドは、次の例のような Valkey コマンドプロンプトを返します。
yourEndpoint:6379>
(クラスターモード有効) Valkey または Redis OSS クラスターに接続する
(クラスターモード有効) クラスターに接続するには、次のコマンドを実行します。
Amazon Linux 2023:
redis6-cli -c -h yourConfigEndpoint -p 6379
Amazon Linux、Amazon Linux 2:
src/valkey-cli -c -h yourConfigEndpoint -p 6379
注: 実際のものでそれぞれ、yourConfigEndpoint をクラスターのエンドポイントに、6379 をポート番号に置き換えます。-c パラメータを指定すると、-ASK および -MOVED のリダイレクト後にクラスターモードが有効になります。リダイレクトを有効にしなかった場合は、コマンドは MOVED エラーを返します。
上記のコマンドは、次の例のような Valkey コマンドプロンプトを返します。
yourConfigEndpoint:>
暗号化 ElastiCache for Valkey または ElastiCache for Redis OSS クラスターに接続する
(クラスターモード有効) または (クラスターモード無効) の暗号化クラスターに接続するには、valkey-cli で --tls パラメータを使用します。--tls パラメータを指定すると、クラスターの転送中の暗号化が有効になります。クラスターに AUTH トークンが設定されている場合は、-a パラメータを使用して AUTH パスワードを指定します。または、AUTH コマンドを使用して認証を行います。コマンド例を次に示します。
転送中の暗号化を有効にした後、クライアント設定を更新し、新しい TLS 固有のエンドポイントを使用するようにします。詳細については、「転送中の暗号化を有効にする際のベストプラクティス」を参照してください。
注: Valkey または Redis OSS バージョン 7 以降のクラスターでは、既存の ElastiCache クラスターで転送中の暗号化を有効にできます。Valkey または Redis OSS クラスターの TLS 設定を変更するためにクラスターを再構築する必要はありません。
(クラスターモード無効) 暗号化クラスターに接続する
暗号化と認証が有効な状態で (クラスターモード無効) クラスターに接続するには、次のコマンドを実行します。
Amazon Linux 2023:
redis6-cli -h yourEndpoint -p 6379 --tls AUTH <username> <password>
Amazon Linux、Amazon Linux 2:
src/valkey-cli -h yourEndpoint -p 6379 –tls AUTH <username> <password>
注: 実際のものでそれぞれ、yourEndpoint をクラスターのエンドポイントに、6379 をポート番号に置き換えます。コマンドの単一引数形式で AUTH を使用し、パスワードのみを指定した場合、Valkey CLI はユーザー名が default であると見なします。詳細については、Valkey のウェブサイトで AUTH コマンドを参照してください。
(クラスターモード有効) 暗号化クラスターに接続する
暗号化と認証が有効な (クラスターモード有効) クラスターに接続するには、次のコマンドを実行します。
Amazon Linux 2023:
redis6-cli -c -h yourConfigEndpoint -p 6379 –tls AUTH <username> <password>
Amazon Linux、Amazon Linux 2:
src/valkey-cli -c -h yourConfigEndpoint -p 6379 –tls AUTH <username> <password>
注: 実際のものでそれぞれ、yourConfigEndpoint をクラスターのエンドポイントに、6379 をポート番号に置き換えます。コマンドの単一引数形式で AUTH を使用し、パスワードのみを指定した場合、Valkey CLI はユーザー名が default であると見なします。詳細については、Valkey のウェブサイトで AUTH コマンドを参照してください。
OpenSSL の telnet を使用して (クラスターモード無効) クラスターに接続する
valkey-cli を設定せずに簡易テストを実行するには、telnet または OpenSSL を使用して (クラスターモード無効) クラスターに接続します。telnet または OpenSSL を使用して接続した後に、Valkey コマンドを実行します。
次のコマンドの例では、暗号化または認証が行われた (クラスターモード無効) クラスターに接続します。
openssl s_client -connect master.valkeycmdencrypted.dcba18.use1.cache.amazonaws.com:6379
クラスターにパスワードを設定した場合は、そのクラスターに接続し、次のコマンドを実行するとクラスターを認証できます。次に、Enter キーを押します。
AUTH <username> <password>
注: username と password を実際のユーザー認証情報に置き換えます。
次のコマンドの例では、暗号化または認証が有効になっていない (クラスターモード無効) クラスターに接続します。
telnet yourEndpoint 6379
ElastiCache for Memcached クラスターに接続する
Memcached 用 ElastiCache クラスターに接続するには、使用するクラスターに応じて次の手順を実行します。
暗号化されていない Memcached クラスターに接続する
暗号化されていない Memcached クラスターに接続するには、telnet ユーティリティを使用します。次の手順を実行します。
-
テストする接続元のインスタンスに、telnet ユーティリティをインストールします。
CentOS ベースのシステムの場合は、次のコマンドを実行します:
sudo yum install telnet
Debian ベースのシステム (Ubuntu) では、次のコマンドを実行します。
sudo apt-get install telnet
詳細については、「EC2 インスタンスへの接続」を参照してください。
-
エンドポイントに接続するには、次のコマンドを実行します。
telnet yourEndpoint 11211
注: 実際のものでそれぞれ、yourendpoint をクラスターエンドポイントに、11211 をノードのポートに置き換えます。
出力例:
Trying 128.0.0.1... Connected to mycachecluster.dcba18.0001.usw2.cache.amazonaws.com. Escape character is '^]'.>
暗号化 Memcached クラスターに接続する
Memcached バージョン 1.6.12 以降を実行するクラスターでは、転送中の暗号化をサポートしています。Telnet は暗号化をサポートしていないため、暗号化が有効な Memcached クラスターへの接続には OpenSSL を使用します。
注: クラスターの作成時のみ、そのクラスターで転送時の暗号化を有効にできます。クラスターの変更では、転送中の暗号化を有効または無効にすることはできません。詳細については、「ElastiCache の転送時の暗号化 (TLS)」を参照してください。
エンドポイントに接続するには、次のコマンドを実行します。
openssl s_client -quiet -crlf -connect yourEndpoint:11211
注: 実際のものでそれぞれ、yourEndpoint をエンドポイントに、11211 をノードのポートに置き換えます。
出力例:
depth=2 C = US, O = Amazon, CN = Amazon Root CA 1 verify return:1 depth=1 C = US, O = Amazon, CN = Amazon RSA 2048 M02 verify return:1 depth=0 CN = *.testwithtls.qtyxq7.apse2.cache.amazonaws.com verify return:1
ElastiCache Serverless のキャッシュに接続する
デフォルトでは、ElastiCache Serverless は、すべてのクラスターを転送中の暗号化を有効化して起動します。このオプションは無効にできません。選択したクライアントライブラリでは、TLS 接続を確立する機能をサポートしている必要があります。
Valkey および Redis OSS 用の ElastiCache Serverless では、キャッシュは同じホスト名を持つ 2 ポートをアドバタイズします ( プライマリポート: 6379 および読み取りポート: 6380)。プライマリポートでは読み取りと書き込みが可能です。読み取りポートでは READONLY コマンドを使用して遅延を軽減し、結果整合性のある読み込みを実現します。
同様に、ElastiCache Serverless for Memcached のキャッシュでは、同じホスト名を持つ 2 ポートをアドバタイズします ( プライマリポート: 11211 および読み取りポート: 11212)。これらのポートへのリソースアクセスを許可するには、セキュリティグループとネットワークアクセスコントロールリスト (ネットワーク ACL) を更新します。
ElastiCache Serverless キャッシュに接続するには、使用するエンジンとポートに応じて次のコマンドを実行します。
Valkey または Redis OSS (Amazon Linux 2023):
redis6-cli -c -h yourEndpoint -p 6379 –tls
Valkey または Redis OSS (Amazon Linux または Amazon Linux 2):
src/valkey-cli -c -h yourEndpoint -p 6379 –tls
Memcached:
openssl s_client -connect yourEndpoint:11212 -crlf
注: yourEndpoint を実際のクラスターのエンドポイントに置き換えます。
関連情報
コマンドリファレンス (Valkey のウェブサイト)
独自設計の ElastiCache for Redis クラスターにおける接続の問題をトラブルシューティングする方法を教えてください