I am using serverless framework to deploy my cloudformation resources. I am trying to create an MSK cluster, but I’m getting back
<code>Resource handler returned message: "Resource of type 'AWS::MSK::ServerlessCluster'
with identifier 'arn:aws:kafka:us-east-2:xxxxxxxxxxx:cluster/msk-cluster-dev/foobar-s1'
did not stabilize." (RequestToken: foobar, HandlerErrorCode: NotStabilized)
</code>
<code>Resource handler returned message: "Resource of type 'AWS::MSK::ServerlessCluster'
with identifier 'arn:aws:kafka:us-east-2:xxxxxxxxxxx:cluster/msk-cluster-dev/foobar-s1'
did not stabilize." (RequestToken: foobar, HandlerErrorCode: NotStabilized)
</code>
Resource handler returned message: "Resource of type 'AWS::MSK::ServerlessCluster'
with identifier 'arn:aws:kafka:us-east-2:xxxxxxxxxxx:cluster/msk-cluster-dev/foobar-s1'
did not stabilize." (RequestToken: foobar, HandlerErrorCode: NotStabilized)
Here is where I configured the resource
<code>Resources:
MskServerlessCluster:
Type: AWS::MSK::ServerlessCluster
Properties:
ClusterName:msk-cluster-${self:custom.environment.${opt:stage}.environment}
VpcConfigs:
- SubnetIds: ${self:custom.environment.${opt:stage}.vpc.subnetIds}
SecurityGroups: ${self:custom.environment.${opt:stage}.vpc.securityGroupIds}
ClientAuthentication:
Sasl:
Iam:
Enabled: true
</code>
<code>Resources:
MskServerlessCluster:
Type: AWS::MSK::ServerlessCluster
Properties:
ClusterName:msk-cluster-${self:custom.environment.${opt:stage}.environment}
VpcConfigs:
- SubnetIds: ${self:custom.environment.${opt:stage}.vpc.subnetIds}
SecurityGroups: ${self:custom.environment.${opt:stage}.vpc.securityGroupIds}
ClientAuthentication:
Sasl:
Iam:
Enabled: true
</code>
Resources:
MskServerlessCluster:
Type: AWS::MSK::ServerlessCluster
Properties:
ClusterName:msk-cluster-${self:custom.environment.${opt:stage}.environment}
VpcConfigs:
- SubnetIds: ${self:custom.environment.${opt:stage}.vpc.subnetIds}
SecurityGroups: ${self:custom.environment.${opt:stage}.vpc.securityGroupIds}
ClientAuthentication:
Sasl:
Iam:
Enabled: true
When running serverless package I get this
<code> "MskServerlessCluster": {
"Type": "AWS::MSK::ServerlessCluster",
"Properties": {
"ClusterName": "msk-cluster-dev",
"VpcConfigs": [
{
"SubnetIds": [
"subnet-xxxxxxxxx",
"subnet-xxxxxxxxx",
"subnet-xxxxxxxxx"
],
"SecurityGroups": [
"sg-xxxxxxxxxxx"
]
}
],
"ClientAuthentication": {
"Sasl": {
"Iam": {
"Enabled": true
}
}
}
}
}
</code>
<code> "MskServerlessCluster": {
"Type": "AWS::MSK::ServerlessCluster",
"Properties": {
"ClusterName": "msk-cluster-dev",
"VpcConfigs": [
{
"SubnetIds": [
"subnet-xxxxxxxxx",
"subnet-xxxxxxxxx",
"subnet-xxxxxxxxx"
],
"SecurityGroups": [
"sg-xxxxxxxxxxx"
]
}
],
"ClientAuthentication": {
"Sasl": {
"Iam": {
"Enabled": true
}
}
}
}
}
</code>
"MskServerlessCluster": {
"Type": "AWS::MSK::ServerlessCluster",
"Properties": {
"ClusterName": "msk-cluster-dev",
"VpcConfigs": [
{
"SubnetIds": [
"subnet-xxxxxxxxx",
"subnet-xxxxxxxxx",
"subnet-xxxxxxxxx"
],
"SecurityGroups": [
"sg-xxxxxxxxxxx"
]
}
],
"ClientAuthentication": {
"Sasl": {
"Iam": {
"Enabled": true
}
}
}
}
}
I feel like everything is configured correctly per the documentation. The subnets all have available IPv4 addresses and are in different availability zones.