获得Azure订阅LoadBalancer的脚本
有客户希望可以通过一条命令获得一个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的脚本的更多相关文章
- Azure 订阅和服务限制、配额和约束
最后更新时间:2016年10月24日 概述 本文档指定一些最常见的 Azure 限制.请注意,本文档目前未涵盖所有 Azure 服务.一段时间后,将展开并更新这些限制以包含多个平台. NOTE: 如果 ...
- Azure PowerShell (2) 修改Azure订阅名称
<Windows Azure Platform 系列文章目录> Update: 2016-01-11 笔者文档主要都是用Azure PowerShell 0.x版本来实现的,比如0.98版 ...
- [Azure] 使用 Visual Studio 2013 管理中国版 Azure 订阅
比较关心微软平台技术的朋友应该都知道,微软云服务(Microsoft Azure)以下简称Azure分为全球版和中国版,由于政府法规问题中国版的服务是由二十一世纪互联运营,整体来看中国版Azure和全 ...
- Azure ARM (21) Azure订阅的两种管理模式
<Windows Azure Platform 系列文章目录> 熟悉Azure平台的读者都知道,Microsoft Azure服务管理,分为三个层次: 1.企业服务合同 (Enterpri ...
- Azure 计费 & 成本管理 & 取消 Azure 订阅
Azure 计费 & 成本管理 & 取消 Azure 订阅 https://docs.microsoft.com/zh-cn/azure/cost-management-billing ...
- Azure Automation (3) 定期将某个Azure订阅下的所有虚拟机开关机
<Windows Azure Platform 系列文章目录> 本文介绍的是国内由世纪互联运维的Azure China. 在笔者之前的文章中,我们介绍了使用Azure Automation ...
- 将 Windows VM 移到其他 Azure 订阅或资源组
本文逐步说明如何在资源组或订阅之间移动 Windows VM. 如果最初在个人订阅中创建了 VM,现在想要将其移到公司的订阅以继续工作,则在订阅之间移动 VM 可能很方便. Important 不可在 ...
- Windows Azure Platform Introduction (11) 了解Org ID、Windows Azure订阅、账户
<Windows Azure Platform 系列文章目录> 了解和掌握Windows Azure相关的基础知识是非常重要的. 问题1:什么叫做Org ID Org ID是Azure C ...
- 创建Azure Blob Snapshot的脚本
在前面的文章中介绍了如何创建Azure Blob Snapshot.那篇文章中创建的脚本思路是:遍历所有Storage Account,找到所有vhd文件,进行Snapshot的创建. 但这种方式不够 ...
随机推荐
- 九度OJ 1335:闯迷宫 (BFS)
时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:1782 解决:483 题目描述: sun所在学校每年都要举行电脑节,今年电脑节有一个新的趣味比赛项目叫做闯迷宫. sun的室友在帮电脑节设计 ...
- 洛谷 P3629 [APIO2010]巡逻
题目在这里 这是一个紫题,当然很难. 我们往简单的想,不建立新的道路时,从1号节点出发,把整棵树上的每条边遍历至少一次,再回到1号节点,会恰好经过每条边两次,路线总长度为$2(n-1)$,根据树的深度 ...
- Android Studio实现代码混淆
1,在build.grandle添加,其中规则写在proguard-rules.pro中,也可以自定义一个文件,将其代替,比如eclipse常用的 proguard-project.txt: bui ...
- 阿里云CentOS7安装Docker
买了阿里云主机,由于学生有优惠,玩起来确实爽. 系统版本: [root@lxd ~]# cat /etc/redhat-release CentOS Linux release 7.0.1406 (C ...
- androidAndroid开发学习--Ionic+Cordova 环境搭建
我们看 Ionic 能给我们提供什么? 一个样式库,你可以使用它 来 装饰你的 HTML 网页 ,看起来 想 移动程序的 界面,什么 header .content.footer.grid.list ...
- Linux:进程管理
Linux:进程管理 进程间通信 文件和记录锁定. 为避免两个进程间同时要求访问同一共享资源而引起访问和操作的混乱,在进程对共享资源进行访问前必须对其进行锁定,该进程访问完后再释放.这是UNIX为共享 ...
- ButterKnife 原理解析
一.使用方法 1.添加依赖. implementation 'com.jakewharton:butterknife:8.8.1' annotationProcessor 'com.jakewhart ...
- 小程序getApp() 被删除坑
在一个非page的js文件内使用getApp,当前台切到后台的时候,定义的var app = getApp()被删除了 如:新建一个app-libs.js start: function() { va ...
- HTTPS协议原理透析
1.HTTPS本身并非协议,而是标准的HTTP协议架在SSL/TLS协议之上的一种结构.(一种不太合适的说法可以认为是两种协议的叠加).HTTP是工作在OSI7层模型的最上层,就是第7层:Applic ...
- Linux Shell总结
Shell编程总结: 1.linux命令 2.位置变量 $0 $1 $# $? 3.条件测试 [ ] [[ ]] (( )) if case 4.循环for while 5.打印echo cat 6. ...