是否可以将Google Cloud Platform Dataflow作业的区域更改为欧洲?
我已将管道区域设置为europe-west1-d
,但我无法更改为作业本身的区域。
我试图更改管道选项中的区域,但这会导致错误,只有默认区域正在工作。
pipeline_options.view_as(GoogleCloudOptions).region = 'europe-west1'
"error": {
"code": 400,
"message": "(ff50231266257fc7): The workflow could not be created, since it was sent to an invalid or unreleased region. Please resubmit with a valid region.",
"status": "INVALID_ARGUMENT"
}
使用命令europe-west1
时会列出 gcloud compute regions list
答案 0 :(得分:1)
是的,Cloud Dataflow Regional Endpoints允许您将Dataflow作业的区域更改为欧洲。
区域端点是全新的云数据流功能。在发布区域端点之前,可以指定实验region
选项但未使用。出现此错误消息是因为在发布功能之前指定了region
选项。
您的案例(欧洲):
您可以提交仅包含Regional Endpoint specified的作业(例如europe-west1
= europe-west1
),该作业将在region
中进行管理和运行区域;当您省略区域时,Cloud Dataflow将自动为此区域中的Dataflow工作人员选择区域。
您还可以提交同时指定了区域端点和区域的作业(例如europe-west1
= zone
和europe-west1d
= europe-west1
),以及该作业将在europe-west1d
区域进行管理,数据流工作人员在input
区域内运行。
答案 1 :(得分:1)
使用datafkow sdk 2.1.0,你可以做到这一点。
您可以使用
pipelineOptions.setWorkerMachineType(pipelineConfigProperties.get("worker.machine.type"));
pipelineOptions.setNetwork("dataflow.network");
pipelineOptions.setUsePublicIps(false);
pipelineOptions.setZone("dataflow.zone");
pipelineOptions.setSubnetwork("dataflow.subnetwork");
pipelineOptions.setRegion("dataflow.region");
这已经过测试,您肯定会在2.1.0
中执行此操作