Search code examples
amazon-web-servicesredisaws-cloudformationamazon-elasticache

Cloudformation stack failure due to - Service: AmazonElastiCache; Status Code: 400; Error Code: InvalidParameterCombination


I have following template file.

    cfn-params:
  default:
    resourceName: 'hlp-MySrvc-redis'
    application: 'MySrvc'
    navService: 'MySrvc'
    service: 'MySrvc'
    pci: 'cat3'
    team: 'MySrvc'
    teamContact: ''
    elastiCacheSubnetGroup: 'nonprod'
    elastiCacheVpcSecurityGroupIds: 'sg-1234'
    elastiCacheEngineVersion: '5.0.0'
    elastiCacheParameterGroupName: 'default.redis5.0'
    elastiCacheReplicationGroupIdPrefix: 'MySrvc'
    elastiCacheReplicationGroupDescription: 'Redis for MySrvc'
    elastiCacheTransitEncryptionEnabled: 'false'
    elastiCacheAtRestEncryptionEnabled: 'false'
    elastiCacheUpdateReplacePolicy: 'Retain'
    elastiCacheAutomaticFailoverEnabled: 'false'
    elastiCacheMultiAzEnabled: 'false'
    elastiCacheNodeType: 'cache.t3.medium'
    elastiCacheNumNodeGroups: 1
    elastiCacheReplicasPerNodeGroup: 0
    elastiCachePreferredMaintenanceWindow: 'tue:05:00-tue:06:00'

After running the cloudformation piepline, I am getting the following error :

The following resource(s) failed to create: [ElastiCacheRedisReplicationGroup]. Rollback requested by user.

The failure error is :

Use a parameter group with cluster-enabled parameter to create more than one node group. (Service: AmazonElastiCache; Status Code: 400; Error Code: InvalidParameterCombination; Request ID:1234; Proxy: null)

I once had ran before for another environment the same file did not get any error. Do I need to change anything in this file ? or add any parameter now ? I am puzzled how it worked for previously.


Solution

  • elastiCacheParameterGroupName: 'default.redis5.0' is what the problem was - we have to create a group with the cluster option on, for me it was 'default.redis5.0.on' instead of the above which resolves the problem