在AWS上创建Lustre集群

来自Lustre文件系统
跳转至: 导航搜索

本节介绍一个构建Lustre AWS的示例,按照本示例,大部分采用默认值,例如4台OSS服务器和2个客户端。如需要改为自定义值是很容易的。操作完成后,你将拥有一个4台服务器的Lustre文件系统和2个客户端,可供进行实验使用。

如果已经有客户端要挂载新的Lustre文件系统,请参见Lustre云版本——客户端设置,了解如何使用ce-configure命令设置客户机以访问Lustre。

首先需要一个AWS帐户。请按照文档说明设置AWS帐户

接着需要一个SSH密钥用于SSH访问你的集群。所以要创建一个公钥和私钥,并将它存储在你的系统上。

对于windows用户,可以使用puttygen来生成密钥。你也可以在AWS中生成一个密钥,然后把私钥复制回来。

无论哪种情况,都强烈建议使用新的密钥。这个例子使用的是本地生成的密钥(不是在AWS上)。

一旦拥有了访问权限,即可以登录系统,你将会看到下图所示的屏幕。为了方便起见,可以点击“编辑”并将一些标签移到访问栏上。

图 1. 编辑访问栏

点击“编辑”,然后将EC2、VPC和Cloud Formation拖放到访问栏(放在"服务"之后,"编辑"之前)。

图 2. 添加到访问栏

现在访问栏会变成如下图所示。接下来要做的是创建一个密钥对,以便在创建集群后对集群进行访问。

因此请点击"EC2"。

图 3. 访问栏

在EC2面板上,在左侧面板的"网络和安全(Network and Security)"下寻找"密钥对(Key Pairs)"。

图 4. 选择密钥对

然后选择"导入密钥(Import Keys)",上传一个与OpenSSH兼容的公钥。稍后运行的模板将把这个公钥放在它创建的所有实例中。

也可以在这里选择 "创建密钥对(Create Key Pair)"来创建一个密钥,但这个示例中将使用在系统上生成的密钥。

接下来这张截图还显示了Windows用户的puttygen窗口。Puttygen不保存OpenSSH兼容的公钥,所以不能上传保存的公钥。

然而,如果你把私钥加载到puttygen中,可以从这里显示的框中剪切一个OpenSSH兼容的密钥,然后粘贴到导入密钥框中。给密钥取一个能记住的独特名字。

图 5. 导入密钥

现在看到已导入的密钥,并其命名为"aws-demo",作为一个密钥对列出。稍后在创建集群时将会用到这个密钥。

接下来需要设置的是一个VPC(虚拟私有云)。我们将使用AWS向导来完成这项工作。首先从访问栏中选择"VPC"。

图 6. 选中VPC

点击"启动VPC向导(start VPC Wizard)"来创建VPC。

图 7. 启动VPC向导

选择右边第一个选项"带有单个公共子网的VPC(VPC with a single Public Subnet)",点击 "选择(Select)"

图 8. VPC

填写想要的地址范围。您不应该使用一些与其他可能关注这个的人混淆的值。对于HPDD来说,这是一个共享账户。

在这个例子中使用了"10.81.0.0/16",并将VPC命名为"aws-demo"

这里还把公共子网设为10.81.10.0/24,并把这个子网命名为"awsdemo-subnet"。

当所有的字段都填好后,点击"创建VPC"。

图 9. 创建VPC

现在请浏览Lustre云版本--自支持,该页面上有所有可用的版本。在这个例子中使用的是加州AWS域。

图 10. 可选版本

在下一页上采取默认值,然后点击"下一步(next)"

图 11. 堆栈页1

在下一页,给堆栈取一个独特的名字。本例中使用了aws-demo-lustre-ha。

同时给文件系统取一个名字。本例中使用"demofs"。

从下拉列表中选择前面创建的密钥对。

图 12. 堆栈页2a

在上面的界面中,还可以自定义其他功能。如果你想使用over-the-wire加密(使用IPsec),那么将"启用加密(Enable Encryption)"选项设置为"True"。

可以用S3 bucket的数据预先填充到集群中。使用"ImportBucket"字段指定您的桶,"ImportDest"表示您希望数据存储在Lustre文件系统中的位置,而 "importPrefix"则指定桶中的起始点。

"MdsInstanceType"和"ImportPrefix"用于指定桶的起点。"OssInstanceType"用来改变MDS和所有OSS服务器使用的存储类型。

OSSCount可以将默认的4台OSS服务器改为你所需要的台数。

"OssVolumeCount"和"OstVolumeSize"是用来改变一个OST使用的EBS卷的数量和大小。

在下面的截图中"WorkerCount"和"WorkerInstanceType"用来指定你想要创建的客户端节点数量和要使用的虚拟机实例类型。如果你有自己单独配置的客户端,想连接到这个文件系统,你就不需要设置这两个值。


接着选择在"Vpcid"下拉框中创建的VPC。

图 13. 堆栈页2b

填写CIDR,选择创建VPC时需要创建的子网。

图 14. 堆栈页2c

进入下一个界面,点击"下一步"。在这个屏幕上不会有任何改变。


图 15. 堆栈页2d

我们知道AWS不是免费的,所以点击"创建(Create)"


图 16. 堆栈页2e

当GUI跳转到下一页时,你可能需要使用页面右上方的刷新符号进行刷新。

但过了一会儿,你会看到Lustre集群已经启动并运行了。在"Outputs"选项卡中查找用于SSH到集群的NAT实例的IP地址。

需要使用用户名"ec2-user"进行SSH。

你还会看到一个链接,可以点击这个链接打开浏览器,进入集群的面板和集群的结构输出。

你可以随时点击访问栏上的"Cloud Formation"来返回这个页面。

图 17. 创建集群

如需访问服务器,则要在激活pagent并启用转发的情况下ssh到NAT节点,然后从NAT节点ssh到服务器。

对于windows,启动"pagent"并添加你的私钥。然后使用putty时,进入ssh下的ssh auth页面,勾选 "允许代理转发(allow agent forwarding)"。在putty中也要记得在auth部分指向你的私钥。

一旦SSH连接到NAT节点,就可以用"ec2-user"的身份来通过ssh连接服务器。

要获得创建的服务器或客户端的IP地址,从访问栏点击"EC2",然后点击左侧窗格中的"实例(instances)",再选择服务器。

这里显示的是MGS。在底部窗格中,MGS的IP地址显示在顶部。你也可以从dashboard->cluster页面获得服务器的IP地址。

图 18. 获取服务器IP

您可以通过IP地址来访问您的客户端,挂载文件系统,并在AWS上开始Lustre之旅。

如果您想挂载新的Lustre文件系统,请参见Lustre云版本——客户端设置,了解如何使用ce-configure命令设置您的客户端以进行Lustre访问。