是否可以从Linux脚本连接到Azure云,以获取有关所有可用资源(虚拟机、网络、云服务等)的信息?
我不是正在讨论的Azure云的管理员,但我拥有对网络的VPN访问权限、对管理门户的访问权限以及对该云中所有Linux服务器的SSH访问权限。
我希望能够: 1)连接到云(使用与我登录Azure管理门户时相同的凭据) 2)检索资源列表,并从该列表中检索有关每个资源的详细信息3)登录到每个Linux实例并检索一些文件(这一点我知道如何操作)
PS。如果有人知道如何在Java中实现上面的前两点,我也会非常感激。任何其他语言都无关紧要。
发布于 2015-01-16 12:37:49
我会评论并问这些问题,但我还没有足够的观点。我假设你知道azure java sdk:
http://dl.windowsazure.com/javadoc/
我们需要确切地知道您查询的是什么服务。
Azure服务被分成不同的类别,需要单独的查询。像“计算”这样的东西可以获得vm、web角色和工作者角色的列表,可以用下面的代码来完成:
DeploymentOperations getDeploymentsOperations()
http://dl.windowsazure.com/javadoc/com/microsoft/windowsazure/management/compute/DeploymentOperations.html
网络http://dl.windowsazure.com/javadoc/com/microsoft/windowsazure/management/network/NetworkManagementClient.html也是如此
媒体服务http://dl.windowsazure.com/javadoc/com/microsoft/windowsazure/management/mediaservices/package-summary.html
..。和存储,以及更多。每种方法都有不同的对象类型,需要以不同的方式进行处理。如果你只是在寻找一个列表,管理门户,那么所有的项目绝对是最简单的。
希望这能帮上忙
=德文郡
发布于 2015-02-11 15:21:46
Azure提供了azure-cli (一个Node.js模块),你可以从你的shell或者其他脚本中调用它。如果将--json传递给操作,则可以使用jq或类似的JSON解析工具解析输出。
安装Node.js和npm后,请使用以下命令进行安装:
npm install azure-cli -g然后你需要登录(如果你用任何不能用来登录Xbox的东西登录,用azure login登录-或者用azure account download登录,然后用azure account import登录剩下的东西)
下面是一个例子:
azure site list --json | jq '.[] | [.name, .state]'
[
"alpha",
"Stopped"
]
[
"beta",
"Running"
]
[
...在GitHub上开源的Python scripts MS开放技术也可以节省一些时间。他们与Zabbix和Nagios合作。HTH。
https://stackoverflow.com/questions/27960457
复制相似问题