Python 如何在代码中的amazon EMR引导操作上安装自定义软件包?
需要在AmazonEMR引导操作上安装一些软件包和二进制文件,但我找不到任何使用此功能的示例 基本上,我想安装python包,并指定每个hadoop节点使用该包处理s3 bucket中的项目,下面是一个示例frpm botoPython 如何在代码中的amazon EMR引导操作上安装自定义软件包?,python,boto,amazon-emr,Python,Boto,Amazon Emr,需要在AmazonEMR引导操作上安装一些软件包和二进制文件,但我找不到任何使用此功能的示例 基本上,我想安装python包,并指定每个hadoop节点使用该包处理s3 bucket中的项目,下面是一个示例frpm boto name='Image to grayscale using SimpleCV python package', mapper='s3n://elasticmapreduce/sampl
name='Image to grayscale using SimpleCV python package',
mapper='s3n://elasticmapreduce/samples/imageGrayScale.py',
reducer='aggregate',
input='s3n://elasticmapreduce/samples/input',
output='s3n://<my output bucket>/output'
name='Image to grayscale using SimpleCV python package',
mapper='s3n://elasticmapreduce/samples/imageGrayScale.py',
“聚合”,
input='s3n://elasticmapreduce/samples/input',
output='s3n:///output'
我需要让它使用SimpleCV python包,但不确定在哪里指定它。如果未安装,如何安装?是否有一种方法可以避免等待安装完成,是否可以将其安装到某个地方并只参考python包?有一个类boto.emr.bootstrap\u action.bootstrap action用于引导操作 定义如下。大部分代码来自
我认为您可以让EMR实例从boto内部旋转,这样引导只在会话中第一次发生。在你注销之前要小心关闭它们,这样你的账单上就不会有惊喜了。你有没有听说过
boto
?是的,我就是从那里得到示例代码的,特别是sudo apt get命令帮助我手动完成的。
import boto.emr
from boto.emr.bootstrap_action import BootstrapAction
action = BootstrapAction(name="Bootstrap to add SimpleCV",
path="s3n://<my bucket uri>/bootstrap-simplecv.sh")
conn = boto.emr.connect_to_region('us-west-2')
jobid = conn.run_jobflow(name='My jobflow',
log_uri='s3://<my log uri>/jobflow_logs',
steps=[step], # step defined elsewhere
bootstrap_actions=[action])
#!/bin/sh
# filename: bootstrap-simplecv.sh (save it in an S3 bucket)
set -e -x
sudo apt-get install python-setuptools
sudo easy_install pip
sudo pip install -U SimpleCV