1
votes

Hello I am trying to deploy HDInsight kafka cluster using Azure Cli but I am struggling with 2 problems.

1. Ssh public key authentication

When I specify --ssh-public-key option and pass public key I receive following error:

Both 'password' and 'sshProfile' cannot be null,Both 'password' and 'sshProfile' cannot be null,Both 'password' and 'sshProfile' cannot be null

2. Premium P30 disks for worker nodes

I have tried to use --workernode-size option with value Premuim_DS12_v2 (because that's what node is called when using Azure portal). Cli produced misleading error response:

Specified number of data disks 1 exceeds the maximum limit imposed by Virtual Machine of size Premium_DS12_V2 which is 0.

It turned out that it is not a correct vm size. so I used Standard_DS12_v2 instead.

Cluster was deployed but Standard S30 disk was used instead of P30

My next step was setting --workernode-data-disk-storage-account-type to premium_lrs but it still produced S30 disks

My Azure Cli version

azure-cli (2.0.56)

Parameters

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

Script

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

If you need any additional code or information please let me know. Thanks in advance.

1

1 Answers

1
votes

Try using a VM SKU for worker nodes which supports premium managed disk (i.e. p-series/ P30).

The VM Sku selected above "Standard_DS12_v2" doesn't support premium storage. Link: https://docs.microsoft.com/en-us/azure/virtual-machines/dv2-dsv2-series-memory#dv2-series-11-15