写点什么

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:483209
用户头像

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

关注

评论

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

从 ChatGPT 大热看未来的云计算的发展趋势 | 社区征文

宇宙之一粟

ChatGPT 三周年征文

使用Spring Boot接入ChatGPT

Java你猿哥

Java spring Spring Boot ssm ChatGPT

Github标星90K!不愧是阿里大牛珍藏的LeetCode题解全彩小册

Java你猿哥

面试 算法 LeetCode ssm 算法题

失业浪潮之下,不如一蓑烟雨任平生 | 社区征文

宇宙之一粟

比起失业我更害怕自己“一无是处”|社区征文

轻口味

个人成长 移动端 三周年征文

深入探秘OpenTelemetry Agent奇特的muzzle机制

骑牛上青山

Java Java Agent OpenTelemetry

【RabbitMQ】| 带你 (超详细) 从0到1使用SpringBoot操作RabbitMQ

Java你猿哥

Java spring Spring Boot ssm RabbitMQ

必知必会的JavaScript前端面试题篇(二),不看后悔!

沉浸式趣谈

ES数据没了?谁动了我的数据?

极限实验室

elasticsearch 数据误删 数据丢失

知乎文章被百度收录有何意义?如何让知乎文章被百度收录?

石头IT视角

Java补充之MySQL入门必备知识

timerring

Java

Kubernetes CNI之Flannel网络模型分析

王玉川

Kubernetes 云原生 flannel VXLAN cni

创意世界在 Photoshop 上运行~

真大的脸盆

Mac ps Mac 软件 Photoshop 2022下载

2023-05-12:存在一个由 n 个节点组成的无向连通图,图中的节点按从 0 到 n - 1 编号, 给你一个数组 graph 表示这个图, 其中,graph[i] 是一个列表,由所有与节点 i

福大大架构师每日一题

Go 算法 rust

Django笔记二十六之数据库函数之数学公式函数

Hunter熊

Python 数据库 django 公式函数

如何优化Golang中重复的错误处理

乌龟哥哥

三周年连更

系列课程:从零开始接触人工智能大模型(介绍)

茶桁

逆袭!阿里专家手码23版Java面试三件套,Github星标直线狂飙

Java你猿哥

Java 微服务 面经 算法题 java核心知识点

一文讲明白路由器的基本概念、工作原理、主要部件以及应用场景

wljslmz

路由器 三周年连更

奇葩的 Git 签名错误

HoneyMoose

利用 Amazon API Gateway 和 Amazon Lambda 处理 Cloudfront 的内容请求

亚马逊云科技 (Amazon Web Services)

Go语言中如何通过接口来实现单一职责原则

Jack

2023最新后端中大厂面经&在面试过程中如何反问?

Java你猿哥

Java ssm java面试 面试官 Java面经

一篇文章教你在业务开发中高效玩转TDD(测试驱动开发)

Java你猿哥

Java ssm TDD

PoseiSwap:合规、隐私与支持更广泛的资产

BlockChain先知

BitKeep逆势崛起:千万用户的信任,终点还未到来

鳄鱼视界

23年最新Java岗常见面试题及答案(1000道),90% 的公司都会问到

Java你猿哥

Java MySQL zookeeper JVM java面试

文心一言 VS chatgpt (16)-- 算法导论4.1 1~2题

福大大架构师每日一题

ChatGPT 文心一言

MySQL 安装配置

芯动大师

MySQL shell脚本 三周年连更

C++编译器和链接器的完全指南

小万哥

c++ 程序员 面试 后端 开发

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