Krz*_*ski 5 google-cloud-platform google-cloud-dataproc sparklyr
我是 Spark 和 GCP 的新手。我试图连接到它
sc <- spark_connect(master = "IP address")
Run Code Online (Sandbox Code Playgroud)
但它显然无法工作(例如,没有身份验证)。
我该怎么做?是否可以从 Google Cloud 外部连接到它?
从集群外部连接到 Dataproc 上的 Spark 存在两个问题:配置和网络访问。它通常有点困难并且不完全支持,所以我建议在集群内使用sparklyr。
Google Cloud Dataproc 在 Hadoop YARN 上运行 Spark。您实际上需要使用yarn-cluster:
sc <- spark_connect(master = 'yarn-client')
Run Code Online (Sandbox Code Playgroud)
但是,您还需要yarn-site.xml在$SPARK_HOME目录中将 Spark 指向正确的主机名。
虽然您可以使用 Google Compute Engine 网络上的防火墙规则打开 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')
Run Code Online (Sandbox Code Playgroud)
我相信 RStudio Server 支持 SOCKS 代理,可以按照此处所述进行设置,但我对 RStudio 不是很熟悉。
我在 Dataproc for R 笔记本上使用Apache Zeppelin,但它会自动加载 SparkR,我认为目前 SparkR 不能很好地与 Sparklyr 配合使用。
| 归档时间: |
|
| 查看次数: |
1254 次 |
| 最近记录: |