使用Azure Cli使用P30高级磁盘和ssh公钥部署HDInsight Kafka群集

时间:2019-02-26 14:42:58

标签: hdinsight azure-cli

您好,我正在尝试使用 Azure Cli 部署HDInsight kafka集群,但是我遇到了2个问题。

1。 SSH公钥认证

当我指定--ssh-public-key选项并传递公钥时 我收到以下错误:

  

“ password”和“ sshProfile”都不能为空,“ password”和“   “ sshProfile”不能为null,“ password”和“ sshProfile”都不能为   空

2。用于工作节点的高级P30磁盘

我尝试将--workernode-size选项与值Premuim_DS12_v2一起使用(因为这是使用Azure门户时调用的节点)。 Cli产生了误导性的错误响应:

  

指定的数据磁盘数量1超过了   大小为Premium_DS12_V2的虚拟机,该虚拟机为0。

原来,这不是正确的虚拟机大小。所以我改用Standard_DS12_v2

集群已部署,但使用Standard S30磁盘而不是P30

我的下一步是将--workernode-data-disk-storage-account-type设置为premium_lrs,但它仍然产生了S30磁盘

我的Azure Cli版本

azure-cli(2.0.56)

参数

VM_SIZE_HEAD="Standard_A2m_V2"

VM_SIZE_WORKER="Standard_DS12_v2"

VM_SIZE_ZOOKEEPER="Standard_A2m_V2"

WORKER_NODE_NUMBER=3

WORKER_DISK_PER_DATA_NODE=1

WORKERNODE_DATA_DISK_STORAGE_ACCOUNT_TYPE="premium_lrs"

WORKERNODE_DATA_DISK_SIZE=1023

COMPONENT_VERSION="Kafka=1.1"

CLUSTER_VERSION=3.6

脚本

az hdinsight create --name $CLUSETER_NAME \
--resource-group $RESOURCE_GROUP \
--type "KAFKA" \
-u $CLUSTER_ADMIN -p $CLUSTER_PASSWOD \
--cluster-tier $CLUSTER_TIER \
--component-version $COMPONENT_VERSION \
--headnode-size $VM_SIZE_HEAD \
--location $LOCATION --size $WORKER_NODE_NUMBER \
--ssh-user $SSH_USER \
--ssh-public-key $SSH_KEY \
--storage-account $STORAGE_ACC \
--storage-default-container $STORAGE_CONTAINER \
--subnet $SUBNET \
--version $CLUSTER_VERSION \
--vnet-name  $VNET \
--workernode-size $VM_SIZE_WORKER \
--zookeepernode-size $VM_SIZE_ZOOKEEPER \
--workernode-data-disks-per-node $WORKER_DISK_PER_DATA_NODE \
--workernode-data-disk-storage-account-type $WORKERNODE_DATA_DISK_STORAGE_ACCOUNT_TYPE \
--workernode-data-disk-size $WORKERNODE_DATA_DISK_SIZE \
--cluster-configuration $CLUSETER_CONFIG

如果您需要任何其他代码或信息,请告诉我。预先感谢。

1 个答案:

答案 0 :(得分:1)

尝试将VM SKU用于支持高级托管磁盘(即p系列/ P30)的辅助节点。

在“ Standard_DS12_v2”上方选择的VM Sku不支持高级存储。 链接:https://docs.microsoft.com/en-us/azure/virtual-machines/dv2-dsv2-series-memory#dv2-series-11-15