为ECS群集 - 云形式上的EFS音量指定正确的AZ安装点



查看此示例安装了EFS中持续存在的docker卷的EFS卷,我不确定如何为实例所在的可用性区域提供正确的安装点。我有我的堆栈中的两个可用性区域,需要正确的安装点才能插入CFN-INIT的这一部分:

01_mount:
    command: !Join [ "", [ "mount -t nfs4 -o nfsvers=4.1 ", !ImportValue '!Ref FileSystem', ".efs.", !Ref 'AWS::Region', ".amazonaws.com:/ /", !Ref MountPoint ] ]
02_fstab:
    command: !Join [ "", [ "echo "", !ImportValue '!Ref FileSystem', ".efs.", !Ref 'AWS::Region', ".amazonaws.com:/ /", !Ref MountPoint, " nfs4 nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2 0 0" >> /etc/fstab" ] ]
03_permissions:
    command: !Sub "chown -R ec2-user:ec2-user /${MountPoint}"

如果您在VPC中使用DNS设置,并且在安装EFS文件系统时,不再需要使用可用性区域特定的安装目标,并且在VPC中使用了其他必要的先决条件。VPC配置。

文件系统DNS名称 - 使用文件系统的DNS名称是您最简单的安装选项。文件系统DNS名称将自动解析到连接Amazon EC2实例的可用区域中的安装目标的IP地址。您可以从控制台获得此DNS名称,或者如果您拥有文件系统ID,您可以使用以下约定来构造它:

file-system-id.efs.aws-region.amazonaws.com

(添加了强调(

http://docs.aws.amazon.com/efs/latest/ug/mounting-fs-mount-mount-cmd-dns-name.html

此功能于2016年12月推出,该服务从预览发布后几个月。以前,上面显示的主机名必须使用您想要的可用区域进行预先准备。该选项仍然得到支持,但是此选项有效地消除了这种尴尬的配置要求,无论是在docker还是在使用fstab安装的普通实例中。

有关VPC配置元素,请参见参考页面,该解决方案必须在VPC中工作。

最新更新