While config/database.php is set up to support clustering, this only helps the webserver CA service (app). Some of the other services (fpm) still won't work with clustering enabled on Redis.
To Reproduce
Connect CA to a Redis instance with clustering enabled, and see log errors.
Screenshots
Log examples:
fpm-1 | {"message":"`SELECT` failed: ERR SELECT is not allowed in cluster mode [tcp://edlib-cerpus-test-cache.saiiw4.clustercfg.euw1.cache.amazonaws.com:6379]","context":{"requestId":"23279cff-e008-4216-b8c6-4953e39e34df","exception":{"class":"Predis\\Connection\\ConnectionException","message":"`SELECT` failed: ERR SELECT is not allowed in cluster mode [tcp://edlib-cerpus-test-cache.saiiw4.clustercfg.euw1.cache.amazonaws.com:6379]","code":0,"file":"/app/vendor/predis/predis/src/Connection/AbstractConnection.php:155","trace":["/app/vendor/predis/predis/src/Connection/StreamConnection.php:263","/app/vendor/predis/predis/src/Connection/AbstractConnection.php:180","/app/vendor/predis/predis/src/Connection/StreamConnection.php:288","/app/vendor/predis/predis/src/Connection/StreamConnection.php:394","/app/vendor/predis/predis/src/Connection/AbstractConnection.php:110","/app/vendor/predis/predis/src/Client.php:331","/app/vendor/predis/predis/src/Client.php:313","/app/vendor/laravel/framework/src/Illuminate/Redis/Connections/Connection.php:116","/app/vendor/laravel/framework/src/Illuminate/Redis/Connections/Connection.php:216","/app/vendor/laravel/framework/src/Illuminate/Cache/RedisStore.php:100","/app/vendor/laravel/framework/src/Illuminate/Cache/Repository.php:217","/app/vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:419","/app/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php:338","/app/app/Http/Controllers/HealthController.php:17","/app/vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54","/app/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43","/app/vendor/laravel/framework/src/Illuminate/Routing/Route.php:259","/app/vendor/laravel/framework/src/Illuminate/Routing/Route.php:205","/app/vendor/laravel/framework/src/Illuminate/Routing/Router.php:798","/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:141","/app/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php:50","/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:180","/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php:78","/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:180","/app/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php:49","/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:180","/app/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php:121","/app/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php:64","/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:180","/app/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php:37","/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:180","/app/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php:67","/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:180","/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:116","/app/vendor/laravel/framework/src/Illuminate/Routing/Router.php:797","/app/vendor/laravel/framework/src/Illuminate/Routing/Router.php:776","/app/vendor/laravel/framework/src/Illuminate/Routing/Router.php:740","/app/vendor/laravel/framework/src/Illuminate/Routing/Router.php:729","/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:190","/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:141","/app/vendor/laravel/vapor-core/src/Http/Middleware/ServeStaticAssets.php:21","/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:180","/app/app/Http/Middleware/RequestId.php:31","/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:180","/app/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php:39","/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:180","/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php:21","/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php:31","/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:180","/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php:21","/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php:40","/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:180","/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ValidatePostSize.php:27","/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:180","/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php:86","/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:180","/app/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:116","/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:165","/app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:134","/app/public/index.php:53"]}},"level":400,"level_name":"ERROR","channel":"production","datetime":"2024-04-22T07:56:24.431737+00:00","extra":{}}
While
config/database.php
is set up to support clustering, this only helps the webserver CA service (app
). Some of the other services (fpm
) still won't work with clustering enabled on Redis.To Reproduce Connect CA to a Redis instance with clustering enabled, and see log errors.
Screenshots Log examples: