由于需要做实验来验证自己系统的scalability,实验室机器数又不够,所以选择用商业服务器来完成实验。 在AWS和阿里云之间选择了阿里云。在完成试验后对实验过程中遇到的那些坑进行了总结。
自己的实验主要是做一个分布式序列比对系统(DSA: Distributed Sequence Alignment System),测试其中相关算法的scalability
由于是要测性能,所以选择了独享型:ecs.sn2.large
相关配置:4核16G,CentOS release 6.5, Intel Xeon E5-2680,支持SSW2/SSE4.1/AVX指令集,但不支持AVX2
集群数量(台):5,10,15,…,45,50.每次扩容五台
软件:EMR-2.3.0:Hadoop 2.7.2, Yarn 2.7.2 and Spark 1.6.2
1.不支持Spark standalone运行模式
1.1 实验需求
实验室集群数量少,使用的是standalone模式,主要是速度比Yarn快。而且自己的DSA系统中使用了Alluxio进行加速,目前standalone模式支持比较全,standalone模式下Alluxio和Spark的数据本地化配置比较容易,而Yarn模式配置比较麻烦,官网只提供了AWS上的相关教程。
1.2 尝试解决
自己准备在阿里云的E-Mapreduce下自己安装和配置,但是发现很麻烦,scala环境都没配置,Spark也是修改过的,相关配置做了比较多的调整,每次扩容中都得自己配,自己测试。而且联系了阿里云的技术支持,说即使把Yarn关闭了系统也会自动恢复,目前也没支持standalone模式。考虑到自己的实验时间比较紧,选择了妥协,采用了从自己算法层面上做调整,尽量减少I/O开销对实验带来的影响。
目前阿里云E-MapReduce发布一年左右,很多在完善,而且商业的确实太多以Yarn运行来提高集群的利用率,只是希望能在独享机器上支持standalone模式。
2.集群脚本问题
2.1 实验需求和问题描述
在实验过程中,由于Spark调用c写的SIMD程序,需要在每个节点进行配置.一个一个节点太麻烦,想用EMR自带的集群脚本,集群节点初始化的时候就配置好,这样可以节省时间。
2.2 尝试解决
试了多次,都不行,包括参考【2】、【3】的教程。最简单的脚本都不行。也问了阿里云EMR的技术支持,得到的结论是阿里云没有配置好,单个集群需要技术支持人员手动更改,在升级或者申请后还得技术员手动更改。版本的升级得等一周后,可我实验时间只有一周……
最后没办法,只能一个一个节点运行自己写的脚本。
技术支持:鸿初(钉钉)
2.3 反馈回复
3.无法扩容
3.1 实验需求和和问题描述
实验过程中需要不断扩容节点,从5个节点到20个节点的三次扩容都没问题,但是从20个节点扩容至25个节点出问题了. 使用的是杭州地区的数据中心,心想杭州是阿里的大本营, 结果出现了扩容不了. 15分钟后还在扩容中,就开始联系EMR的支持群.因为前面几次正常的扩容一般都在5分钟左右.
3.2 尝试解决
联系技术支持人员,排查确认问题大概45分钟,到解决大概两个多小时,一直在等. 最后集群恢复了,技术支持的回复是系统问题,一般只会在多次扩容才会出现. 测试的时候估计没考虑我这种频繁扩容的情况.
另外一个问题是暂时修复后无法继续扩容.
申请杭州集群30个节点无法成功,下面描述. 最后迁移到了上海数据中心,再申请才完成.
4. 库存不够
4.1 实验需求和和问题描述
由于实验室节点有限,需要更多的计算资源.所以申请阿里云.在申请阿里云30个EMR节点的时候包括,库存不足,使用的杭州数据中心的集群.
试了两次,结果还是库存不足,没成功但是还扣了费.
4.2 尝试解决
联系技术支持, 得到的回复是机器库存不可查, 问题暂时修复不了. 没办法,只能申请其他地方的数据中心.对比之后,发现深圳配置麻烦,需要专网. 最后选择了上海数据中心,申请30个EMR节点成功,扩容也没问题.
通过完善脚本后, 启动配置到运行程序可以控制在20分钟左右,包括申请机器时初始化的5五分钟左右.还需要配置每个节点的SIMD环境,HDFS文件导入导入, lib文件的分发等.大概10个左右的步骤.
扣费还在走工单,2017.1.1申请的,今天是2017.1.24,之前回复是半个月,可能是过年吧.
5. 充值后退钱不方便
5.1 实验需求和和问题描述
由于担心集群被关,特地多充了点钱在阿里云,以防集群关机没保存配置。充值的时候提示没用完的可以退。但是用完后才发现支付宝帐号需要与发票抬头一致,我做实验是实验室报销,写学校的名字,但钱得自己垫。这比较坑。
另外申请的两个工单也还在走流程,退的是券,强烈要求下才给退的现金。
5.2 尝试解决
联系的售后工程师,得到的回复是为了安全起见,充值退钱需要与抬头一致,工单退款也很麻烦。
退款需要学校盖章证明。然后扫面或者图片发过去。
工单没下来,只能等了….
真心希望速度能快点。
总结
论文还在写,相关结果等论文发表后再写出来.取得的实验结果还算比较理想,比目前已经发表的GPU、FPGA、Xeon Phi相关的论文的性能都要高,只是其实还有很多地方性能有待提高。
总的来说, 阿里云的EMR还有很多不完善的地方, 但是技术支持特别好.有时忙到凌晨一两点,技术支持还在帮忙解决问题,很感谢. 特别是成滔、剑影、雷飙、封神等。这也是我选择用阿里云的一个重要原因。希望阿里云的EMR能不断完善。
参考:
【1】https://www.aliyun.com/product/emapreduce/
【2】https://help.aliyun.com/document_detail/44232.html?spm=5176.doc28108.6.570.1hwnUn
【3】https://yq.aliyun.com/articles/61326?spm=5176.8091938.0.0.xU2bl3