arm开发板上电设置静态ip_仅当分配方法为静态时,如何才能从Arm模板输出公共IP地址?...

I am trying to output a Public IP address from an arm template only if the PublicIP being create dis static. If it is Dynamic the output can be ignored.

We have a main template which calls another template to create the virtual machine. The calling template will pass the parameters required to build the machine including whether the Public IP should be static or dynamic using the parameter PIPAllocationMethod.

In the template which builds a vm in the output section I have tried the following code but it doesnt work and returns error as below "Unable to evaluate template output'publicIpAddress' is not valid."

"outputs": {

"publicIpAddress": {

"value": "[if(equals(parameters('PIPAllocationMethod'),'Static'), reference(variables('primaryPIPAddressName')).ipAddress, parameters('PIPAllocationMethod'))]",

"type": "string"

}

What I need is to only output the PublicIP Address if is is Static, if it is Dynamic it can be ignored

Help appreciated

解决方案

I think you are talking about PublicIP resource, so you have a typo (case sensitivity):

reference(variables('primaryPIPAddressName')).IpAddress

for NIC use this:

reference(variables('primaryPIPAddressName')).ipConfigurations[0].properties.privateIPAddress

in your case i suggest you do this. créate variable with the following value:

"picker": "[if(equals(parameters('PIPAllocationMethod'),'Static'), 'IpAddress', 'publicIPAllocationMethod')]"

and in your output you can do this:

"value": "[reference(variables('primaryPIPAddressName')).[variables('picker')]]"

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值