我正在尝试使用 YAML 文件中提到的配置创建 dataproc 集群(使用 import ):
我已经成功使用的命令:
$ gcloud beta dataproc clusters import $CLUSTER_NAME --region=$REGION
--source=cluster_conf_file.yaml
后来我尝试添加 HABSE 组件,它是 available optional components 的一部分使用属性--可选组件
:
$ gcloud beta dataproc clusters import $CLUSTER_NAME --optional-components=HBASE --region=$REGION
--source=cluster_conf_file.yaml
(引用文档: https://cloud.google.com/dataproc/docs/concepts/components/hbase#installing_the_component )
这导致了以下错误:
ERROR: (gcloud.beta.dataproc.clusters.import) unrecognized arguments: --optional-components=HBASE
然后我尝试通过引用 this 在 YAML 文件中将属性 --optional-components
添加为 optionalComponents
(而不是通过命令行传递)文档。
示例 YAML:
config:
endpointConfig:
enableHttpPortAccess: BOOLEAN_VALUE
configBucket: BUCKET_NAME
gceClusterConfig:
serviceAccount: SERVICE_ACCOUNT
subnetworkUri: SUBNETWORK_URI
tags:
- Tag1
- TAG2
optionalComponents: <---- Attribute causing error
- HBASE
softwareConfig:
imageVersion: IMAGE_VERSION
properties:
PROPERTY: VALUE
.
.
.
masterConfig:
diskConfig:
bootDiskSizeGb: SIZE
bootDiskType: TYPE
machineTypeUri: TYPE_URI
numInstances: COUNT
这导致了以下错误:
ERROR: (gcloud.dataproc.clusters.import) INVALID_ARGUMENT: Invalid JSON payload received. Unknown name "optionalComponents" at 'cluster.config': Cannot find field.
- '@type': type.googleapis.com/google.rpc.BadRequest
fieldViolations:
- description: "Invalid JSON payload received. Unknown name \"optionalComponents\"\
\ at 'cluster.config': Cannot find field."
field: cluster.config
有办法解决这个问题吗?
最佳答案
optionalComponents
应位于 config.softwareConfig
下:
config:
...
softwareConfig:
imageVersion: IMAGE_VERSION
optionalComponents:
- ZOOKEEPER
- HBASE
您可以通过首先创建一个包含可选组件的集群,然后将其导出到 YAML 文件来证明这一点。
关于google-cloud-platform - GCP Dataproc - 错误 : Unknown name "optionalComponents" at 'cluster.config' : Cannot find field,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64401476/