问题标签 [cluster-mode]

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.

0 投票
5 回答
50532 浏览

python - 我可以在提交 spark 作业时向 python 代码添加参数吗?

我正在尝试使用spark-submit在 spark 集群中执行我的 python 代码。

通常我们spark-submit使用下面的 python 代码运行。

但我想my_python_code.py通过传递几个参数来运行有没有聪明的方法来传递参数?

0 投票
0 回答
1401 浏览

node.js - 在 Pm2 集群模式下,全局变量对于每个线程具有不同的值

我有一个 NodeJs 应用程序,它以 4 个实例在集群模式下运行。地图在文件“pipeline.js”中定义,如下所示:

我在地图中输入了如下值:

在代码中,我必须从 map 中删除该值,但它给出了错误消息:

但是,当朗姆酒只有 1 个实例时,不会出现此错误。

提前致谢 !

0 投票
1 回答
592 浏览

apache-spark - 在 Kerberized 环境中读取 Hive-Hbase 表的 Spark 集群模式问题

错误描述

我们无法在 yarn-cluster 或 yarn-client 模式下执行 Spark 作业,尽管它在本地模式下运行良好。

当我们尝试读取 Kerberized 集群中的 Hive-HBase 表时,会出现此问题。

到目前为止我们所做的尝试

  1. 在 spark submi 中传递 –jar 参数中的所有 HBASE jar

--jars /usr/hdp/current/hive-client/lib/hive-hbase-handler-1.2.1000.2.5.3.16-1.jar,/usr/hdp/current/spark-client/lib/datanucleus-api-jdo-3.2.6.jar,/usr/hdp/current/spark-client/lib/datanucleus-rdbms-3.2.9.jar,/usr/hdp/current/spark-client/lib/datanucleus-core-3.2.10.jar,/usr/hdp/current/hbase-client/lib/hbase-client.jar,/usr/hdp/current/hbase-client/lib/hbase-common.jar,/usr/hdp/current/hbase-client/lib/hbase-protocol.jar,/usr/hdp/current/hbase-client/lib/htrace-core-3.1.0-incubating.jar,/usr/hdp/current/hbase-client/lib/protobuf-java-2.5.0.jar,/usr/hdp/current/hbase-client/lib/guava-12.0.1.jar,/usr/hdp/current/hbase-client/lib/hbase-server.jar

  1. 在 Spark 提交中的文件参数中传递 Hbase 站点和 hive 站点

--files /usr/hdp/2.5.3.16-1/hbase/conf/hbase-site.xml,/usr/hdp/current/spark-client/conf/hive-site.xml,/home/pasusr/pasusr.keytab

  1. 在应用程序内部进行 Kerberos 身份验证。在代码中,我们显式传递了键选项卡

    UserGroupInformation.setConfiguration(configuration) val ugi: UserGroupInformation = UserGroupInformation.loginUserFromKeytabAndReturnUGI(principle, keyTab) UserGroupInformation.setLoginUser(ugi) ConnectionFactory.createConnection(configuration) return ugi.doAs(new PrivilegedExceptionActionConnection { @throws[IOException] def run: Connection = { ConnectionFactory.createConnection(配置) } })

  2. 在 Spark 提交中传递关键选项卡信息

  3. 在 spark.driver.extraClassPath 和 spark.executor.extraClassPath 中传递 HBASE jar

错误日志

0 投票
4 回答
8799 浏览

node.js - 使用 pm2 集群模式表达服务器端口配置问题

问题:我们以集群模式启动 pm2,pm2 启动的进程与 cpu 核心一样多,pm2 也尝试启动与 cpu 核心一样多的节点服务器,但这里的问题是它无法启动尽可能多的服务器,因为它们所有人都尝试在同一个端口 3000 上启动,该端口已被第一个节点服务器占用

我们使用 nginx 并将其代理到 3000 端口。

我们在集群模式下使用 pm2,配置如下:

run start:server:prod 是我们启动服务器的脚本

我们的快递服务器:

请帮忙,这是关键任务!

0 投票
0 回答
340 浏览

pyspark - 在集群模式下通过 spark-submit 的 pyarrow 失败

我有一个简单的 Pyspark 代码

导入 pyarrow fs = pyarrow.hdfs.connect()

如果我在“客户端”模式下使用 spark-submit 运行它,它工作正常,但在“集群”模式下,会引发错误

所有必要的 python 库都安装在我的 Hadoop 集群中的每个节点上。我已经通过在 pyspark 每个节点下单独测试此代码来验证。

但不能通过集群模式下的 spark-submit 使其工作?

有任何想法吗?

尚卡尔

0 投票
0 回答
1423 浏览

apache-spark - 工作节点的控制台输出到 Spark 集群模式下的文件

我正在pyspark使用spark-submit. 作业成功运行。

现在我正在尝试将此作业的控制台输出收集到如下文件中。

spark-submit in yarn-client mode

我能够重定向写入文件的所有控制台输出,/home/$USER/logs/customer_2018_10_26包括所有loglevels and any stacktrace errors

spark-submit in yarn-cluster mode

使用yarn-cluster模式我无法重定向写入文件的控制台输出/home/$USER/logs/customer_2018_10_26

问题是如果我的工作在yarn-client模式下失败,我可以去归档/home/$USER/logs/customer_2018_10_26并轻松查找错误。

但是,如果我的工作在yarn-cluster模式下失败,那么我不会将堆栈跟踪复制到文件/home/$USER/logs/customer_2018_10_26中。我可以调试错误的唯一方法是使用yarn logs.

我想避免使用yarn logs选项相反,我想在使用模式时error stack trace在文件/home/$USER/logs/customer_2018_10_26本身中查看。yarn-cluster

我怎样才能做到这一点?

0 投票
0 回答
328 浏览

python - Confluent-kafka (with kerberos) 在集群模式下 spark-submit python 作业时出错

在集群模式下提交 python 作业时遇到以下错误:

appcache/application_1548793257188​​_803870/container_e80_1548793257188​​_803870_01_000001/environment/lib/python2.7/site-packages/confluent_kafka/ init .py”,第 2 行,从 .cimpl 导入(消费者,# noqa ImportError: librdkafka.so.1:文件:没有这样的文件或目录

librdkafka 和其他 python 依赖项仅安装在边缘节点上。在提交之前,我创建了一个虚拟环境并通过以下方式 pip install confluent-kafka :

之后,我创建 environment.tar.gz 并使用 --archives 将其传递给 spark-submit

我试图设置这样的火花属性:

但不幸的是它没有工作!

有人遇到同样的问题吗?

0 投票
0 回答
91 浏览

apache-spark - 可以在运行时提交火花后向主/工作节点添加额外的 jar 吗?

我正在编写一个服务,该服务在来自 spark 提交的长时间运行的 Spark 应用程序上运行。到初始 spark 提交时,该服务不知道要在类路径上放置哪些 jar,因此我无法使用--jars. 然后,此服务将侦听可能包含额外 jar 的请求,然后我想将其加载到我的 spark 节点上,以便可以使用这些 jar 完成工作。

我的目标是只调用一次 spark 提交,一开始就启动我的服务。然后我试图通过创建一个新的SparkConf并从中构建一个新SparkSession的来将请求中的 jar 添加到 spark 会话中,例如

我尝试了这种方法,但看起来罐子没有被加载到执行程序类路径中,因为我的工作无法识别罐子中的 UDF。我现在正在尝试在 Spark 客户端模式下运行它。

  1. 有没有办法在调用 spark-submit 之后添加这些 jars 并仅更新现有的 Spark 应用程序,或者是否只能使用包含这些 jars 的另一个 spark-submit --jars
  2. 在这种情况下使用集群模式与客户端模式是否重要?
0 投票
1 回答
555 浏览

babeljs - 如何在 pm2 集群模式下使用 babel 解释器

我的 ES 代码出现错误,因为当我在 pm2 集群模式下运行应用程序时,babel-node 不起作用,但在 fork 模式下,它运行成功,这里--interpreter不能在集群模式下工作,(-i)因为到它的工作原理...,那么我应该怎么做才能运行我使用最新版本的 ECMAScript 的应用程序呢?

我的错误是

我的脚本

0 投票
1 回答
245 浏览

apache-spark - 以集群模式 SPARK 写入本地 FS

对于 Spark 作业,我们正在尝试添加一个日志框架,该框架在本地 FS 上创建自定义日志文件。在客户端模式下,一切都很好,文件是由启动 spark-submit 的用户在本地 FS 上创建的。但是在集群模式下,本地文件是使用没有权限写入本地目录的用户纱线创建的......

是否有任何解决方案可以在不将权限更改为 777 的情况下与提交作业的用户一起以集群模式写入本地文件?在这种情况下集群模式是否更好(我们在 PROD 环境中),知道作业是从集群的一个节点启动的(因此不存在网络问题)。

谢谢你。