2016-12-16 2 views
1

Мне понадобилась пробная версия и ошибка, чтобы выяснить, как преобразовать команду монтирования AWS EFS вместо использования ресурса шеф-повара, поэтому я думал, что хочу поделиться.Как монтировать том AWS EFS с помощью кулинарной книги Chef nfs

команда задается амазонки:

sudo mount -t nfs4 -o nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2 $(curl -s http://169.254.169.254/latest/meta-data/placement/availability-zone).fs-.efs.us-west-2.amazonaws.com:/ efs 

ответ

4
include_recipe 'nfs' 

az = node['ec2']['placement_availability_zone'] 
region = az[0..-2] # trim last char 
file_system_id = 'fs-' 
efs_uri = "#{az}.#{file_system_id}.efs.#{region}.amazonaws.com:/" 

directory '/mnt/efs' do 
    owner 'root' 
    group 'root' 
    mode '0755 
    recursive true 
    action :create 
end 

mount '/mnt/efs' do 
    device efs_uri 
    fstype 'nfs4' 
    options 'nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2' 
    action [:mount, :enable] 
end 
+0

Похоже, в последнее время они сделали кросс-AZ имена DNS работают на http://docs.aws.amazon.com/efs/latest/ug/mounting -fs-mount-cmd-dns-name.html. Поэтому немного переформатируем код выше на 'efs_uri =" {file_system_id} .efs. # {Region} .amazonaws.com:/"' должны работать. – runamok

Смежные вопросы