在使用gs://作为默认文件系统创建dataproc集群时,我收到“DataNodes reporting的数量不足”错误。下面是我正在使用的dataproc cluster命令。
gcloud dataproc clusters create cluster-538f --image-version 1.2 \
--bucket dataproc_bucket_test --subnet default --zone asia-south1-b \
--master-machine-type n1-standard-1 --master-boot-disk-size 500 \
--num-workers 2 --worker-machine-type n1-standard-1 --worker-boot-disk-size 500 \
--scopes 'https://www.googleapis.com/auth/cloud-platform' --project delcure-firebase \
--properties 'core:fs.default.name=gs://dataproc_bucket_test/'我检查并确认我正在使用的存储桶能够在存储桶中创建默认文件夹。


发布于 2018-09-11 05:56:57
正如Igor所建议的,Dataproc不支持GCS作为默认文件系统。我还建议取消设置此属性。请注意,可以将fs.default.name属性传递给各个作业,并且可以很好地工作。
发布于 2018-09-15 08:57:50
尝试访问文件系统(HdfsClientModule)时出现错误。因此,我认为Google Cloud Storage可能没有Hadoop所需的特定功能,并且在创建了一些文件夹(第一张图像)后创建失败。
正如其他人之前提到的,最好放弃使用GCS作为默认文件系统的想法,将HDFS工作留给Dataproc。尽管如此,您仍然可以利用云存储来获得数据持久性、可靠性和性能,因为请记住,当集群关闭时,HDFS中的数据会被删除。
1.-从Dataproc节点,您可以通过hadoop命令访问数据,以移入和移出数据,例如:
hadoop fs -ls gs://CONFIGBUCKET/dir/file
hadoop distcp hdfs://OtherNameNode/dir/ gs://CONFIGBUCKET/dir/file 2.-要从Spark或任何Hadoop应用程序访问数据,只需使用gs://前缀即可访问您的存储桶。
此外,如果Dataproc connector安装在本地,它可以帮助将HDFS数据移动到云存储,然后从Dataproc集群访问它。
https://stackoverflow.com/questions/52248139
复制相似问题