设置自定义 Amazon ParallelCluster 说明书 - Amazon ParallelCluster
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

设置自定义 Amazon ParallelCluster 说明书

重要

以下是有关使用自定义版本的 Amazon ParallelCluster 说明书食谱的说明。这是自定义 Amazon ParallelCluster 的高级方法,具有难以调试的潜在问题。Amazon ParallelCluster 团队强烈建议使用自定义引导操作中的脚本进行自定义,因为安装后挂钩通常更易于调试和更易于跨 Amazon ParallelCluster 版本进行移植。

步骤

  1. 确定您在其中克隆了 Amazon ParallelCluster 说明书代码的 Amazon ParallelCluster 说明书工作目录。

    _cookbookDir=<path to cookbook>
  2. 检测 Amazon ParallelCluster 说明书的当前版本。

    _version=$(grep version ${_cookbookDir}/metadata.rb|awk '{print $2}'| tr -d \')
  3. 创建 Amazon ParallelCluster 说明书的存档,并计算其 md5。

    cd "${_cookbookDir}" _stashName=$(git stash create) git archive --format tar --prefix="aws-parallelcluster-cookbook-${_version}/" "${_stashName:-HEAD}" | gzip > "aws-parallelcluster-cookbook-${_version}.tgz" md5sum "aws-parallelcluster-cookbook-${_version}.tgz" > "aws-parallelcluster-cookbook-${_version}.md5"
  4. 创建一个 Amazon S3 存储桶,并将存档、其 md5 及其上次修改日期上传到此存储桶。通过公共读取 ACL 授予公共可读权限。

    _bucket=<the bucket name> aws s3 cp --acl public-read aws-parallelcluster-cookbook-${_version}.tgz s3://${_bucket}/cookbooks/aws-parallelcluster-cookbook-${_version}.tgz aws s3 cp --acl public-read aws-parallelcluster-cookbook-${_version}.md5 s3://${_bucket}/cookbooks/aws-parallelcluster-cookbook-${_version}.md5 aws s3api head-object --bucket ${_bucket} --key cookbooks/aws-parallelcluster-cookbook-${_version}.tgz --output text --query LastModified > aws-parallelcluster-cookbook-${_version}.tgz.date aws s3 cp --acl public-read aws-parallelcluster-cookbook-${_version}.tgz.date s3://${_bucket}/cookbooks/aws-parallelcluster-cookbook-${_version}.tgz.date
  5. 将以下变量添加到 Amazon ParallelCluster 配置文件中的 [cluster] 部分下。

    custom_chef_cookbook = https://${_bucket}.s3.<the bucket region>.amazonaws.com/cookbooks/aws-parallelcluster-cookbook-${_version}.tgz extra_json = { "cluster" : { "skip_install_recipes" : "no" } }
    注意

    从 Amazon ParallelCluster 版本 2.6.1 开始,在启动节点时将默认跳过大多数安装食谱以缩短启动时间。要以牺牲向后兼容性为代价跳过大多数安装食谱以缩短启动时间,请从 extra_json 设置中的 cluster 键中删除 "skip_install_recipes" : "no"