VM Agent 和扩展程序 - 第 1 部分


Windows Azure基础结构服务最近宣布了一项新功能VM
Agent。VMAgent是一个轻量级进程,用于启动由Microsoft或合作伙伴共同提供的额外解决方案,可以配置、管理和加速虚拟机。本博客意在说明VM
Agent及其与VM扩展程序之间的关系,以及它们的好处和用法。本博客的第1部分主要关注在新的Azure
VM上如何启用VM Agent和扩展程序,第2部分主要关注如何将该功能扩展到现有VM。

VM扩展程序是什么?

在讨论 VM扩展程序之前,我们先来看一下额外的软件现在是如何在
IaaS虚拟机上实现使用的。在 VM上安装和管理软件的一些常用方法包括
1)在创建 VM之前将软件预安装到磁盘上
2)登录 VM,然后在
VM 中手动安装软件3)通过远程
PowerShell等安装 4)结合使用多种工具进行更新管理和运行状况/状态报告。

下面说明了 VM扩展程序可以在哪些方面简化
VM管理。

  • VM扩展程序是一种软件组件,可以扩展 VM功能并简化多种
    VM管理操作。

  • 任何给定的 VM上可以安装多个
    VM扩展程序,这些 VM扩展程序可以独立于
    VM的生命周期进行添加、更新和移除。

  • VM及其扩展程序的状态可以在同一个位置查看和管理。

以下是带有扩展程序的 VM的视图:

这些扩展程序由谁编写?

这些扩展程序由在Microsoft注册过的发布者编写、发布并提供支持。每个扩展程序都带有发布者信息。本博客主要关注如何将扩展程序添加到
VM 上,在今后的博客中我们将讨论扩展程序发布流程。

现在有哪些可用的扩展程序?

现在有两款由Microsoft发布的
IaaS VM扩展程序可用 – BGInfo和
VMAccess。

BGInfo:BGInfo是一款可以将有用的服务器信息作为壁纸写入桌面的扩展程序。今后如果您的
VM是从门户创建的,说明您已经得到了这款扩展程序。

启用 Bginfo后,VM桌面的壁纸将如下所示:

如果您想要手动添加该功能,您可以使用cmdlet Set-AzureVMBGInfoExtenion,非常方便。有关该
cmdlet 的使用细节,请参阅此处
MSDN 文档。

  • 启用BGIno

Get-AzureVM –ServiceName –Name |Set-AzureVMBGInfoExtensiom | Update-AzureVM

  • 禁用BGInfo:

从以下cmdlet的输出中查看扩展程序的ReferenceName和Version:

Get-AzureVM –ServiceName –Name |Get-AzureVMBGInfoExtension

Get-AzureVM –ServiceName –Name |Set-AzureVMBGInfoExtension –ReferenceName –Version –Disable | Update-AzureVM

有时禁用 Bginfo需要注销再登录。

注意:如果您已经是Bginfo用户,您可能需要注意,Bginfo的扩展程序版本尚不支持在
VM上修改 Bginfo设置。

VMAccess:如果您之前丢失过您的
IaaS VM 密码,密码将无法恢复,这一点您应该清楚。同样,如果 VM上的
RDP设置损坏,要修复该设置也并不容易。VMAccess可以解决这两种场景下的问题。对于密码,VMAccess提供了一种机制,可以让用户通过重置密码和用户名再次登录
VM。当可以使用重置的密码登录后,建议您更改密码。

有关该 cmdlet的使用细节,请参阅此处
MSDN 文档。

以下是VMAccess的一些使用场景。

  • 重置密码:

Get-AzureVM –ServiceName –Name |Set-AzureVMAccessExtension –UserName –Password |Update-AzureVM

如果您想要更改用户名,请为“UserName”指定新的值;如果不想更改,则使用现有值。

  • 修复RDP设置:

Get-AzureVM –ServiceName –Name |Set-AzureVMAccessExtension |Update-AzureVM

不使用任何参数调用Set-AzureVMAccessExtension可以修复任何损坏的RDP设置。启用该扩展程序后,如果未来想要修复RDP设置,可以再次调用该cmdlet或者重启VM。

  • 禁用VMAccess:

从以下cmdlet的输出中查看扩展程序的ReferenceName和Version:

Get-AzureVM –ServiceName –Name |Get-AzureVMAccessExtension

Get-AzureVM –ServiceName –Name |Set-AzureVMAccessExtension –ReferenceName –Version –Disable | Update-AzureVM

注销后再登录 VM,以禁用
VMAcces。

启用 VM扩展程序的先决条件是什么?

启用 VM扩展程序只有一个简单的先决条件–创建IaaS
VM时启用 VM Agent。当您通过门户或最新的
Azure Powershell创建 VM时,VMAgent将默认启用,除非被手动禁用。

注意:本博客的第
2 部分将说明如何在现有 VM上和通过磁盘创建的
VM上启用 VM Agent。

VM扩展程序的未来发展是什么?

希望到现在为止,本博客已经带您大致了解了如何使用 VM扩展程序在
VM上开启和关闭额外功能。Bginfo和
VMAccess是第一批可用的扩展程序,我们希望未来几个月内会有更多的扩展程序。敬请关注,欢迎您再次阅读本博客,了解更多新的 VM扩展程序。

云服务扩展程序的情况如何?

虽然本博客关注的是虚拟机,但我想补充的是,扩展程序也适用于云服务 VM,现在已经有了一些可用的云服务扩展程序,如
RDP 和 WAD扩展程序。在未来的博客中,我们将进一步讨论这些云服务扩展程序以及其他新的云服务扩展程序。

VM Agent和扩展程序-第
2部分

希望上一篇博客“VM
Agent 和扩展程序 -第
1部分”
已经让您大概了解了VM
Agent 及其好处以及如何在 VM Agent启用的情况下创建新VM。在本博客系列的第
2 部分,我们将讨论两种关键场景 -在现有
VM上和通过磁盘创建的 VM上启用
VM Agent。

1 在现有
VM 上启用 VM Agent:

如果您在VM Agent 可用之前已经创建了
Azure VM,本工作流将说明如何在此类VM上启用
VM Agent,进而在该VM上启用扩展程序。

1.1 验证在
VM 上尚未启用 VM Agent:

该操作可以使用以下Azure
PowerShell
 cmdlet完成:

$x = Get-AzureVM -ServiceName$serviceName

验证“$x.VM.ProvisionGuestAgent”为false。

如果 $x.VM.ProvisionGuestAgent为true,说明VM已有
VM Agent。剩余步骤可以跳过。

1.2 安装
Microsoft Azure VM Agent,准备 VM:

Azure VM Agent安装程序是一款独立的MSI,用于在
VM 上安装VM Agent。安装
VM Agent 只需简单的一步:下载
MSI
并启动该 MSI。根据下面显示的安装程序工作流,安装VM
Agent。

1.1 通过 PowerShell设置标志,指示已安装
VM Agent:

现在 VM Agent已经安装到VM中,下一步是通知
Azure平台该VM已经安装
VM Agent。该操作可以通过运行以下Azure PowerShell cmdlet完成:

$vm = Get-AzureVM –serviceName $svc–Name $name

$vm.VM.ProvisionGuestAgent = $TRUE

Update-AzureVM –Name $name -VM$vm.VM -ServiceName $svc

注意:Azure PowerShell cmdlet可以在此处下载。

此 VM现可随时运行任何VM扩展程序!

2 如何在通过磁盘创建的 VM上启用
VM Agent和扩展程序:

另一种常见的 VM创建场景是,通过磁盘创建
Azure VM
。如果您要在Azure门户中使用
Sysprep准备的映像,则VM Agent会在
VM创建工作流中启用,无需执行任何其他步骤。但如果您使用的是专门的磁盘,则VM Agent需要手动安装。以下步骤说明了相关流程。

2.1 在 VHD上安装
VM Agent:

使用磁盘在本地创建 VM,然后使用MSI安装VM
Agent。


VHD 上传到 Azure

2.2 通过磁盘创建 VM

在门户中,通过库创建 VM,然后选择上传的VHD。在
VM 创建工作流中,选择相应标志,指示该磁盘已经包含VM Agent。在此之后,扩展程序就可以在
VM 创建过程之中或之后添加到 VM上。

3.   启用
VM Agent之后需执行什么操作?

在 VM上启用
VM Agent后,BGInfo、VMAccess等任何可用的扩展程序就可以添加到该
VM上。在接下来的几篇博客中,我们将讨论如何发现更多扩展程序并将其添加到 VM上,例如直接在处于运行状态的
VM上运行任意自定义脚本。

4.   反馈/问题?

请将您有关 VM Agent或扩展程序的评论/问题发布到此处。期待听到您的反馈!

本文翻译自:

http://blogs.msdn.com/b/windowsazure/archive/2014/04/11/vm-agent-and-extensions-part-1.aspx

http://blogs.msdn.com/b/windowsazure/archive/2014/04/15/vm-agent-and-extensions-part-2.aspx 

VM Agent 和扩展程序的更多相关文章

  1. 使用自定义脚本扩展程序自动执行 VM 自定义任务

     在 Build 开发者大会上推出VM 扩展程序的其中一个称为"自定义脚本扩展程序",它支持 PowerShell.如果这是您第一次访问这些博客,可能需要查看以前的博客,请单击 ...

  2. 使用 VMAccess 扩展程序重置 Linux 虚拟机的登录凭据

    Ning KuangWSSC WS ARD高级项目经理 您是否曾经因为忘记 Azure VM 密码或 SSH密钥而导致无法访问 VM?VMAccess扩展程序使您可以重置密码.SSH密钥或 SSH ...

  3. 使用 CustomScript 扩展程序自动执行 Linux 虚拟机自定义任务

    NingKuangWSSC WS ARD 高级项目经理 您可能已经从Windows扩展程序博客中了解了针对 Windows 虚拟机的 CustomScript扩展程序,现在的好消息是,这一扩展程序也已 ...

  4. 浏览器怎么添加 Axure扩展程序

    步骤   本文以强大如斯的谷歌浏览器来说明,怎么查看Axure原型文件,怎么添加Axure RP扩展程序.Axure RP生成的原型文件,一般都是可以用浏览器打开的, 如:一般都有index.star ...

  5. Google Chrome 应用商店上传扩展程序

    1. 进入 Google 开发者中心 网址: https://chrome.google.com/webstore/developer/dashboard?hl=zh-cn 2. 添加新项 上传后,出 ...

  6. chrome扩展程序开发

    首先,明确两个概念的区别:chrome扩展程序和Web Apps.具体参考:http://www.chromi.org/archives/10106 本文只讨论chrome扩展程序. 最好的开发教程莫 ...

  7. Chrome扩展程序的二次开发:把它改得更适合自己使用

    我当然知道未经作者允许修改别人程序是不道德的了,但作为学习研究之用还是无可厚非,这里仅供交流. 一切都是需求驱动的 话说某天我在网上猎奇的时候无意间发现这么一款神奇的谷歌浏览器插件:Extension ...

  8. 编写Chrome扩展程序

    Chrome的扩展程序很多,也很容易入门,可以来简单实现一下 看看,慢慢就能实现出一个扩展程序来 每个扩展程序应用一般会包含: 一个manifest清单文件 html文件 js文件 其他文件等 可以看 ...

  9. Web 开发人员必备的12款 Chrome 扩展程序

    之前已经分享过一些帮助 Web 开发人员和设计师的 Chrome 扩展,这次我们继续展示一组很有用的 Chrome 应用程序.这些免费的 Chrome 应用程序可以简化您的工作流程,为了加快您的工作流 ...

随机推荐

  1. centos6安装vncserver实现图形化访问

    一.配置163的yum源 1.导入CentOS-6的GPG证书 #rpm --import http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-6 2.让 ...

  2. Cocos2d-x 安装教程for mac(Xcode)

    cocos2d v3.x 版本出来后,从配置安装到创建项目都是命令行,下面简单说一下. 1. 下载地址    http://cn.cocos2d-x.org/download/ (虽然没有标明 for ...

  3. MVC+JSON 无限滚动翻页

    public partial class News { public int ID{ get; set; } public int Title{ get; set; } } ) { Response. ...

  4. Python核心编程笔记---- input 与raw_input

    1.raw_input:的返回值是一个string 对象. 2.input:相当于eval(raw_input()),计算出来是什么类型就是什么类型. ------------------------ ...

  5. ORACLE同义词总结

    ORACLE同义词总结 同义词概念 Oracle的同义词(synonyms) 从字面上理解就是别名的意思,和视图的功能类似,就是一种映射关系.它可以节省大量的数据库空间,对不同用户的操作同一张表没有多 ...

  6. Java pipeline

    http://cullenprogramming.homelinux.com/PIPEuserguide.htm http://www.cise.ufl.edu/research/ParallelPa ...

  7. docker 容器开启ssh服务

    ssh服务安装 安装ssh服务 #yum install openssh-server -y 安装passwd(修改密码需要) #yum install passwd -y 修改sshd_config ...

  8. JavaMail学习笔记

    适逢计算机网络课程设计,本着挑战自己的态度,选择了一个从未接触的东西:邮箱客户端代理软件的设计.由于对相关协议非常陌生,只能依靠查找资料完成,在学习过程中碰到了一个非常好的博客,故向大家推荐一下. 一 ...

  9. 解决cookie无法删除的问题

    今天遇到一个cookie无法删除的问题,退出操作时cookie无法删除,必须在首页先进行退出操作,后来发现一个网友的博客,介绍了无法删除Cookie的原因,原来是我关于cookie的基础知识没搞清楚. ...

  10. mac电脑批量解压android apk文件图形化工具--apkDecode

    mac电脑apk文件解压软件,简单的用图形界面将apktools包装了下,使用起来非常简单,可以将apk文件批量解压缩,方便大家查看一些东东,仅供学习目的. 使用步骤如下: 1 下载apkDecode ...