Я пытаюсь развернуть частный кластер данных (1 м, 2 Вт) в GCP через terraform. Также должны потребоваться дополнительные компоненты, такие как docker, anaconda и jupyter. Ниже приведены мои опасения,
- Я пытаюсь добавить image_version и optional_components в software_config, как показано ниже. Это выполнимо?
software_config {
image_version = "1.4.21-debian9"
override_properties = {
"dataproc:dataproc.allow.zero.workers" = "true"
}
optional_components = [ "DOCKER", "ANACONDA", "JUPYTER" ]
}
- Если вышеперечисленное невозможно, могу ли я использовать initialize_actions, как показано ниже?
initialization_action {
script = "gs://dataproc-initialization-actions/conda/install-conda-env.sh"
timeout_sec = 500
}
- Как мне назначить разрешения / ключи для узлов, которые запускаются через terraform. так что пользователи могут получить доступ к узлам с его помощью после подготовки. Я пытался использовать, как показано ниже,
gce_cluster_config {
tags = ["env", "test"]
network = "${google_compute_network.dp-network.name}"
internal_ip_only = true
service_account = "[email protected]"
}
Цените ваш вклад,
Спасибо!
Обновление: я могу развернуть кластер без дополнительных компонентов, указанных в файле 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
}