在 Build
开发者大会上推出VM
扩展程序的其中一个称为“自定义脚本扩展程序”,它支持
PowerShell。如果这是您第一次访问这些博客,可能需要查看以前的博客,请单击此处此处,了解有关
VM Agent 和扩展程序的概述。

那么,此扩展程序有何用途?它与远程PowerShell
或任何其他现有远程执行工具有什么不同?简而言之,自定义脚本扩展程序可以从 Azure
存储自动下载脚本和文件,并在 VM
上启动 PowerShell
脚本,进而安装更多软件组件。与任何其他 VM
扩展程序一样,可以在创建 VM
时或在运行 VM
后添加自定义脚本扩展程序。听起来很简单,但却非常有用!

使用此扩展程序运行PowerShell
脚本的先决条件:

  • 此处安装
    Azure PowerShell Cmdlets V0.8.0 或更高版本。

  • 如果脚本将在现有的 VM
    上运行,请确保 VM
    上已启用 VM Agent,如果没有,请按照博客文章中的说明进行安装。

  • 将要在 VM
    上运行的脚本上传到 Azure
    存储。这些脚本可以来自一个或多个存储容器。

应该以这样一种方式编写脚本,即扩展程序启动的入口脚本可以转而启动其他脚本。

现在您已经满足必要的先决条件,让我们来演示几个用例,说明如何使用这些 cmdlet。此扩展程序的当前版本只支持
PowerShell cmdlet,但在未来可能会扩展到其他类型的脚本。

用例 1:将文件上传到默认帐户的容器中。

如果您将脚本保存在默认订阅帐户的存储容器中,那么下面的 cmdlet
代码段将显示如何在 VM
上运行这些脚本。下面示例中的 ContainerName
是您要将脚本上传到的位置。默认存储帐户可通过 cmdlet“Get-AzureSubscription –Default”进行验证。

注意:此用例会创建一个新的 VM,但您也可以在现有
VM 上完成相同的操作。

用例 2:使用非默认存储帐户。

此用例说明如何在相同或不同订阅中使用非默认存储上传脚本/文件。这里我们将使用现有的
VM,但在创建新 VM
时也可以完成相同的操作。

用例 3:跨不同存储帐户将脚本上传到多个容器。

如果脚本文件存储在多个容器中,那么目前要运行这些脚本,您必须提供这些文件的完整 SAS URL。可以使用
Azure Storage Explorer
等工具生成 SAS URL。

希望这些 cmdlet
将帮助您自动执行某些 VM
自定义任务。如果您希望在此扩展程序即将发布的版本中看到您所希望的其他功能,欢迎您提供反馈。请将您的评论/问题发布到此处

本文翻译自:http://blogs.msdn.com/b/windowsazure/archive/2014/04/24/automating-vm-customization-tasks-using-custom-script-extension.aspx

使用自定义脚本扩展程序自动执行 VM 自定义任务的更多相关文章

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

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

  2. 适用于 Windows 的自定义脚本扩展

    自定义脚本扩展在 Azure 虚拟机上下载并执行脚本. 此扩展适用于部署后配置.软件安装或其他任何配置/管理任务. 可以从 Azure 存储或 GitHub 下载脚本,或者在扩展运行时将脚本提供给 A ...

  3. 如何让PHP程序自动执行(后台)

    如何让php程序自动执行,这个就需要用到一个函数了: int ignore_user_abort ( [bool setting] )  定义和用法 ignore_user_abort() 函数设置与 ...

  4. centos7下自定义服务启动和自动执行脚本

    systemctl list-units --type=service #查看所有已启动的服务 systemctl enable httpd.service #加入开机自启动服务 systemctl ...

  5. 基于阿里云安装脚本扩展 之 自动安装mongodb及php扩展

    好久没有发布文章了,有点跟不上当初这个博客的初衷.为了使自己的博客更新不半途而废,今天特意再写了一个自动安装脚本,一样是基于阿里云的服务端安装脚本进行的扩展.闲话不说,直接放代码: #!/bin/ba ...

  6. VM Agent 和扩展程序

    VM Agent 和扩展程序 - 第 1 部分  Windows Azure基础结构服务最近宣布了一项新功能VM Agent.VMAgent是一个轻量级进程,用于启动由Microsoft或合作伙伴 ...

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

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

  8. 笔记之monkey自定义脚本

    自定义脚本的稳定性测试 常规MOnkey测试执行的是随机的事件流,但如果只是想让Monkey测试某个特定场景者时候就需要用到自定义脚本,Monkey支持执行用户自定义脚本的测试,用户之需要按照Monk ...

  9. 微信小程序学习笔记四 自定义组件

    1. 自定义组件 类似Vue或react中的自定义组件 小程序允许我们使用自定义组件的方式来构建页面 1.1 创建自定义组件 类似于页面, 一个自定义组件由json wxml wxss js 4个文件 ...

随机推荐

  1. 安装Eclipse Html Editor

    最近在eclipse中开发android项目,用到了jquery mobile框架,则会涉及到新建html文件,发现eclipse不自带新建html文件的插件,必须得新建一个其他形式的文件,譬如xml ...

  2. css3之border-color

    -moz-border-top-colors:上边框-moz-border-right-colors:右边框-moz-border-bottom-colors:下边框-moz-border-left- ...

  3. Servlet学习第一天--Servlet开发映射URL配置

    基础不扎实,从头学,认真记录笔记. 感谢@孤傲苍狼:http://www.cnblogs.com/xdp-gacl/p/3760336.html -为什么要配置? 由于客户端是通过URL访问web服务 ...

  4. OSG事件回调

    OSG中的节点主要使用回调(CallBack)来完成用户临时.需要每帧执行的工作.根据回调功能被调用的时机划分为更新回调(Update CallBack)和人机交互时间回调(Event CallBac ...

  5. Qt窗口的标题栏自绘

    因个人需要,要修改Qt Widget的标题栏,网上找了大半天,没有得到答案,但发现问的人比较多 所以现将找到的此文分享一下. (原文:http://www.qtsoftware.com/develop ...

  6. Android下pm 命令详解

    Sam在看相关PackageManager代码时,无意中发现Android 下提供一个pm命令,通常放在/system/bin/下.这个命令与Package有关,且非常实用.所以研究之.0. Usag ...

  7. ubuntu下vim与系统剪切板互相拷贝

    1.install xclip sudo apt-get install xclip 2. install gvim sudo apt-get install vim-gnome 此时使用 “+ 寄存 ...

  8. 面向对象程序设计-C++_课时12访问限制

    private: 只有这个类(相同的类,不同的对象也可以)的成员函数可以访问这些成员变量或函数 public: 任何人都可以访问 protected: 只有这个类以及它的子子孙孙可以访问

  9. 截取字符串一之slice

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  10. python SyntaxError: Non-ASCII character '\xd5' in file

    我使用的是python2.7, 在pycharm想运行程序,但是却报出了SyntaxError: Non-ASCII character '\xd5' in file 原因是因为源码中包含了中文注释, ...