bdutil
或gsutil
,但我没有找到如何使其正常工作!
答案 0 :(得分:2)
不幸的是,由于Hadoop 1和Hadoop 2之间的各种路径,库依赖关系和守护程序进程差别很大,因此现在没有简单的就地升级方法。特别是,即使协调了库升级和守护程序更改,对集群进行的任何自定义都可能会中断,因此通常,只需删除并重新创建集群就会更容易,更安全。
为了帮助防止过度卡在单个群集实例上,并从能够从头开始重新部署可重现群集的灵活性中受益,最佳做法建议是将您可能拥有的任何自定义项隔离到自定义“_env.sh “文件。 spark_env.sh extension是如何在现有bdutil安装之上混合额外自定义的一个很好的示例。再举一个例子,如果您只想在bdutil安装结束时在所有计算机上安装openjdk-7-jdk
,则需要创建文件install_jdk.sh
和add_jdk_env.sh
:
# file: install_jdk.sh
sudo apt-get install openjdk-7-jdk
对于add_jdk_env.sh:
# file: add_jdk_env.sh
# Create a command group which references the new install_jdk.sh file.
COMMAND_GROUPS+=(
"install_jdk:
install_jdk.sh
"
)
# Run that command group on master and workers.
COMMAND_STEPS+=(
'install_jdk,install_jdk'
)
最后,您只需将其混合用于您的bdutil部署:./bdutil -e add_jdk_env.sh deploy