在此处遵循 gcp 数据流的快速入门
在此处执行示例脚本时遇到以下错误
使用此命令
declare -r PROJECT="beam-test"
declare -r BUCKET="gs://my-beam-test-bucket"
echo
set -v -e
python -m apache_beam.examples.wordcount
--project $PROJECT
--job_name $PROJECT-wordcount
--runner DataflowRunner
--staging_location $BUCKET/staging
--temp_location $BUCKET/temp
--output $BUCKET/output
这会导致此错误:
http_response.request_url, method_config, request)
apitools.base.py.exceptions.HttpError: HttpError accessing <https://dataflow.googleapis.com/v1b3/projects/beam-test/locations/us-central1/jobs?alt=json>: response: <{'status': '403', 'content-length': '284', 'x-xss-protection': '1; mode=block', 'x-content-type-options': 'nosniff', 'transfer-encoding': 'chunked', 'vary': 'Origin, X-Origin, Referer', 'server': 'ESF', '-content-encoding': 'gzip', 'cache-control': 'private', 'date': 'Fri, 31 Mar 2017 15:52:54 GMT', 'x-frame-options': 'SAMEORIGIN', 'alt-svc': 'quic=":443"; ma=2592000; v="37,36,35"', 'content-type': 'application/json; charset=UTF-8'}>, content <{
"error": {
"code": 403,
"message": "(f010d95b3e221bbf): Could not create workflow; user does not have write access to project: beam-test Causes: (f010d95b3e221432): Permission 'dataflow.jobs.create' denied on project: 'beam-test'",
"status": "PERMISSION_DENIED"
我已经为该项目启用了数据流 api。并且我已经授权 gcloud cli 使用项目的所有者帐户(我假设该帐户具有完全访问权限(。
如何以及在何处启用写入权限?
将$PROJECT=project-name
更改为$PROJECT=project-id
您是否尝试过运行gcloud auth login
以确保您拥有有效的凭据?
如果是,则默认云项目可能与运行数据流的项目不同。要更改默认项目,可以运行 gcloud init
。
如果这不能解决它,请告诉我。