我正在尝试将我的Dataflow(Java SDK 2.0.0)管道的区域设置为australia-southeast1-a
,australia-southeast1-b
或australia-southeast1-c
之一(即其中一个区域)悉尼):
public static void main(String... args) {
DataflowPipelineOptions options = PipelineOptionsFactory
.fromArgs(args)
.withValidation()
.as(DataflowPipelineOptions.class);
options.setRunner(DataflowRunner.class);
options.setJobName("sydney-dataflow-pipeline");
options.setStagingLocation("gs://<redacted>/jars");
options.setTempLocation("gs://<redacted>/jars");
options.setRegion("australia-southeast1-a"); //<<--trying to set region to Sydney
options.setMaxNumWorkers(3);
Pipeline pipeline = Pipeline.create(options);
pipeline.apply
[..]
pipeline.run(); //run it
}
但是,工作人员池中的GCE实例在美国地区(us-central1-f
)继续开放:
为什么工人没有在指定地区开火?
答案 0 :(得分:2)
Javadoc将此方法列为@Hidden
和@Experimental
,并附注:
&#34; Cloud Dataflow服务尚未遵循此设置。然而, 一旦添加了服务支持,该SDK的用户就能够 控制该地区。&#34;
setZone
方法仍可用于控制工作人员的位置。