写点什么

Apache 拟在 Docker 中运行 Hadoop

  • 2014-09-04
  • 本文字数:840 字

    阅读完需:约 3 分钟

Apache 在其 Hadoop wiki 上整理了 Docker 中运行 Hadoop 的优势,以及要完全在 Docker 中运行 Hadoop 所需要完成的工作。在 Docker,或者说其它容器中运行 Hadoop YARN 有很多优势,具体如下:

  1. 软件依赖和配置的隔离:在 Docker 中运行的应用,其软件依赖和配置是与宿主机完全没有关系的,跟其其它行在 Docker 中的应用也没有关系;
  2. 安全性:运行在 Docker 中的应用,在没有主动配置的情况下,基本没有办法访问(即便是 Docker 镜像中的 root 权限)宿主文件系统的内容,这可以很好的保护宿主文件系统、设备等等;
  3. 性能隔离:Docker 可以对应用所需要的资源,如 CPU 计算资源、内存资源、存储资源、带宽等进行调控;
  4. 一致性:只要是源自同一个 Docker 镜像,所有的任务就具有完全一致的软件环境,跟宿主环境无关。比如一个 Ubuntu 镜像可以像使用真正 Ubuntu 系统一样利用其特性,哪怕宿主机器是 RHEL;
  5. 快速部署:Docker 有着强大的镜像存储和分发能力,开发者可以很方便的从镜像中心获取 Hadoop YARN 应用的镜像;
  6. 可编程:通过 Dockerfile,开发者可以非常方便地对 YARN 应用的文件系统、环境配置和运行的脚本进行设置;

虽然容器的优势是明显的,但是目前 Docker 和 YARN 的情况却无法支撑完全在 Docker 中运行 Hadoop YARN 任务,Apache 提出需要对 Docker 和 YARN 进行修改的想法,并给出了一些目前计划的工作:

  1. YARN 的 Docker 执行器;
  2. Docker 需要支持 user namespaces,以便可以将 Docker 镜像中的 root 用户映射到宿主机的普通用户,来控制用户对宿主文件系统的访问;
  3. 容器的网络配置:这项工作主要为了让 YARN 的主节点同其他节点通信,Docker 现有的 NAT IP 地址不允许运行在某个镜像中的任务访问另外一台物理宿主上运行的其他任务;
  4. 动态配置资源限制:目前 Docker 不支持动态对镜像资源进行配置;

感谢郭蕾对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

2014-09-04 03:483134
用户头像

发布了 268 篇内容, 共 125.6 次阅读, 收获喜欢 24 次。

关注

评论

发布
暂无评论
发现更多内容

分而治之——D&C

Kylin

3月日更 21天挑战 分而治之

云原生数据库风起云涌,华为云GaussDB破浪前行

华为云开发者联盟

数据库 架构 云原生 华为云 GaussDB

Python OpenCV 彩色图像与灰度图像的转换

梦想橡皮擦

3月日更

超详细!手把手带你快速入门 GitHub!

JackTian

git GitHub 开源

畅想数据湖

数据社

数据仓库 数据湖 ETL ELT

美女师姐说给你听!我成为蚂蚁安全工程师的初体验

DT极客

2021年DevOps的四大趋势

禅道项目管理

DevOps 工具 趋势 Redis开发与运维

云原生技术及其未来发展趋势展望 | 趋势解读

云原生

PostgreSQL 集群宕机后恢复

桜喵ノねこ

PHP程序员如何简单的开展服务治理架构(一)

CrazyCodes

php 服务治理

智慧公安重点人员管控系统大数据分析平台的搭建

13828808769

智慧城市 智慧交通

商品溯源之痛,区块链对商品假冒的解决方案

13828808769

区块链+ 区块链应用 区块链发展 #区块链#

神策大数据技术直播系列课第二季,开讲啦

神策技术社区

大数据 性能优化 大前端 工程师 事件分析

MoviePy - 中文文档(一个专业的python音视频编辑库)教程

ucsheep

Python 音视频 视频剪辑 Moviepy 视频合成

“刷脸”日益泛滥,“掌经脉”开辟生物识别新路

E科讯

区块链BaaS应用服务平台的搭建

13828808769

区块链+ #区块链#

网络连接总超时?从四层模型上解析网络是怎么连接的

京东科技开发者

计算机网络 服务器 域名

量化策略软件搭建,马丁策略交易软件开发

直播预告 | 数据操作加速器,CloudQuery v1.3.5 发布

BinTools图尔兹

sql 编辑器 数据治理 数据安全 数据库管理工具

k8s(Kubernetes)中Pod,Deployment,ReplicaSet,Service之间关系分析

ucsheep

Kubernetes k8s pod Deployment ReplicaSet

【LeetCode】132模式Java题解

Albert

算法 LeetCode 3月日更

IAP:物联网终端软件升级技术

华为云开发者联盟

IoT LiteOS iap 物联网终端 OTA

带你了解数据库的“吸尘器”:VACUUM

华为云开发者联盟

数据库 数据 GaussDB(DWS) VACUUM

“数字云南”建设成效逐渐显现 区块链财政电子票据带来民生与环保效益

CECBC

区块链

用 WebRTC 打造一个音乐教育 App,要解决哪些音质难题?

阿里云CloudImagine

音视频 WebRTC 在线教育 RTC

情指勤指挥调度平台搭建,公安局情报指挥系统

区块链技术或加速企业“碳中和”战略落地

CECBC

区块

自媒体平台数据统计分析爬虫之【趣头条】模拟登陆分析详解及数据统计接口详解

ucsheep

接口 爬虫 趣头条 模拟登录

技术杂谈 | Flutter 的性能分析、工程架构与细节处理

有道技术团队

flutter

终于知道为啥网页不让我复制粘贴了!

华为云开发者联盟

js 代码 button事件 复制粘贴 输入框

力扣(LeetCode)刷题,简单题(第14期)

不脱发的程序猿

面试 LeetCode 28天写作 算法攻关 3月日更

Apache拟在Docker中运行Hadoop_开源_张天雷_InfoQ精选文章