AWS EBS volume with alerting
npm install @cfn-modules/ebs-volume

AWS EBS volume with alerting.
> Install Node.js and npm first!
```
npm i @cfn-modules/ebs-volume
```
---
AWSTemplateFormatVersion: '2010-09-09'
Description: 'cfn-modules example'
Resources:
Volume:
Type: 'AWS::CloudFormation::Stack'
Properties:
Parameters:
VpcModule: !GetAtt 'Vpc.Outputs.StackName' # required
AlertingModule: !GetAtt 'Alerting.Outputs.StackName' # optional
KmsKeyModule: !GetAtt 'Key.Outputs.StackName' # optional
AZChar: 'A' # optional
Size: '64' # optional
Iops: '99' # optional (set to 99 to disable)
BackupRetentionPeriod: '30' # optional
BackupScheduleExpression: 'cron(0 5 ? *)' # optional
TemplateURL: './node_modules/@cfn-modules/ebs-volume/module.yml'
* ec2-ebs
* ec2-instance-amazon-linux
* ec2-instance-amazon-linux2
* efs-file-system
| Name | Description | Default | Required? | Allowed values |
|---|---|---|---|---|
| VpcModule | Stack name of vpc module | yes | ||
| AlertingModule | Stack name of alerting module | no | ||
| KmsKeyModule | Stack name of kms-key module | no | ||
| AZChar | Availability zone char | A | no | [A, B, C] |
| Size | The size of the volume, in gibibytes (GiBs) | 64 | no> | [4-16384] |
| Iops | The number of I/O operations per second (IOPS) that the volume supports (set to 99 to disable) | 99 | no | [99-32000] |
| BackupRetentionPeriod | The number of days to keep backups of the EBS volume (set to 0 to disable) | 30 | no | [0-35] |
| BackupScheduleExpression | A CRON expression specifying when AWS Backup initiates a backup job | cron(0 5 ? *) | no |
* Highly available: EBS volumes only live in a single AZ by design
* Scalable: EBS volumes throughput is limited by design
* Operations friendly: Alerting is not enabled