Apache Beam DirectRunner与PubSub模拟器不工作



以前,我没有麻烦让波束DirectRunner与PubSub模拟器一起工作。然而,最近它不再工作了。

我已经设置了一些东西:

PubSub模拟器:

  • gcloud beta emulators pubsub start --project=test-project --host-port=127.0.0.1:8088
  • gcloud beta emulators pubsub env-init

当我使用这个repo中的代码片段时,我可以在这个模拟项目中很好地创建主题和订阅。

然而,当在我的(Python) Beam管道中使用DirectRunner (runner="DirectRunner")时,跑步者一直试图在Google Cloud中找到资源,而不是使用本地资源。因此它说订阅x不存在。撤销默认凭据会使管道失败,并抱怨默认身份验证完全丢失。在PipelineOptions中设置--no-auth也没有帮助。我已经在DataFlow使用的终端中运行了gcloud beta emulators pubsub env-init命令。我错过什么了吗?

我尝试设置以下选项,但没有成功:

"--no_auth", 
"--runner=DirectRunner"
"--pubsubRootUrl=http://127.0.0.1:8088",
"--project=test-project",
"--pubsub_root_url=http://127.0.0.1:8088",

我尝试撤销默认凭据。我试着取消设置GOOGLE_APPLICATION_CREDENTIALS。我试着设置CLOUDSDK_API_ENDPOINT_OVERRIDES_PUBSUB=127.0.0.1:8088。还是没有运气

天哪,$(gcloud beta emulators pubsub env-init)不见了。

最新更新