BigTop docker-hadoop.sh 无法启动

Posted

技术标签:

【中文标题】BigTop docker-hadoop.sh 无法启动【英文标题】:BigTop docker-hadoop.sh failing to start 【发布时间】:2017-10-21 02:24:01 【问题描述】:

我正在使用 BigTop 1.2.0,vagrant provisioner 运行良好,但是当我尝试使用 Docker 配置程序时,显示以下错误:

命令

$ ./docker-hadoop.sh -c 3

错误

环境检查... 检查码头工人: Docker 版本 17.09.0-ce,构建 afdb6d4 检查 docker-compose: docker-compose 版本 1.16.1,构建 6d1ac219 检查 ruby​​:ruby 2.4.2p198(2017-09-14 修订版 59899)[x64-mingw32] -e:1:in <main>': undefined method[]' 对于 nil:NilClass (NoMethodError) -e:1:in <main>': undefined method[]' 对于 nil:NilClass (NoMethodError) 不推荐使用 scale 命令。请改用带有 --scale 标志的 up 命令。 创建 20171020215450r21863_bigtop_1 ... 创建 20171020215450r21863_bigtop_2 ... 创建 20171020215450r21863_bigtop_3 ...

错误:未提供 20171020215450r21863_bigtop_2 资源 ID 错误:未提供 20171020215450r21863_bigtop_3 资源 ID 错误:未提供 20171020215450r21863_bigtop_1 资源 ID

回溯(最近一次通话最后一次): 文件“docker-compose”,第 6 行,在 文件“compose\cli\main.py”,第 68 行,在 main 文件“compose\cli\main.py”,第 121 行,在 perform_command 文件“compose\cli\main.py”,第 796 行,按比例缩放 文件“compose\service.py”,第 257 行,按比例 _execute_convergence_start 中的文件“compose\service.py”,第 444 行 _execute_convergence_create 中的文件“compose\service.py”,第 395 行 文件“compose\parallel.py”,第 70 行,parallel_execute docker.errors.NullResource:未提供资源 ID 执行脚本 docker-compose 失败 Docker 容器启动失败!

提前致谢。

【问题讨论】:

【参考方案1】:

您似乎正在使用 mingw32 在 Windows 上运行 docker-hadoop.sh。仅仅因为资源限制,Docker Provisioner 经过测试可在 Mac 和 Amazon Linux for Bigtop 版本上运行。所以我不太确定 Windows 方面的故事;)

但是,从您的错误日志中:

nil:NilClass (NoMethodError) 的未定义方法[]'

我很确定问题与我们的 ruby​​ YAML 解析功能有关: https://github.com/apache/bigtop/blob/master/provisioner/docker/docker-hadoop.sh#L138

为此,我建议您在 Windows 上坚持使用 Vagrant Provisioner。 如果您想帮助我们使该功能与 Windows 兼容,请随时联系 dev@bigtop.apache.org

【讨论】:

以上是关于BigTop docker-hadoop.sh 无法启动的主要内容,如果未能解决你的问题,请参考以下文章

Bigtop (centos) 中缺少 hadoop 包 - 安装问题

Linux Centos6 VM 如何下载bigtop?

Apache Bigtop再论与卖书求生存

我们如何使用 Ambari 安装 Apache BigTop?

是否可以使用 Ambari 安装 Apache Bigtop Stack

RHEL 7 上的 Apache Bigtop 安装