阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

在 Docker 上建立多节点的 Hadoop 集群

139次阅读
没有评论

共计 2005 个字符,预计需要花费 6 分钟才能阅读完成。

在上篇文章中你已经看到了在你的 devbox 创建一个单点 Hadoop 集群是多么简单。

现在我们提高门槛,在 Docker 上创建一个多点 hadoop 集群。在开始前,确保你有最新的 Ambari 镜像:

docker pull sequenceiq/ambari:latest

一行命令

一旦你得到了最新的镜像,你就可以启动 Docker 容器。我们已经创建了几个 shell 函数来帮你输入 Docker 命令,从而避免输入像 docker run [options] image [command] 这样冗长的命令。

有了这些功能,创建 3 个节点的 hadoop 簇,只需要下面一行代码搞定:

curl -Lo .amb j.mp/docker-ambari && . .amb && amb-deploy-cluster

默认参数值都是可以根据需要更改的,像是 blueprint, 簇大小, 等等 … 在 shellj.mp/docker-ambari 功能函数的头文件有参数列表.

它是按照下面步骤来实现的:

  • 在 Docker (后台运行) 容器的守护进程上运行 sambari-server start (记得还有 anambari-agent start)

  • 运行 sn-1 守护进程容器并用 ambari-agent start 连接到服务器

  • 运行 AmbariShell 以及其终端控制台 (监控子进程)

    • AmbariShell 会把内置的多节点 blueprint 发送至 /api/v1/blueprintsREST API

    • AmbariShell 依照 blueprint 的设置自动分配宿主信息

    • 通过发送至 /api/v1/clustersREST API 的内容创建簇

自定义

如果你有自己定义好的脚本,可以放在 gist 然后运行 AmbariShell. 先启动 AmbariShell:

amb-start-cluster 2
amb-shell

AmbariShell 启动的前提:

  • Ambari REST API 将帮助你建立多个 hadoop 端.

host list
blueprint add –url https://gist.githubusercontent.com/lalyos/xxx/raw/custum-blueprint.json
cluster build –blueprint custom-blueprint
cluster assign –hostGroup host_group_1 –host amb0.mycorp.kom
cluster assign –hostGroup host_group_2 –host amb1.mycorp.kom
cluster assign –hostGroup host_group_2 –host amb1.mycorp.kom
cluster create

AmbariShell 的 hint 命令能帮助开发人员实现自动补全等功能.

自动补全包括:

  • 补全命令行 (例如,没有这个帮助下 cluster 命令是不可用的)

  • 添加需要的参数

  • 添加备选参数: – 后加上 <TAB>

  • 添加变参,像是参数名,宿主名等等 …

总结

基本上我们开始使用 Docker 的时候就已经使用多端的 hadoop 功能了 – 笔记本上运行 3 到 4 簇面临的极限问题比 Sandbox VM 少得多.

我们使用了 docker 的模式简化了 hadoop 的使用模式 – 可以在 LinkedIn 找到我们关于 Cloudbreak 的最新进展 – 开源云端的 Hadoop as a Service API 应用并构建在 docker 上.

希望本文能帮你简化你的开发流程 – 如有什么关于 docker 上使用 hadoop 问题,欢迎沟通.

开源项目 Docker,Red Hat 新的虚拟化选择 http://www.linuxidc.com/Linux/2013-10/91051.htm

dockerlite: 轻量级 Linux 虚拟化 http://www.linuxidc.com/Linux/2013-07/87093.htm

Docker 的搭建 Gitlab CI 全过程详解 http://www.linuxidc.com/Linux/2013-12/93537.htm

Docker 和一个正常的虚拟机有何区别? http://www.linuxidc.com/Linux/2013-12/93740.htm

在 Docker 中使用 MySQL http://www.linuxidc.com/Linux/2014-01/95354.htm

Docker 将改变所有事情 http://www.linuxidc.com/Linux/2013-12/93998.htm

Docker 1.0 正式版发布下载 http://www.linuxidc.com/Linux/2014-06/102941.htm

更多 Hadoop 相关信息见 Hadoop 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=13

Docker 的详细介绍 :请点这里
Docker 的下载地址 :请点这里

正文完
星哥说事-微信公众号
post-qrcode
 
星锅
版权声明:本站原创文章,由 星锅 2022-01-20发表,共计2005字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中