我为Dataproc指定了一个NodeInitializationAction,如下所示:
ClusterConfig clusterConfig = new ClusterConfig();
clusterConfig.setGceClusterConfig(...);
clusterConfig.setMasterConfig(...);
clusterConfig.setWorkerConfig(...);
List<NodeInitializationAction> initActions = new ArrayList<>();
NodeInitializationAction action = new NodeInitializationAction();
action.setExecutableFile("gs://mybucket/myExecutableFile");
initActions.add(action);
clusterConfig.setInitializationActions(initActions);然后稍后:
Cluster cluster = new Cluster();
cluster.setProjectId("wide-isotope-147019");
cluster.setConfig(clusterConfig);
cluster.setClusterName("cat");最后,我使用集群调用dataproc.create操作。我可以看到正在创建集群,但是当我将ssh放入主计算机(在us-central1 1-f中的“cat-m”)时,我没有看到我指定的脚本被复制或运行的任何证据。
这就引出了我的问题:
提前谢谢。
发布于 2016-12-22 21:24:37
Dataproc为init操作提供了许多保证:
/etc/google-dataproc/startup-scripts/dataproc-initialization-script-0中--bucket选项指定的桶,或由Dataproc自动生成的桶)中捕获。假设您的集群名为my-cluster,如果您通过gcloud compute instances describe my-cluster-m描述主实例,准确的位置是dataproc-agent-output-directory元数据键。/var/log/google-dataproc-agent-0.log中的Dataproc代理日志并查找来自BootstrapActionRunner的条目https://stackoverflow.com/questions/41290662
复制相似问题