Я пытаюсь использовать SDK Pulumi Javascript для создания кластера HDInsight Spark в Azure. Я следил за руководствами Pulumi по созданию кластера GCP Kubernetes «привет мир» и просмотрел примеры JavaScript в репозитории Pulumi Примеры на github, но мне не удалось успешно создать кластер.
Я несколько раз пытался изменить свои операторы export
на основе примеров из репозитория Pulumi, но всегда получаю сообщение об ошибке «необработанное исключение», за которым следует трассировка стека, когда я запускаю pulumi up
внутри корневого каталога проекта Pulumi. До сих пор я пробовал использовать следующие операторы экспорта.
//attempt 1
export const sparkClusterName = sparkCluster.name
//attempt 2
export const sparkClusterOutput = sparkCluster.output
//attempt 3
export const sparkEndpoint = sparkCluster.httpsEndpoint
Я использую код Visual Studio в качестве своей IDE. Запуск всего кода на MacBook Pro с Mojave с использованием Pulumi версии 0.17.11 с использованием узла версии 12.1.0, оба инструмента azure cli и pulumi cli установлены.
Моя index.js
программа выглядит следующим образом:
"use strict";
const pulumi = require("@pulumi/pulumi");
const azure = require("@pulumi/azure");
// Retrieve an Azure Resource Group
const resourceGroup = pulumi.output(azure.core.getResourceGroup({
name: "MyResourceGroup",
}));
//Create Spark Cluster
const sparkCluster = new azure.hdinsight.SparkCluster("testSparkCluster", {
clusterVersion: "3.6",
componentVersion: {
spark: "2.3",
},
gateway: {
enable: true,
password: "laDK#21",
username: "USERname",
},
location: resourceGroup.apply(resourceGroup => resourceGroup.location),
name: "example-hdisparkcluster",
resourceGroupName: resourceGroup.apply(resourceGroup => resourceGroup.name),
roles: {
headNode: {
password: "AAAlllddck11122$$3",
username: "USerNameladkfj",
vmSize: "Standard_A3",
},
workerNode: {
password: "asdlfaDDF143k#@#",
targetInstanceCount: 3,
username: "USernaemls",
vmSize: "Standard_A3",
},
zookeeperNode: {
password: "ASDKLlkjjj##@@323",
username: "USERname2323",
},
},
storageAccounts: [{
isDefault: true,
}],
tier: "Standard",
});
// Export the spark cluster
export const sparkClusterName = sparkCluster.name;
//export const sparkName = sparkCluster.output
//export const sparkEndpoint = sparkCluster.httpsEndpoint
Ожидаемый результат должен быть успешным, если пулуми CLI покажет новый стек и создаваемый кластер Spark (а затем сможет просмотреть кластер на портале Azure). Вместо этого выдается следующая ошибка и трассировка стека:
Previewing update (dev):
Type Name Plan Info
+ pulumi:pulumi:Stack HDInsight_Spark_Cluster-dev create 1 error
Diagnostics:
pulumi:pulumi:Stack (HDInsight_Spark_Cluster-dev):
error: Running program '/Users/workspace/Pulumi Workspace/Pulumi HDInsight Testing' failed with an unhandled exception:
/Users/workspace/Pulumi Workspace/Pulumi HDInsight Testing/index.js:50
export const sparkClusterName = sparkCluster.name;
^^^^^^
SyntaxError: Unexpected token export
at Module._compile (internal/modules/cjs/loader.js:703:23)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:770:10)
at Module.load (internal/modules/cjs/loader.js:628:32)
at Function.Module._load (internal/modules/cjs/loader.js:555:12)
at Module.require (internal/modules/cjs/loader.js:666:19)
at require (internal/modules/cjs/helpers.js:16:16)
at /Users/workspace/Pulumi Workspace/Pulumi HDInsight Testing/node_modules/@pulumi/pulumi/cmd/run/run.js:195:20
at Stack.<anonymous> (/Users/workspace/Pulumi Workspace/Pulumi HDInsight Testing/node_modules/@pulumi/pulumi/runtime/stack.js:76:27)
at Generator.next (<anonymous>)
at fulfilled (/Users/workspace/Pulumi Workspace/Pulumi HDInsight Testing/node_modules/@pulumi/pulumi/runtime/stack.js:17:58)
Я новичок в использовании Azure и имею только базовое представление о Javascript, так как в основном я работаю с Java и C / C ++. Моя цель для этой программы - просто помочь мне использовать и понять работу с HDInsight с помощью Pulumi.