独立 custer 上有多少 RDD 分区和从属

How many RDD Partitions and Slaves on a Standalone custer

这可能是一个基本问题,但我有点困惑。

我在 4 核 ubuntu 机器上创建了一个独立集群,其中有一个主服务器和一个从服务器。我打算 运行 一个 spark streaming 应用程序。现在我的问题是:

Q1.what 将是将要创建的 DStream 的分区数?

Q2。另外,我可以在一台机器上创建两个奴隶吗?如果是怎么办?

谢谢

考虑到您已经正确安装了 spark。

启动 Spark 主机:

要在您的本地主机上启动 Spark 主机:

$> ./sbin/start-master.sh
starting org.apache.spark.deploy.master.Master, logging to /home/eliasah/utils/spark/spark-1.5.1-bin-hadoop2.6/sbin/../logs/spark-eliasah-org.apache.spark.deploy.master.Master-1-eliasah-XPS-L501X.out

一旦你开始了你的主人,你可以在你的 http://localhost:8080/ 上检查 Spark UI 。您会看到以下内容:

开始奴隶工人

spark master 需要无密码 ssh 登录到它的 slaves,因为我们正在构建一个独立的 Spark 集群,我们需要一个无密码的本地主机连接。

如果您的私钥有密码,您需要生成一个新密钥并将其 public 部分复制到 ~/.ssh/authorized_keys。 (这部分写回答会比较长,略过,相信你已经够大了)

这里是有趣的地方:

您使用提供的模板创建 spark-env.sh 文件:

cp ./conf/spark-env.sh.template ./conf/spark-env.sh

需要在spark-env.sh文件末尾指定worker数量

echo "export SPARK_WORKER_INSTANCES=4" >> ./conf/spark-env.sh

你现在需要做的就是启动spark-slaves :

./sbin/start-slaves.sh
localhost: starting org.apache.spark.deploy.worker.Worker, logging to /home/eliasah/utils/spark/spark-1.5.1-bin-hadoop2.6/sbin/../logs/spark-eliasah-org.apache.spark.deploy.worker.Worker-1-eliasah-XPS-L501X.out
localhost: starting org.apache.spark.deploy.worker.Worker, logging to /home/eliasah/utils/spark/spark-1.5.1-bin-hadoop2.6/sbin/../logs/spark-eliasah-org.apache.spark.deploy.worker.Worker-2-eliasah-XPS-L501X.out
localhost: starting org.apache.spark.deploy.worker.Worker, logging to /home/eliasah/utils/spark/spark-1.5.1-bin-hadoop2.6/sbin/../logs/spark-eliasah-org.apache.spark.deploy.worker.Worker-3-eliasah-XPS-L501X.out
localhost: starting org.apache.spark.deploy.worker.Worker, logging to /home/eliasah/utils/spark/spark-1.5.1-bin-hadoop2.6/sbin/../logs/spark-eliasah-org.apache.spark.deploy.worker.Worker-4-eliasah-XPS-L501X.out

您还可以查看 Spark UI :

我认为这回答了你的第二个问题。

关于第一个问题,正如我所说,您需要根据您的硬件配置和性能指标来对分区数量进行基准测试。没有秘方!

希望对您有所帮助!