Я хочу вернуть fqdn или Publi c IP из созданных azure vm по параметру out шаблона arm и powershell-script. Версия Powershell, как показано ниже на windows сервере 2016 года, -64 бит.
Версия: 5.1.2 Имя: Azure Автор: Microsoft Corporation PowerShellVersion: 3.0
Ниже это сценарий powershell, который я написал, и azure Vm был успешно создан, но никакие данные IP fqdn или Publi c не поступают из сценария Powershell. Я использую AZ модуль в powershell
param (
[parameter(Mandatory = $true)]
[PSCustomObject] $parameterObject,
[parameter(Mandatory = $true)]
[System.IO.FileInfo] $armTemplateFilePath,
[parameter(Mandatory = $true)]
[string]$clientId,
[parameter(Mandatory = $true)]
[string]$clientSecrete,
[parameter(Mandatory = $true)]
[string]$tenantId,
[parameter(Mandatory = $true)]
[string]$subscriptionId
)
#createing PObject
$networkSecurityGroupRulesArry = New-Object -TypeName psobject
$networkSecurityGroupRulesArry | Add-Member -MemberType NoteProperty -Name networkSecurityGroupRules -Value $parameterObject.networkSecurityGroupRules
$addressPrefixesArry = New-Object -TypeName psobject
$addressPrefixesArry | Add-Member -MemberType NoteProperty -Name addressPrefixes -Value $parameterObject.addressPrefixes
$subnetsArry = New-Object -TypeName psobject
$subnetsArry | Add-Member -MemberType NoteProperty -Name subnets -Value $parameterObject.subnets
#createing Hashtable type
$Parameters = New-Object -TypeName Hashtable
$Parameters.Add("params", @( $parameterObject.location,
"botni01",
"botnsg01",
$networkSecurityGroupRulesArry.networkSecurityGroupRules,
"default",
"botvnet01",
$addressPrefixesArry.addressPrefixes,
$subnetsArry.subnets ,
"botpubip01",
"Dynamic",
"Basic",
$parameterObject.virtualMachineName,
$parameterObject.resourceGroupName,
$parameterObject.osDiskType,
$parameterObject.virtualMachineSize,
"demouser",
"Paaaw0rd@1234",
$parameterObject.publisher,
$parameterObject.offer,
$parameterObject.sku)
)
#Write-Host "****************************print Parameters -var ***********************************"
#$Parameters
#Connect with azure cloud and do creation process
$passwd = ConvertTo-SecureString $clientSecrete -AsPlainText -Force
$pscredential = New-Object System.Management.Automation.PSCredential($clientId , $passwd)
$subscription = Connect-AzAccount -ServicePrincipal -Credential $pscredential -Tenant $tenantId -Subscription $subscriptionId
#Exist chk for RsgRp
$rg = Get-AzResourceGroup -Name $parameterObject.resourceGroupName -Location $parameterObject.location -ErrorAction SilentlyContinue -Verbose
if(($rg -eq $null) -or ($rg -eq '')) {
$rg = New-AzResourceGroup -Name $parameterObject.resourceGroupName -Location $parameterObject.location -Force -Verbose
}
#$deployment start
$deployment = New-AzResourceGroupDeployment -Name deployvmbot -ResourceGroupName $rg.ResourceGroupName -Mode Incremental `
-TemplateFile $armTemplateFilePath `
-TemplateParameterObject $Parameters ` -Verbose
Как получить Publi c IP или fqdn из созданного azure vm ? Любое предложение или помощь
Спасибо, Anirban