Laravelで、CacheにRedisを利用する場合、config/database.phpに設定を書き込むのですが、ElastiCache for Redisのクラスターモードを有効にした場合、記述内容が変更になります。
クラスターモードは、エンドポイントを共通にできるなどメリットも多いので、利用してみると良いとか思います。
下記のようにconfig/database.phpにデフォルトでは記述されていない、clustersを追加する必要があります。
config/database.php
'redis' => [
'client' => env('REDIS_CLIENT', 'phpredis'),
'options' => [
'cluster' => 'redis',
],
'clusters' => [
'cache' => [
[
'host' => env('REDIS_HOST', '127.0.0.1'),
'password' => env('REDIS_PASSWORD', null),
'port' => env('REDIS_PORT', 6379),
'database' => 0,
'read_write_timeout' => env('REDIS_READ_WRITE_TIMEOUT', 60),
]
],
],
];
実際の値については、.envファイルに記述しますが、
REDIS_CLIENT には、predisを利用している場合は、predisを指定します。
REDIS_HOST には、設定エンドポイントを指定します。