Tag: hadoop

Docker /虚拟化和HDFS

我目前正在使用的项目使用一个小型的Hadoop集群来迭代大约300GB的数据。 这些数据经过分析后填补了我们系统稍后使用的mongoDb。 现在Hadoop集群运行在4台物理机(旧的Dell Precision t3500)上。 为了testing这是一个很好的设置,因为我可以轻松地与机器进行交互,安装和testing。 但是,当程序发布时显然这是不太需要的。 对于这一步,最希望的结果是将Hadoop虚拟化。 将其展开到一组可以在群集中运行的Docker容器。 在search互联网时,很快就明白,Hadoop可以在这样的环境中运行。 大多数search结果都是关于Yarn和实际的hadoop实例,以及如何启动它们。 这很好,但我想知道:HDFS会发生什么。 在我目前的testing设置中,HDFS包含300GB数据,以三重方式存储(以防止数据丢失)。 当系统投入使用时,这个数据集每天将增长大约250MB。 将所有这些file upload到HDFS需要一段时间。 现在来看看我的问题: 当docker工人启动或停止某些容器时,HDFS将如何操作? 它可以保证它不会丢失任何数据。 而不需要很长时间来重新同步一个新的节点? 另外,我从错误的angular度看待这个问题的可能性很大。 我从来没有这样做过,所以如果我走错了路,请让我知道。 ps:如果这是一个长期/模糊的问题,我很抱歉。 但就像我说的,这对我来说是一个未知的领域,所以我正在寻找可以指引我正确方向的事情,Google只让我觉得不够,但把它的信息限制在YARN和Hadoop自己

将数据从主机加载到Dockerconfiguration单元容器

我有一个csv文件在我的主机,我有一个docker虚拟机。 我想从主机上的csvfile upload数据到虚拟机。 我正在使用python的hive_service库连接并进行查询。 然而,我坚持如何把数据放入虚拟机。 例如,下面的脚本连接并能够查询configuration单元,但在第二个查询时失败。 我需要从我的主机上传smpl.txt到docker vm import sys from hive_service import ThriftHive from hive_service.ttypes import HiveServerException from thrift import Thrift from thrift.transport import TSocket from thrift.transport import TTransport from thrift.protocol import TBinaryProtocol try: print "1111" transport = TSocket.TSocket("192.168.99.100", 10000) transport = TTransport.TBufferedTransport(transport) protocol = TBinaryProtocol.TBinaryProtocol(transport) print "2222" client = ThriftHive.Client(protocol) transport.open() print "3333" […]

Docker容器中的HDFS数据节点连接错误

我正在尝试使用我的开发机器提交一个spark工作。 Spark正在Docker容器中运行,出现以下错误。 我使用-p 50010:50010作为docker run命令的一部分,但仍然没有运气。 有没有其他的设置需要设置来启用连接到数据节点? > 16/02/04 09:15:10 INFO DFSClient: Exception in createBlockOutputStream > org.apache.hadoop.net.ConnectTimeoutException: 60000 millis timeout > while waiting for channel to be ready for connect. ch : > java.nio.channels.SocketChannel[connection-pending > remote=/178.19.0.2:50010] at > org.apache.hadoop.net.NetUtils.connect(NetUtils.java:533) at > org.apache.hadoop.hdfs.DFSOutputStream.createSocketForPipeline(DFSOutputStream.java:1610) > at > org.apache.hadoop.hdfs.DFSOutputStream$DataStreamer.createBlockOutputStream(DFSOutputStream.java:1408) > at > org.apache.hadoop.hdfs.DFSOutputStream$DataStreamer.nextBlockOutputStream(DFSOutputStream.java:1361) > at > org.apache.hadoop.hdfs.DFSOutputStream$DataStreamer.run(DFSOutputStream.java:588) > 16/02/04 […]

Spark Docker – 无法访问资源pipe理器的Web UI – Mac PC

无法访问资源pipe理器Web UI – Spark Docker容器 – Mac PC 这些是我做的步骤: docker拉序列号/火花:1.6.0 docker run -it -p 8088:8088 -p 8042:8042 -p 4040:4040 -h sandbox sequenceiq / spark:1.6.0 bash 我使用这个testing:(运行良好) 运行火花shell 火花shell\ – 主纱客户端\ – 驱动程序内存1克\ –executor内存1克\ –executor核心1 执行下面的命令应该返回1000 scala> sc.parallelize(1 to 1000).count() 但是不能访问web ui: 我试过了: 一个。 :8088 b: http:// sandbox:8088 / proxy / application_1458858022274_0002 / A c:localhost:8088 没有任何作品..任何帮助? […]

docker的主机不能连接互联网

题 在使用命令运行sudo docker network create –driver bridge hadoop的主机上创build桥接networking后: sudo docker network create –driver bridge hadoop then 主机无法连接互联网,但可以连接我公司的本地networking docker集装箱可以连接互联网和本地networking 但是,如果我使用命令删除hadoop桥networking: sudo docker network rm hadoop 那么主机networking一切正常 所以任何人都可以帮助我在创build用户定义的网桥时使主机networking恢复正常吗? 系统信息 docker版本: 1.11.2 操作系统: Ubuntu 16.04

如何将Spark集群与其他Hadoop2.x集群集成到Docker上

我的服务器上已经安装了Hadoop2.5集群,在Docker上运行 ,并且我们有一个在同一台服务器上运行的Spark独立集群(也部署在Docker中),我如何将Spark集群从独立模式切换到Spark on Yarn ,因为hadoop和火花运行在分离的docker。

如何在不同的主机上从外部访问docker container(overlay)中运行的服务

我有一个在覆盖networking上运行的docker容器。 我的要求是从不同的主机在外部到达在这个容器中运行的服务。 该服务绑定到容器的内部IP地址,在这种情况下做端口绑定到主机不是一个解决scheme。 实际情景 : 在容器内运行的服务是使用yarn-clientconfiguration的spark驱动程序 。 火花驱动程序绑定到容器内部IP(10.xxx)。 当火花驱动程序与在不同簇上运行的hadoop纱线进行通信时,纱线上的应用程序主设备试图通过驱动程序的容器内部ip进行通信,但是由于明显的原因它不能在内部IP上连接驱动程序。 请让我知道是否有办法实现从应用程序主(纱)到火花驱动(docker集装箱)的成功沟通。 Swarm版本:1.2.5 docker info: Containers: 3 Running: 2 Paused: 0 Stopped: 1 Images: 42 Server Version: swarm/1.2.5 Role: primary Strategy: spread Filters: health, port, containerslots, dependency, affinity, constraint Nodes: 1 ip-172-30-0-175: 172.30.0.175:2375 └ ID: YQ4O:WGSA:TGQL:3U5F:ONL6:YTJ2:TCZJ:UJBN:T5XA:LSGL:BNGA:UGZW └ Status: Healthy └ Containers: 3 (2 Running, 0 Paused, 1 […]

HTTP调用到Docker容器将IPredirect到Docker ID

我正在Windows 10机器上运行Hadoop Docker容器。 我正在尝试使用这个库来编写一个Python程序来访问我的HDFS。 我能列出与我的客户端configuration“ http:// localhost:50070 ”(50070是webHDFS端口)的文件夹内容。 但是,当我尝试读取文件的内容时,出现错误,说明地址无法parsing。 在返回的错误中,主机是我所期望的Docker容器“453af3bd9164”的ID,而不是“localhost”或“127.0.0.1”。 我曾尝试使用不同的Docker容器和不同的Python库,仍然得到类似的错误。 所以我的猜测是我没有正确configuration我的Docker或Hadoop环境。 由于我可以从我的Docker主机访问NameNode WebUI,并且列出的文件夹内容可以正常工作,所以我认为我的datanodeconfiguration可能是问题所在。 当我通过WebUI检查时,我的datanode显示为“In Service”,所以至less运行。 如何正确configuration我的环境,以便HTTP调用我的HDFS datanode正常工作? 核心-site.xml中: <configuration> <property> <name>fs.defaultFS</name> <value>hdfs://localhost:9000</value> </property> </configuration> HDFS-site.xml中: <configuration> <property> <name>dfs.replication</name> <value>1</value> </property> <property> <name>dfs.datanode.http.address</name> <value>0.0.0.0:50075</value> </property> </configuration> etc / hosts文件: 127.0.0.1 localhost ::1 localhost ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allrouters 172.17.0.2 453af3bd9164 […]

将文件复制到hdfs中的文件夹中,显示:没有这样的文件或目录 – quickstart.cloudera

我在我的Ubuntu 16中安装了一个docker。在里面安装了cloudera quickstart(hostname = quickstart.cloudera)。 我需要将文件复制到名为stackexchange的hdfs中的文件夹中。 我已经给了命令 [root@quickstart /]# hdfs dfs -put /home/myuser/Stack/Tags.xml stackexchange 但它显示为一个错误 put: `/home/myuser/Stack/Tags.xml': No such file or directory 可能是什么问题? docker工人无法从本地文件夹复制? 我在hadoop和docker工人是非常新的..

错误sequenceiq / hadoop-docker写入文件

写入文件时出错 试图将文件写入sequenceiq / hadoop-docker我不这样做。 部署一个docker集装箱sequenceiq / hadoop-docker,一切都会升起。 但是当我尝试写入文件时会出现错误 只能复制到0节点而不是minReplication(= 1)。 此操作中有1个数据节点正在运行,1个节点不在此范围内。 跑 docker run -it –rm –name=hadoopserver -p 8030:8030 -p 8040:8040 -p 8042:8042 -p 8088:8088 -p 19888:19888 -p 49707:49707 -p 50010:50010 -p 50020:50020 -p 50070:50070 -p 50075:50075 -p 50090:50090 -p 9000:9000 sequenceiq/hadoop-docker:latest /etc/bootstrap.sh –d 应用 public static void main(String[] args) throws IOException { Configuration conf […]