问题标签 [hdp]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
azure - 如何将数据从本地 HDFS 迁移到 Azure 存储
我想将数据从我的本地本地 HDFS 服务器移动到我的 Azure HDinsight 群集。
我尝试了 distcp 命令,但它不了解数据湖存储路径。
hadoop - 如何重新平衡数据节点磁盘上的 HDFS 数据大小
我们有 HDP 的生产集群 - 2.6.4 版本
我们有 186 台数据节点机器(戴尔机器有 10 个磁盘)
我们尝试重新平衡磁盘上的数据,以便磁盘使用相同的大小但没有成功
感觉2.6.4版本没有支持重新平衡的工具!!!
正如我在每台数据节点机器上提到的,我们有 10 个磁盘,而每个磁盘为 1.8T
并且一些磁盘已使用 55%
其中一些仅使用了 1%
所以我们有非平衡磁盘(它就像一些磁盘没用),但是为什么 HDFS 没有平衡所有磁盘上的数据?
我的问题 - 从哪个 HDP 版本,我们可以重新平衡数据节点磁盘?
剂量2.6.5版本支持重新平衡吗?
还是从 3.X 开始?
请指教,我们能做什么?
正如我所提到的,这是一个非常大的集群,并且
我们有一种不好的感觉,即当前的 HDP 版本( 2.6.4 )不支持任何重新平衡 - 这是真的吗?
hadoop-yarn - YARN 作业访问的资源似乎比 Ambari YARN 经理报告的要少
尝试运行 YARN 进程并出现错误时感到困惑。查看 ambari UI YARN 部分,看到... (注意它说 60GB 可用)。然而,当尝试运行 YARN 进程时,出现错误,表明可用资源少于 ambari 中报告的资源,请参阅...
注意
错误:无法启动任何 H2O 节点;请联系您的 YARN 管理员。
造成这种情况的一个常见原因是请求的容器大小 (5.5 GB) 超过了以下 YARN 设置:
然而,我已经配置了 YARN
我们可以看到容器和节点资源限制都高于请求的容器大小。
尝试使用默认的 mapreduce pi 示例进行更重的计算
并检查 RM UI,我可以看到至少在某些情况下可以使用 RM 的所有 60GB 资源(请注意图像底部的 61440MB)
所以有一些关于这个问题的事情我不明白
队列“默认”近似利用率:使用 5.0 / 60.0 GB,使用 1 / 12 个 vcore
我想使用 YARN 表面上可以提供的全部 60GB(或者至少可以选择,而不是抛出错误)。会认为应该有足够的资源让 4 个节点中的每一个都为进程提供 15GB(> 请求的 4x5GB=20GB)。我在这里错过了什么吗?请注意,我只有 YARN 的默认根队列设置?
----- 节点 -----
节点:http://HW03.ucera.local:8042机架:/default-rack,正在运行,使用 1 个容器,使用 5.0 / 15.0 GB,使用 1 / 3 个 vcore
节点:http://HW04.ucera.local:8042机架:/default-rack,正在运行,使用了 0 个容器,使用了 0.0 / 15.0 GB,使用了 0 / 3 个 vcore
……
为什么在出错之前只使用一个节点?
从这两件事看来,15GB 节点限制和 60GB 集群限制似乎都没有被超过,那么为什么会抛出这些错误呢?我在这里误解了这种情况怎么办?可以做些什么来修复(再次,希望能够使用所有明显的 60GB YARN 资源来完成这项工作而不会出错)?修复的任何调试建议?
更新:
问题似乎与如何正确更改 HDP / ambari-created 用户的 uid 有关?并且让用户存在于节点上并拥有具有正确权限的目录这一事实(正如我从Hortonworks 论坛帖子hdfs://user/<username>
中被引导相信的那样)不足以被确认为集群上的“存在”。
为所有集群节点上存在的不同用户(在本例中为 Ambari 创建的 hdfs 用户)运行 hadoop jar 命令(即使 Ambari 创建的该用户在节点之间具有不同的 uid(如果这是一个问题,则为 IDK))并且具有一个hdfs://user/hdfs
目录,发现 h2o jar 按预期运行。
我最初的印象是用户只需要存在于正在使用的任何客户端机器上,并且需要 hdfs://user/ 目录(请参阅https://community.cloudera.com/t5/Support-Questions/Adding -a-new-user-to-the-cluster/mp/130319/highlight/true#M93005)。一个令人担忧/令人困惑的事情是,Ambari 显然在具有不同 uid 和 gid 值的各种集群节点上创建了 hdfs 用户,例如......
这似乎不是它应该是的样子(只是我怀疑使用过 MapR(它要求 uid 和 gids 在节点之间是相同的)并在这里查看:https ://www.ibm.com/support /knowledgecenter/en/STXKQY_BDA_SHR/bl1adv_userandgrpid.htm)。请注意,HW05 是后来添加的节点。如果这在 HDP 中实际上没问题,我计划只添加我实际缩进的用户,以便在具有任意 uid 和 gid 值的所有节点上使用 h2o。对此有什么想法吗?任何支持为什么这是正确或错误的文档,您可以将我链接到?
在发布作为答案之前,将对此进行更多研究。我认为基本上需要进一步澄清 HDP 何时认为用户“存在”在集群中。
hadoop - HortonWorks HDP 2.6.5 或 2.5.0:显示“我的用户 Web 根”而不是 AMBARI
我正在尝试学习关于 Hadoop 的 Udemy 课程,所以我还不了解 Hadoop;)
我有
- 在我的macbook(10.14.5)上下载了HDP_2.6.5_virtualbox_180626.ova(我也用2.5.0版本测试过)
- 双击打开最新版本的virtualbox(6.0.10),
- 进口
- 将 RAM 设置为 10GB(超过 32GB)
- 运行
- 我可以看到它正在解包,然后是两个 URL(一个用于 hadoop 的欢迎屏幕,一个用于 web ssh)。
打开第一个 URL,Hortonworks 欢迎页面,如果我单击指向 AMBARI 的链接,我会得到一个带有“My User Web Root”的页面(很可能是默认的 apache 或 nginx 页面)。
好像它没有将主机名(127.0.0.1)映射到正确的虚拟目录。我搜索了日志并没有找到与该问题相关的任何内容。(有一些错误,但我无法判断它是否是“正常错误”)
但是,高级链接可以正常工作,并且 ssh 网页可以正常工作。Ambari、Atlas 和 Workflow Manager 不工作(Atlas 的网关为 502 错误,其他两个网关为“My User Web Root”)。
关于如何解决这个问题的任何想法?
与 2.5.0 相同的行为,我认为这可能是 VirtualBox 的问题?(因为显然它适用于很多参加这门课程的人)。
apache-spark - 如何使用 Java 从 Apache Spark 2.X 连接到 Phoenix
令人惊讶的是,在网络上找不到任何JAVA
关于此的最新文档。整个 World Wild Web 中的 1 或 2 个示例太旧了。我想出了以下失败并出现错误“ Module not Found org.apache.phoenix.spark
”,但该模块是 Jar for Sure 的一部分。我认为以下方法不正确,因为它是从不同示例中复制粘贴的,并且加载这样的模块有点反模式,因为我们已经将包作为 jar 的一部分。请告诉我正确的方法。
注意-请做 Scala 或 Phython 示例,它们很容易通过网络获得,
我正在尝试将其运行为
我得到以下错误 -
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/hadoop/hbase/HBaseConfiguration
hadoop - 用户是否需要跨所有节点存在才能被hadoop集群/HDFS识别?
在 MapR hadoop 中,为了让用户能够访问 HDFS 或将 YARN 用于程序,它们需要存在于集群中的所有节点(具有相同的 uid 和 gid),这包括不充当任何一个的客户端节点数据节点或控制节点(MapR 并没有真正的名称节点的概念)。Hortonworks HDP 也一样吗?
hdfs - 如何手动/以编程方式将任意数据文件添加到 apache atlas?
有没有办法将 HDFS 中的任意数据添加到 apache atlas?安装了 HDP 3.1 进行评估后,这似乎是不可能的(例如,只有数据被放入、放置在配置单元表中,或其他一些狭窄的地图集可见操作集)。我们有引入各种形式的平面文件数据(例如 parquet、tsv 等)的 ETL 流程,而对于其中的任何一个,我都没有弄清楚如何出现在 atlas 上。有没有办法做到这一点?基本上,希望这些数据可以被 Ranger 标记并可以通过 Atlas 发现。关于如何做到这一点的任何想法?
hdp - 在 Atlas 实体之间添加关系的简单示例?
使用 REST API 在 apache atlas 中添加实体之间的关系的正确方法是什么?查看 REST API 的文档,我发现很难说出某些字段的含义,哪些是必需的(以及如果不输入会发生什么),或者应该是什么默认值(因为示例使用什么似乎是占位符值(例如,什么是provenanceType
或propagateTags
字段似乎期望某种枚举值,但从不指定有效选项))。
有人可以提供任何例子来说明这在实际/有效值中会是什么样子吗?例如。如果已经将 2 个实体 E1 和 E2 添加到 Atlas 并希望在两者之间建立关系,则想做类似...
试
不起作用,并且不确定如何处理错误消息。即使是简单的例子
引发类似的无信息错误
检查 atlas 主机服务器上的登录/var/logs/atlas/application.log
,我可以看到另一个无信息的错误消息......
请注意,为了获得关系链接所需的 guid,即使 Hortonworks 似乎也只能提供一个糟糕的解决方案。
这里可能出了什么问题?有没有比那些链接到的更好的文档来理解 API?