有客户希望可以通过一条命令获得一个Azure订阅中所有的负载均衡器。

目前在Azure的powershell中是没有这中命令的。但我们可以通过脚本的方式实现。

下面就是获得所有负载均衡的脚本:

param(
[Parameter(Mandatory=$true)]
[String]$subscriptionId )
$flag=0
$subs=Get-AzureSubscription
foreach($sub in $subs)
{
if($sub.subscriptionid -eq $subscriptionId)
{ $flag=1 }
}
if($flag -eq 0)
{
Add-AzureAccount -Environment AzureChinaCloud
} Select-AzureSubscription -SubscriptionId $subscriptionId $sers = Get-AzureService
$result=@()
foreach ($ser in $sers)
{
$vms = get-azurevm -ServiceName $ser.ServiceName
foreach($vm in $vms)
{ $lbs=Get-AzureEndpoint -VM $vm | Where-Object {$_.LBSetName -ne $null}
foreach ($lb in $lbs)
{
$vmObject = New-Object PSObject
$vmObject | Add-Member -MemberType NoteProperty -Name "ServiceName" -Value $vm.ServiceName
$vmObject | Add-Member -MemberType NoteProperty -Name "VMName" -Value $vm.Name
$vmObject | Add-Member -MemberType NoteProperty -Name "LBType" -Value "SLB"
$vmObject | Add-Member -MemberType NoteProperty -Name "SLBName" -Value $lb.LBSetName
$vmObject | Add-Member -MemberType NoteProperty -Name "LocalPort" -Value $lb.LocalPort
$vmObject | Add-Member -MemberType NoteProperty -Name "PubPort" -Value $lb.Port
$vmObject | Add-Member -MemberType NoteProperty -Name "HashType" -Value $lb.LoadBalancerDistribution
$result+= $vmObject } $ilbs=Get-AzureEndpoint -VM $vm | Where-Object {$_.InternalLoadBalancerName -ne $null}
foreach ($ilb in $ilbs)
{
$vmObject = New-Object PSObject
$vmObject | Add-Member -MemberType NoteProperty -Name "ServiceName" -Value $vm.ServiceName
$vmObject | Add-Member -MemberType NoteProperty -Name "VMName" -Value $vm.Name
$vmObject | Add-Member -MemberType NoteProperty -Name "LBType" -Value "ILB"
$vmObject | Add-Member -MemberType NoteProperty -Name "SLBName" -Value $ilb.InternalLoadBalancerName
$vmObject | Add-Member -MemberType NoteProperty -Name "LocalPort" -Value $ilb.LocalPort
$vmObject | Add-Member -MemberType NoteProperty -Name "PubPort" -Value $ilb.Port
$vmObject | Add-Member -MemberType NoteProperty -Name "HashType" -Value $ilb.LoadBalancerDistribution
$result+= $vmObject
} } }
$result |Format-Table

用CLI也可以实现类似的功能。但输出是原始的输出格式:

#!/bin/bash
sers=`azure service list | awk '/China/ {print $2}'`
for ser in $sers
do
slbs=`azure service load-balanced-set list $ser |awk '/(tcp|udp)/ {print $2}'`
for slb in $slbs
do
azure service load-balanced-set show -b $slb $ser
done
done

获得Azure订阅LoadBalancer的脚本的更多相关文章

  1. Azure 订阅和服务限制、配额和约束

    最后更新时间:2016年10月24日 概述 本文档指定一些最常见的 Azure 限制.请注意,本文档目前未涵盖所有 Azure 服务.一段时间后,将展开并更新这些限制以包含多个平台. NOTE: 如果 ...

  2. Azure PowerShell (2) 修改Azure订阅名称

    <Windows Azure Platform 系列文章目录> Update: 2016-01-11 笔者文档主要都是用Azure PowerShell 0.x版本来实现的,比如0.98版 ...

  3. [Azure] 使用 Visual Studio 2013 管理中国版 Azure 订阅

    比较关心微软平台技术的朋友应该都知道,微软云服务(Microsoft Azure)以下简称Azure分为全球版和中国版,由于政府法规问题中国版的服务是由二十一世纪互联运营,整体来看中国版Azure和全 ...

  4. Azure ARM (21) Azure订阅的两种管理模式

    <Windows Azure Platform 系列文章目录> 熟悉Azure平台的读者都知道,Microsoft Azure服务管理,分为三个层次: 1.企业服务合同 (Enterpri ...

  5. Azure 计费 & 成本管理 & 取消 Azure 订阅

    Azure 计费 & 成本管理 & 取消 Azure 订阅 https://docs.microsoft.com/zh-cn/azure/cost-management-billing ...

  6. Azure Automation (3) 定期将某个Azure订阅下的所有虚拟机开关机

    <Windows Azure Platform 系列文章目录> 本文介绍的是国内由世纪互联运维的Azure China. 在笔者之前的文章中,我们介绍了使用Azure Automation ...

  7. 将 Windows VM 移到其他 Azure 订阅或资源组

    本文逐步说明如何在资源组或订阅之间移动 Windows VM. 如果最初在个人订阅中创建了 VM,现在想要将其移到公司的订阅以继续工作,则在订阅之间移动 VM 可能很方便. Important 不可在 ...

  8. Windows Azure Platform Introduction (11) 了解Org ID、Windows Azure订阅、账户

    <Windows Azure Platform 系列文章目录> 了解和掌握Windows Azure相关的基础知识是非常重要的. 问题1:什么叫做Org ID Org ID是Azure C ...

  9. 创建Azure Blob Snapshot的脚本

    在前面的文章中介绍了如何创建Azure Blob Snapshot.那篇文章中创建的脚本思路是:遍历所有Storage Account,找到所有vhd文件,进行Snapshot的创建. 但这种方式不够 ...

随机推荐

  1. Moore-Penrose Matrix Inverse 摩尔-彭若斯广义逆 埃尔米特矩阵 Hermitian matrix

    http://mathworld.wolfram.com/Moore-PenroseMatrixInverse.html 显然,埃尔米特矩阵主对角线上的元素都是实数的,其特征值也是实数.对于只包含实数 ...

  2. js apply / call 函数

    这两个函数的作用是: 将函数绑定到另外一个对象上去运行 用call和apply应用另一个函数(类)以后,当前的函数(类)就具备了另一个函数(类)的方法或是属性,这也能够称之为“继承”. functio ...

  3. GeekforGeeks Trie - 键树简单介绍 - 构造 插入 和 搜索

    版权声明:本文作者靖心,靖空间地址:http://blog.csdn.net/kenden23/,未经本作者同意不得转载. https://blog.csdn.net/kenden23/article ...

  4. Redis持久化——AOF(二)

    核心知识点: 1.AOF:以独立日志的方式记录写命令,重启时再执行命令.与RDB不同的是解决数据持久化的实时性,可以记录所有写操作. 2.AOF工作流程:写入命令.文件同步.文件重写.文件加载. 3. ...

  5. linux mint console-setup

    sudo dpkg-reconfigure console-setup after setup, setupcon

  6. 每天一个Linux命令(20)find命令_exec参数

    find命令的exec参数,用于find查找命令完成以后的后续操作.     (1)用法: 用法:  [find命令]  [-exec  其他命令 {} \;]     (2)功能: 功能:-exec ...

  7. vmware虚拟机安装MAC OSX10.10Yosemite简要记录

    vmware所在环境为win7 64位系统,intel4核CPU,16G内存. 本人安装的是OSX10.10Yosemite的CDR镜像. 1. 在服务中停止所有vmware服务. 2. 安装unlo ...

  8. BEM —— 源自Yandex的CSS 命名方法论

    原文链接: https://segmentfault.com/a/1190000000391762 人们问我最多的问题之一是在CSS类名中--和__是什么意思?它们的出现是源于BEM和Nicolas ...

  9. Centos安装ntfs

    ntfs优盘插在Linux上是无法直接使用的,需要安装ntfs插件才可使用 centos上安装ntfs-3g 下载ntfs-3g安装包,上传至需要安装的服务器并解压 cd 进入ntfs-3g目录,依次 ...

  10. Java 环境变量设置 -- JAVA_HOME CLASSPATH

    1.打开我的电脑--属性--高级--环境变量 2.新建系统变量JAVA_HOME 和CLASSPATH 变量名:JAVA_HOME 变量值:C:\Program Files\Java\jdk1.7.0 ...