大纲
1 Amazon SageMaker
1.1 创建笔记本实例
Amazon SageMaker Notebook 实例是一个用来进行机器学习 (ML) 计算实例,用来运行Jupyter Notebook 应用程序。我们可以在其网页中交互式的编写代码和运行代码,并且可以直接返回逐段代码的运行结果。
接下来,我们将会创建一个笔记本实例。
输入笔记本实例名称。
对于IAM角色,我们可以选择创建新角色
最后,点击创建笔记本实例。
1.2 上传ipynb
demo文件git地址
打开 Jupyter
上传ipynb文件
1.3 进入实例
1.4 选择JupyterLab解释器语言
选择使用"conda_python3"。
1.5 修改IAM角色权限
eg: 为了方便测试,暂时先赋予全部权限。(生产环境中要严格遵从最小权限原则。)
找到我们“1.1.1 创建笔记本实例”中创建的IAM角色,为此角色赋予以下权限。
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": [
"ecr:GetRegistryPolicy",
"ecr:CreateRepository",
"ecr:DescribeRegistry",
"ecr:DescribePullThroughCacheRules",
"ecr:GetAuthorizationToken",
"ecr:PutRegistryScanningConfiguration",
"ecr:CreatePullThroughCacheRule",
"ecr:DeletePullThroughCacheRule",
"ecr:PutRegistryPolicy",
"ecr:GetRegistryScanningConfiguration",
"ecr:BatchImportUpstreamImage",
"ecr:DeleteRegistryPolicy",
"ecr:PutReplicationConfiguration"
],
"Resource": "*"
},
{
"Sid": "VisualEditor1",
"Effect": "Allow",
"Action": "ecr:*",
"Resource": "arn:aws:ecr:【aws_region】:【aws_account_id】:repository/【repository_name】"
}
]
}
1.6 执行代码
使用“Shift+Enter”组合键来执行当前选择的代码块。执行结果将会在代码块下方展示。
当我们执行完“将容器推送到远程的ECR镜像仓库”的代码后,我们将会在Amazon ECR中看到我们创建的镜像仓库。
2 AWS Batch
Batch 可以帮助我们在 AWS 云上运行批量计算工作负载。
2.1 创建计算环境
前往Batch 创建计算环境。
输入计算环境名称
实例配置请根据实际情况进行配置。
联网默认即可
完成创建。
2.2 创建任务队列
输入作业队列名称
连接的计算环境,请选择上一步创建的计算环境
完成创建。
2.3 创建任务定义
任务类型我们选择单节点
输入名称与超时时间
选择使用Fargate作为运行环境,并开启分配公共IP。
进入ECR,选择我们刚才创建的镜像仓库,复制其ARN。
返回创建,输入映像与命令
命令:python backtest.py 【数据源所在S3桶名】 【要回测的源数据文件名】 【结果存储S3桶名】
输入重试次数
完成创建。
2.4 创建执行任务
输入作业名称与运行的作业队列,其他保持默认即可。
提交任务。等待作业执行。
2.5 执行结果
参考文献
作者
ZiKuo Su