我正试图通过terraform在GCP中建立一个私有的dataproc集群(1M,2w)。它还应该需要可选的组件,如docker、anaconda和jupyter。以下是我关心的问题,
software_config {
image_version = "1.4.21-debian9"
override_properties = {
"dataproc:dataproc.allow.zero.workers" = "true"
}
optional_components = [ "DOCKER", "ANACONDA", "JUPYTER" ]
} initialization_action {
script = "gs://dataproc-initialization-actions/conda/install-conda-env.sh"
timeout_sec = 500
} gce_cluster_config {
tags = ["env", "test"]
network = "${google_compute_network.dp-network.name}"
internal_ip_only = true
service_account = "name@name.iam.gserviceaccount.com"
}感谢你的投入,
谢谢!
更新:我可以在没有可选组件的情况下旋转一个集群-- software_config中指定的组件。但如果我这样做了,那么它是失败的一个错误,并要求我报告它的错误。
gce_cluster_config {
network = "${google_compute_network.dataproc-network.name}"
internal_ip_only = true
tags = ["env", "staging"]
zone = "${var.zone}"
service_account = "${var.service_account}"
service_account_scopes= [
"https://www.googleapis.com/auth/monitoring",
"useraccounts-ro",
"storage-rw",
"logging-write",
]
}
# We can define multiple initialization_action blocks
initialization_action {
script = "gs://dataproc-initialization-actions/stackdriver/stackdriver.sh"
timeout_sec = 500
}
initialization_action {
script = "gs://dataproc-initialization-actions/jupyter/jupyter.sh"
timeout_sec = 500
}发布于 2020-03-06 19:24:51
不管是1还是2都可以。可能发生的情况是,Dataproc的与API不同步,因此请按照错误的建议提交错误。
对于第三种情况,这里有点混乱--让我来澄清一下。当您授予用户IAM绑定时,用户将可以访问资源(集群)。这与创建群集的方式无关。Editor或Dataproc Editor或自定义角色将允许它们与集群交互。
设置internal_ip_only是一个很好的举措,因为这使得集群无法从公共internet访问,但这也意味着对单个节点的gcloud compute ssh将无法工作。
最后,任何具有与群集交互权限的用户都具有与服务帐户本质上相同的权限。本文解释了这个https://cloud.google.com/dataproc/docs/concepts/iam/dataproc-principals
https://stackoverflow.com/questions/60566567
复制相似问题