Tag: hdfs

docker中的纱线 – __spark_libs__.zip不存在

我已经看了这个 StackOverflow后,但他们没有帮助我很多。 我正试图让纱线在现有的集群上工作。 到目前为止,我们一直使用火花独立pipe理器作为我们的资源分配器,并且一直按预期工作。 这是我们架构的基本概述。 在白色框中的所有东西都在docker容器中运行。 在master-machine我可以在yarn resource manager容器中运行以下命令,并运行使用yarn的spark-shell: ./pyspark –master yarn –driver-memory 1G –executor-memory 1G –executor-cores 1 –conf "spark.yarn.am.memory=1G" 但是,如果我尝试从jupyter容器内的client-machine运行相同的命令,我在YARN-UI中出现以下错误 。 Application application_1512999329660_0001 failed 2 times due to AM Container for appattempt_1512999329660_0001_000002 exited with exitCode: -1000 For more detailed output, check application tracking page:http://master-machine:5000/proxy/application_1512999329660_0001/Then, click on links to logs of each attempt. Diagnostics: File […]

如何让我的hdfsdocker客户端运行?

我正在启动一个hdfs服务器 : docker run -d sequenceiq/hadoop-docker:2.6.0 我正在观察正在运行的docker进程 docker ps 得到以下结果: 6bfa4f2fd3b5 sequenceiq/hadoop-docker:2.6.0 "/etc/bootstrap.sh -d" 31 minutes ago Up 31 minutes 22/tcp, 8030-8033/tcp, 8040/tcp, 8042/tcp, 8088/tcp, 49707/tcp, 50010/tcp, 50020/tcp, 50070/tcp, 50075/tcp, 50090/tcp kind_hawking 我试图通过hdfs连接到我的docker集装箱: sudo docker run -ti davvdg/hdfs-client hadoop fs -fs hdfs://localhost:50075 -ls / 这给出了以下结果: ls: Call From a48f81b8e1bb/172.17.0.3 to localhost:50075 failed on connection exception: […]

用Docker优雅地closuresHDFS

我正在玩Docker和一个简单的HDFS集群。 目前是单个节点群集。 以下脚本用于启动群集。 SequenceIQdocker图像 在阅读Docker的更多信息时,似乎对于closures,它会调用进程ID为1的SIGQUIT。这对hdfs文件系统有何影响? 不知道SIGQUIT是否会传播给subprocess。 root 1 0 0 08:49 ? 00:00:00 /bin/bash /etc/bootstrap.sh -bash root 23 1 0 08:49 ? 00:00:00 /usr/sbin/sshd root 138 1 9 08:49 ? 00:00:04 /usr/java/default/bin/java -Dproc_namenode -Xmx1000m – Djava.net.preferIPv4Sta root 269 1 9 08:49 ? 00:00:04 /usr/java/default/bin/java -Dproc_datanode -Xmx1000m -Djava.net.preferIPv4Sta root 451 1 8 08:49 ? 00:00:03 /usr/java/default/bin/java […]

拥有Docker群集的Hadoop集群

我试图在多个主机的docker swarm中设置一个hadoop集群,每个docker节点上的datanode都有一个挂载的卷。我做了一些testing,工作正常,但是当数据节点死亡然后返回时,问题就来了。 我同时重启2台主机,当容器再次运行时,他们得到一个新的IP。 问题是名称模式给出一个错误,因为它认为它是另一个datanode。 ERROR org.apache.hadoop.hdfs.StateChange: BLOCK* NameSystem.getDatanode: Data node 10.0.0.13:50010 is attempting to report storage ID 3a7b556f-7364-460e-beac-173132d77503. Node 10.0.0.9:50010 is expected to serve this storage. 是可以防止docker分配一个新的IP,而是保持重新启动后的最后一个IP? 或者有任何Hadoopconfiguration的选项来解决这个问题?

HDFS作为cloudera快速入门docker中的卷

对于hadoop和docker我都是新手。 我一直在努力扩展cloudera / quickstart docker镜像docker文件,并希望挂载一个目录表单主机并将其映射到hdfs位置,以便提高性能并保持数据在本地保存。 当我用-v /localdir:/someDir在任何地方挂载音量时,一切正常,但这不是我的目标。 但是当我做-v /localdir:/var/lib/hadoop-hdfs datanode和namenode都无法启动,我得到:“cd / var / lib / hadoop-hdfs:Permission denied”。 当我做-v /localdir:/var/lib/hadoop-hdfs/cache没有权限但datanode和namenode,或者其中之一无法启动泊坞窗图像,我无法find任何有用的信息在日志关于这个原因的文件。 Mayby有人遇到这个问题,或者有其他的解决scheme把hdfs放在docker集装箱外面?

docker kerberos webhdfs AuthenticationException:未经授权

我有一个spring的应用程序。 其中一种方法是使用webhdfs从hdfs中读取一个文件。 当我在想法testing它,它的工作。 但是,在我构build项目并在虚拟机本地或在连接到hdfs的服务器上部署Docker镜像后,我就可以看到。 AuthenticationException: Unauthorized 在我的本地机器上,我必须定期初始化令牌 kinit 用于听力。 如果我不这样做,我会得到同样的错误。 我testing了没有docker在服务器上的应用程序,它也可以。 我认为,docker形象没有看到令牌。 但是我不知道该怎么办。 Kerberos用于安全性。 有什么build议?

通过zeppelin从docker-hadoop-spark-workbench访问hdfs

我已经安装了https://github.com/big-data-europe/docker-hadoop-spark-workbench 然后用docker-compose up 。 我浏览了git自述文件中提到的各种URL,并且都显示出来了。 然后我开始了一个本地apache zeppelin: ./bin/zeppelin.sh start 在zeppelin解释器设置中,我已经导航,然后启动解释器并更新主站点以指向安装了docker的本地群集 主:从local[*]更新为spark://localhost:8080 然后我在笔记本上运行下面的代码: import org.apache.hadoop.fs.{FileSystem,Path} FileSystem.get( sc.hadoopConfiguration ).listStatus( new Path("hdfs:///")).foreach( x => println(x.getPath )) 我在zeppelin日志中得到这个exception: INFO [2017-12-15 18:06:35,704] ({pool-2-thread-2} Paragraph.java[jobRun]:362) – run paragraph 20171212-200101_1553252595 using null org.apache.zeppelin.interpreter.LazyOpenInterpreter@32d09a20 WARN [2017-12-15 18:07:37,717] ({pool-2-thread-2} NotebookServer.java[afterStatusChange]:2064) – Job 20171212-200101_1553252595 is finished, status: ERROR, exception: null, result: %text java.lang.NullPointerException at org.apache.zeppelin.spark.Utils.invokeMethod(Utils.java:38) […]

如何在没有DNS的情况下运行HDFS群集

我正在构build一个本地HDFS开发环境(实际上是hadoop + mesos + zk + kafka)来简化Spark作业的开发并促进本地集成testing。 所有其他组件工作正常,但我有问题与HDFS。 当数据节点尝试连接到名称节点时,我得到一个DisallowedDataNodeException : org.apache.hadoop.hdfs.server.protocol.DisallowedDatanodeException: Datanode denied communication with namenode 与同一问题相关的大多数问题都归结为名称节点上的数据节点的名称parsing,通过etc/hosts文件或通过使用dns静态。 docker的静态parsing不是一个选项,因为我不知道名称节点容器创build时的数据节点。 我想避免创build和维护额外的DNS服务。 理想情况下,我想用–link特性来连接所有的东西。 有没有一种方法来configurationHDFS,使它只使用IP地址工作? 我发现这个属性,并设置为false,但它并没有诀窍: dfs.namenode.datanode.registration.ip-hostname-check (默认值:true) 有没有办法让多节点本地HDFS群集只使用IP地址而不使用DNS?

带有Docker的多节点Hadoop集群

我在基于Docker的环境中处于多节点Hadoop集群的规划阶段。 所以它应该基于一个轻量级易用的虚拟化系统。 当前体系结构(关于文档)包含1个主节点和3个从节点。 该主机使用HDFS文件系统和KVM进行虚拟化。 整个云由Cloudera Manager 。 这个群集上安装了几个Hadoop模块。 还有一个NodeJS数据上传服务。 这一次,我应该使架构的Docker基础。 我已经阅读了几个教程,并有一些意见,但也提出了一些问题。 答:您认为, https://github.com/Lewuathe/docker-hadoop-cluster是我的项目的良好基础? 我也发现了一个官方的形象 ,但它是单节点。 B.如果我想在一个容器中做这个,系统需求如何改变? 这将是很好的,因为这个架构应该在不同的位置工作,所以变化可以很容易地在这些位置之间转移。 这些所谓的克隆之间的同步将是重要的。 C.你有其他的想法,也许最好的做法?

CoreOS和HDFS – 在Linux Containers / Docker中运行分布式文件系统

我需要某种在CoreOS集群上运行的分布式文件系统。 因此,我想在CoreOS节点上运行HDFS。 这可能吗? 我可以看到2个选项; 展开CoreOS – 将HDFS直接安装到CoreOS上 – 并不理想,因为它打破了CoreOS集装箱的整个概念,并且意味着要安装许多附加组件 以某种方式在CoreOS的Docker容器中运行HDFS并设置亲和力 scheme2似乎是最好的方法,但是,有一些潜在的阻滞剂; 如何可靠地将物理磁盘暴露给运行HDFS的Docker容器? 你如何衡量容器的亲和力? 这是如何工作的名称节点等? 干杯。