我是Spark和GCP的新手。我试图用
连接到它sc <- spark_connect(master = "IP address")
但它显然无法工作(例如没有身份验证)。
我该怎么做?是否可以从Google Cloud外部连接到它?
答案 0 :(得分:2)
从群集外部连接到Dataproc上的Spark有两个问题:配置和网络访问。它通常有点困难而且不完全支持,所以我建议在群集中使用sparklyr。
Google Cloud Dataproc在Hadoop YARN上运行Spark。您实际上需要使用yarn-cluster:
sc <- spark_connect(master = 'yarn-client')
但是,您还需要yarn-site.xml
目录中的$SPARK_HOME
将Spark指向正确的主机名。
虽然您可以使用Google Compute Engine网络上的firewall rules为您的IP地址打开端口,但这并不是一种良好的安全措施。您还需要配置YARN以使用实例的外部IP地址,或者有办法解析计算机上的主机名。
sparklyr可以通过SSH连接到主节点并运行:
来安装和运行R REPL$ # Needed for the curl library
$ sudo apt-get install -y libcurl4-openssl-dev
$ R
> install.packages('sparklyr')
> library(sparklyr)
> sc <- spark_connect(master = 'yarn-client')
我相信RStudio Server支持SOCKS代理,可以设置as described here,但我对RStudio不太熟悉。
我将Apache Zeppelin on Dataproc用于R笔记本电脑,但它会自动加载SparkR,我认为此时我并不认为它可以与闪光灯配合使用。