cookbook 'ebs', '~> 0.3.6'
ebs (8) Versions 0.3.6 Follow1
Mounts attached EBS volumes
cookbook 'ebs', '~> 0.3.6', :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.
Requirements
Collaborator Number Metric
0.3.6 failed this metric
Failure: Cookbook has 0 collaborators. A cookbook must have at least 2 collaborators to pass this metric.
Foodcritic Metric
0.3.6 failed this metric
FC022: Resource condition within loop may not behave as expected: ebs/recipes/raids.rb:100
FC022: Resource condition within loop may not behave as expected: ebs/recipes/volumes.rb:38
FC064: Ensure issues_url is set in metadata: ebs/metadata.rb:1
FC065: Ensure source_url is set in metadata: ebs/metadata.rb:1
FC066: Ensure chef_version is set in metadata: ebs/metadata.rb:1
FC067: Ensure at least one platform supported in metadata: ebs/metadata.rb:1
FC069: Ensure standardized license defined in metadata: ebs/metadata.rb:1
FC075: Cookbook uses node.save to save partial node data to the chef-server mid-run: ebs/recipes/raids.rb:43
FC075: Cookbook uses node.save to save partial node data to the chef-server mid-run: ebs/recipes/raids.rb:52
FC075: Cookbook uses node.save to save partial node data to the chef-server mid-run: ebs/recipes/volumes.rb:30
FC104: Use the :run action in ruby_block instead of :create: ebs/recipes/raids.rb:47
FC104: Use the :run action in ruby_block instead of :create: ebs/recipes/raids.rb:62
FC104: Use the :run action in ruby_block instead of :create: ebs/recipes/raids.rb:79
FC104: Use the :run action in ruby_block instead of :create: ebs/recipes/raids.rb:130
Run with Foodcritic Version 16.3.0 with tags metadata,correctness ~FC031 ~FC045 and failure tags any
No Binaries Metric
0.3.6 passed this metric
0.3.6 failed this metric
0.3.6 failed this metric
FC022: Resource condition within loop may not behave as expected: ebs/recipes/raids.rb:100
FC022: Resource condition within loop may not behave as expected: ebs/recipes/volumes.rb:38
FC064: Ensure issues_url is set in metadata: ebs/metadata.rb:1
FC065: Ensure source_url is set in metadata: ebs/metadata.rb:1
FC066: Ensure chef_version is set in metadata: ebs/metadata.rb:1
FC067: Ensure at least one platform supported in metadata: ebs/metadata.rb:1
FC069: Ensure standardized license defined in metadata: ebs/metadata.rb:1
FC075: Cookbook uses node.save to save partial node data to the chef-server mid-run: ebs/recipes/raids.rb:43
FC075: Cookbook uses node.save to save partial node data to the chef-server mid-run: ebs/recipes/raids.rb:52
FC075: Cookbook uses node.save to save partial node data to the chef-server mid-run: ebs/recipes/volumes.rb:30
FC104: Use the :run action in ruby_block instead of :create: ebs/recipes/raids.rb:47
FC104: Use the :run action in ruby_block instead of :create: ebs/recipes/raids.rb:62
FC104: Use the :run action in ruby_block instead of :create: ebs/recipes/raids.rb:79
FC104: Use the :run action in ruby_block instead of :create: ebs/recipes/raids.rb:130
Run with Foodcritic Version 16.3.0 with tags metadata,correctness ~FC031 ~FC045 and failure tags any
No Binaries Metric
0.3.6 passed this metric
0.3.6 passed this metric