クラスターで Azure Service Fabric を実行するために、vmset があります。パスワードは知っていますが、変更する必要があります。VM の場合、通常は Azure ポータルで「パスワードのリセット」機能を使用しますが、vmset ではこれが許可されていません。リソース テンプレートのパスワードを調整することも許可されていません。
vmset 内の VM のパスワードを変更するにはどうすればよいですか?
クラスターで Azure Service Fabric を実行するために、vmset があります。パスワードは知っていますが、変更する必要があります。VM の場合、通常は Azure ポータルで「パスワードのリセット」機能を使用しますが、vmset ではこれが許可されていません。リソース テンプレートのパスワードを調整することも許可されていません。
vmset 内の VM のパスワードを変更するにはどうすればよいですか?
更新: VMSS FAQを参照してください:
仮想マシン スケール セット モデルを直接変更します。Compute API 2017-12-01 以降で利用できます。
スケール セット モデルで管理者の資格情報を直接更新します (たとえば、Azure リソース エクスプローラー、PowerShell、または CLI を使用します)。スケール セットが更新されると、すべての新しい VM に新しい資格情報が割り当てられます。既存の VM は、再イメージ化された場合にのみ新しい資格情報を持ちます。
または (古い API バージョンの場合)、VM Access 拡張機能を適用できます。Set-AzureRmVmssOSProfile コマンドレットは、PowerShell を使用して命令的にスケール セットを作成する場合に役立ちますが、既存のスケール セットの変更不可能なプロパティを変更するためには使用できません。
VM アクセス拡張機能を使用してスケール セットを変更する例を次に示します。
# Login to your azure account
Login-AzureRmAccount
# Set the scale set and resource group
$vmssName = "myvmss"
$vmssResourceGroup = "myvmssrg"
# Set the username / password
$publicConfig = @{"UserName" = "newuser"}
$privateConfig = @{"Password" = "********"}
$extName = "VMAccessAgent"
$publisher = "Microsoft.Compute"
$vmss = Get-AzureRmVmss -ResourceGroupName $vmssResourceGroup -VMScaleSetName $vmssName
$vmss = Add-AzureRmVmssExtension -VirtualMachineScaleSet $vmss -Name $extName -Publisher $publisher -Setting $publicConfig -ProtectedSetting $privateConfig -Type $extName -TypeHandlerVersion "2.0" -AutoUpgradeMinorVersion $true
Update-AzureRmVmss -ResourceGroupName $vmssResourceGroup -Name $vmssName -VirtualMachineScaleSet $vmss
Azure PowerShell コマンドレットを見ると、Set-AzureRmVmssOsProfileは理にかなっています。
PS C:\>Set-AzureRmVmssOSProfile -VirtualMachineScaleSet "ContosoVMSS" -ComputerNamePrefix "Test" -AdminUsername $AdminUsername -AdminPassword $AdminPassword
このコマンドは、ContosoVMSS という名前の VMSS に属する仮想マシンのオペレーティング システム プロファイル プロパティを設定します。このコマンドは、VMSS 内のすべての仮想マシン インスタンスのコンピューター名のプレフィックスを Test に設定し、管理者のユーザー名とパスワードを提供します。