神器EFS来啦!几分钟拥有一个弹性共享存储!

前不久,aws中国区域终于落地了EFS服务,真可谓是千呼万唤始出来啊,为什么这个服务这么牵动人心呢?其实啊这是由咱们实际的使用需求决定的,在这个服务没有出来之前,我们做生信分析组建云端集群,基本都是用EBS卷来做NFS文件系统,实现多台EC2之间的共享读写,这种方式和本地是一样一样的,但是已经上云的先行者们,他们的思维方式已经发生了巨大的转变,毕竟云上的每个占用的资源都是要付费的嘛~举例来说,用EBS组建的了10T的NFS系统,哪怕我里面放的文件只占用了10G,收费可还是按照10T来收;如果我实际占用超过了10T,我还要去调整EBS共享存储的大小,着实不太方便,这一点也不符合云端灵活的特点嘛! 那有没有一种共享存储方案类似S3服务,是按照我实际占用的空间收费,而且在我占用增大的时候,会自动扩容呢?对了,EFS就能满足你的这个需求。

--D.C

efsworkflow

废话不多说,看完原理图,我们直接插入正题。

创建efs文件系统。

efsconsole

efscreate

efsconfignetwork

其他选项分别是:设置 吞吐模式性能模式是否加密,保持默认的够用了。点击 下一步

efsconfigefs

这一步我都保持默认,直接点击 下一步

默认的JSON格式安全策略:

{
    "Version": "2012-10-17",
    "Id": "efs-policy-wizard-fc436d5f-a87f-4bef-b11b-3a34e7ec2dc3",
    "Statement": [
        {
            "Sid": "efs-statement-53841e56-22be-4606-ad44-fb25a8a062b6",
            "Effect": "Allow",
            "Principal": {
                "AWS": "*"
            },
            "Action": [
                "elasticfilesystem:ClientMount",
                "elasticfilesystem:ClientWrite",
                "elasticfilesystem:ClientRootAccess"
            ]
        }
    ]
}

efsconfigsecurity

efscreated

用EC2实例连接EFS

efsec2mount

efsec2SGP1

efsec2SGP2

$ sudo yum install -y amazon-efs-utils
$ sudo mkdir efs
$ sudo mount -t nfs4 -o nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport fs-38fd1cdd.efs.cn-northwest-1.amazonaws.com.cn:/ efs
# check disk
$ df -h
Filesystem                                         Size  Used Avail Use% Mounted on
devtmpfs                                           484M   64K  484M   1% /dev
tmpfs                                              493M     0  493M   0% /dev/shm
/dev/xvda1                                          50G  6.4G   43G  13% /
fs-38fd1cdd.efs.cn-northwest-1.amazonaws.com.cn:/  8.0E     0  8.0E   0% /home/ec2-user/efs
# 试着在EFS创建一个1GiB的文件
$ sudo dd if=/dev/zero of=~/efs/1GiB bs=1M count=1024 status=progress
$ cd /efs
$ ls -lh
total 1.0G
-rw-r--r-- 1 root root 1.0G Jan 31 10:58 1GiB

PS: 在创建完1GiB的文件以后,EFS的大小也会随之更新,反映到界面上有一丢丢的延时。

efsupdate

黑暗不是没有光,只是鲜有人看见。