Cookbook to mount Elastic Filesystem endpoints in Amazon Web Services.
You just configure global defaults (presently the recommended values from Amazon) and individual mounts through node attributes. You also have the option of using the mount_efs
resource within your own recipes.
- NFS
- Ubuntu 16.04
- Centos 7.2
- RHEL 7.2
- Debian (untested)
Key | Type | Description | Default |
---|---|---|---|
['efs']['mounts'] | hash of hashes | Keys are mount point paths, values can be any of the keys below. The fsid key is required. Any other optional keys will use global defaults from the attributes below. | {} |
['efs']['mounts'][mount point]['fsid'] | string (required) | FSID of the Elastic Filesystem (e.g. fs-1234abcd) | |
['efs']['mounts'][mount point]['region'] | string | Override AWS region for the mount | derived from node['ec2']['placement_availability_zone'] |
['efs']['mounts'][mount point]['options'] | string | Override mount options string | generated from attributes of mount and global below |
['efs']['rsize'] | int | maximum read size in bytes | 1048576 |
['efs']['wsize'] | int | maximum write size in bytes | 1048576 |
['efs']['timeout'] | int | timeout between retries in deciseconds | 600 |
['efs']['retrans'] | int | number of retries before further action | 2 |
['efs']['behavior'] | string | determines timeout behavior (hard or soft) | hard |
['efs']['remove_unspecified_mounts'] | boolean | Unmount and remove any EFS mount in fstab that is not specified by ['efs']['mounts'] | false |
Configure any desired mounts under node['efs']['mounts']
and include efs
in your node's run_list
:
{
"name":"my_node",
"run_list": [
"recipe[efs]"
]
}
This cookbook is implemented with a custom resource so you can use mount_efs
in your cookbook recipes as well with the same available attributes as the node['efs']['mounts']
structure.
- Fork the repository on Github
- Create a named feature branch (like
add_component_x
) - Write your change
- Write tests for your change (if applicable)
- Run the tests, ensuring they all pass
- Submit a Pull Request using Github
Authors: Matt Kulka matt@lqx.net