cookbook 'ebs', '= 0.3.5'
ebs (8) Versions 0.3.5 Follow1
Mounts attached EBS volumes
cookbook 'ebs', '= 0.3.5', :supermarket
knife supermarket install ebs
knife supermarket download ebs
chef-ebs
This is a cookbook that makes it easy to create/attach EBS volumes, and create
filesystems and RAID arrays on them.
Usage
RAID Array Creation
Add recipe[ebs] to your run list, and configure these attributes:
Create a RAID 10 across four 10GB volumes each with 2000 provisioned iops, make it an lvm logical volume, format it with XFS, and mount it on
/data.
{
:ebs => {
:raids => {
'/dev/md0' => {
:num_disks => 4,
:disk_size => 10,
:piops => 2000,
:raid_level => 10,
:fstype => 'xfs',
:mount_point => '/data',
:uselvm => true,
}
}
}
}
Use Existing Volumes for RAID Array
Add recipe[persistent] to your run list, and configure these attributes:
Create a RAID 10 across the volumes specified in the persistent_volumes array, do not use LVM, format it with XFS, and mount it on /data.
{
:ebs => {
:raids => {
'/dev/md0' => {
:raid_level => 10,
:fstype => 'xfs',
:mount_point => '/data',
:uselvm => false,
:persistent_volumes => [
"vol-xxxxxxxx",
"vol-xxxxxxxx",
"vol-xxxxxxxx",
"vol-xxxxxxxx"
]
}
}
}
}
EBS Volume Creation
Create a 10GB volume with 1000 provisioned iops, format it with XFS, and mount it on /data with noatime as an option.
{
:ebs => {
:volumes => {
'/data' => {
:size => 10,
:piops => 1000,
:fstype => 'xfs',
:mount_options => 'noatime'
}
}
}
}
mount_options are optional and will default to noatime,nobootwait on all platforms except Amazon linux, where they will default to noatime.
Credentials
Expects a credentials databag with an aws item that contains aws_access_key_id and aws_secret_access_key.
You can override the databag and item names with node[:ebs][:creds][:databag], and node[:ebs][:creds][:item], but the key names are static.