Add SSH Key to VMSS
Run Command:
az vmss run-command invoke --resource-group {VMSS_RESOURCE_GROUP} --name {VMSS_NAME} --command-id RunShellScript --instance-id {VMSS_ID} --scripts "echo '{PUBLIC_SSH_KEY}' >> /home/{USERNAME}/.ssh/authorized_keys"
Run Script for multiple instances:
instances=$(az vmss nic list -g {RESOURCE_GROUP_NAME} --vmss-name {VMSS_NAME} --query "[].ipConfigurations[].[privateIpAddress,id]" --output tsv | sed -e 's/^\([0-9\.]*\).*\/\([0-9]*\)\/.*$/\2/g')
for i in $instances; do
echo "Working on $i"
az vmss run-command invoke --resource-group {RESOURCE_GROUP_NAME} --name {VMSS_NAME} --command-id RunShellScript --instance-id $i --scripts "echo '$(cat /home/{USERNAME}/.ssh/id_rsa.pub)' >> /home/{USERNAME}/.ssh/authorized_keys"
done
Last updated