GCP Dataproc - Error: Unknown name "optionalComponents" at 'cluster.config': Cannot find field
GCP Dataproc - Error: Unknown name "optionalComponents" at 'cluster.config': Cannot find field
我正在尝试使用 YAML 文件中提到的配置创建 dataproc 集群(使用 import):
我一直使用成功的命令:
$ gcloud beta dataproc clusters import $CLUSTER_NAME --region=$REGION
--source=cluster_conf_file.yaml
后来我尝试添加 HABSE 组件,它是 available optional components 的一部分,使用属性 --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 文件来证明这一点。
我正在尝试使用 YAML 文件中提到的配置创建 dataproc 集群(使用 import):
我一直使用成功的命令:
$ gcloud beta dataproc clusters import $CLUSTER_NAME --region=$REGION
--source=cluster_conf_file.yaml
后来我尝试添加 HABSE 组件,它是 available optional components 的一部分,使用属性 --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 文件来证明这一点。