设置自定义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在启动节点时将默认跳过大多数安装配方以缩短启动时间。要以牺牲向后兼容性为代价跳过大多数安装配方以缩短启动时间,请删除"skip_install_recipes" : "no"来自 的cluster键入extra_json设置。