通过 PowerShell 的方式增加虚拟机终结点

关于虚拟机终结点的概念请阅读:如何设置虚拟机的终结点

本文包含以下内容(本文在名称为"pstest"的虚拟机做测试):

  • 通过 PowerShell 的方式增加终结点
  • 通过 PowerShell 脚本批量的增加终结点

通过 PowerShell 的方式增加终结点

使用 Powershell 前有关 Azure PowerShell 的安装、配置和连接到订阅请阅读这篇文章

查看当前虚拟机终结点

相关指令:Get-AzureVMGet-AzureEndpoint

 
#servicename 为虚拟机对应的云服务的名称
#name 为虚拟机的名称
Get-AzureVM -Servicename 'pstest' -Name 'pstest'| Get-AzureEndpoint

从上面信息可以看到目前虚拟机上拥有两个终结点:PowerShell 和 Remote Desktop。现在通过 PowerShell 增加终结点。

添加虚拟机终结点

相关指令:Add-AzureEndpointUpdate-AzureVM

 
Get-AzureVM -ServiceName "pstest" -Name "pstest" | Add-AzureEndpoint -Name "HttpIn" -Protocol "tcp" -PublicPort 80 -LocalPort 8080 | Update-AzureVM

该指令在虚拟机上增加了一个终结点,名称 HttpIn,协议 tcp,公用端口 80,私有端口 8080。可以通过 Get-AzureEndpoint 查看结果。

注意:增加终结点的操作不会引起虚拟机重启,也不需要虚拟机重启。

通过 PowerShell 脚本批量的增加终结点

首先在 Excel 输入需要一次性添加的终结点,然后以 csv 文件格式导出。关于在 PowerShell 中导入 .csv 文件请阅读这篇文章.

 
$vm = Get-AzureVM -Servicename 'pstest' -Name 'pstest'
$csvFile = 'D:\endpoint.csv'
$endpoints = Import-Csv $csvFile -header Name,Protocol,PublicPort,LocalPort | foreach {
    New-Object PSObject -prop @{
        Name = $_.Name;
        Protocol = $_.Protocol;
        PublicPort = [int32]$_.PublicPort;
        LocalPort = [int32]$_.LocalPort;
    }
}
Foreach ($endpoint in $endpoints)
{
Add-AzureEndpoint -VM $vm -Name $endpoint.Name -Protocol $endpoint.Protocol.ToLower() -PublicPort $endpoint.PublicPort -LocalPort $endpoint.LocalPort | Update-AzureVM
}

在经典管理门户网站上可以看到最终结果:

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值