Azure VMSS (3) 修改VM Template并创建VMSS
《Windows Azure Platform 系列文章目录》
在开始本章内容之前,我们需要准备好Azure VM的镜像,具体可以参考:Azure VMSS (2) 对VM执行Generalize操作
1.我们先查看到之前创建的镜像(Image)的资源ID。我们首先点击All Service,搜索Image,点击下图的Images

2.找到我们之前创建的Azure Image的资源ID
我们复制下面的Resource ID里面的内容,到记事本上

3.我们创建的VMSS,可以添加到新的Azure Virtual Network里,或者加入到现有Virtual Network里。
我们这里演示加入新的VNet,可以准备以下资源:
(1)创建1个新的资源组,命名为VMSS-RG
(2)在这个资源组里,创建1个新的Azure Virtual Network,我们命名为VMSS-VNet
(3)在这个VNet里,创建1个子网,命名为subnet-1
4.我们需要用到的VM Template,请参考:
请注意这个template是手动横向扩展,如果需要自动横向扩展,可以在Azure Portal进行配置
5.熟悉Azure Template的读者都知道,Azure Template有两个json文件。
template.json是描述部署所需要的资源,比如VM, Virtual Network等
parameters.json,是描述部署资源的参数,比如虚拟机的机器名,登录的用户名和密码,虚拟网络的用户名和密码等等
6.我们修改vmssimge-customImage.json里面的参数
(1)vmSku,我们修改defaultValue,设置为每个VM的Instance大小。
(2)vmssName,我们修改defaultValue,设置为VMSS的名称
(3)instanceCount,我们修改defaultValue,设置为VMSS的节点数量
(4)adminUsername,我们修改defaultValue,设置为VMSS节点登录的用户名
(5)adminPassword,我们修改defaultValue,设置为VMSS节点登录的密码
(6)existingVnetName,我们修改defaultValue,设置为现有的虚拟网络名称
(7)existingSubnetName,我们修改defaultValue,设置为现有虚拟网络的子网名称
(8)existingVnetResourceGroup,我们修改defaultValue,设置为现有资源组名称。请注意上面的资源都要保存在这个资源组里
(9)最后,我们还要修改virtualMachineProfile里面imageReference信息,把id设置为我们在步骤2的Resource ID
7.把vmssimge-customImage.json文件修改后,保存在本地PC的D盘根目录
8.安装并运行Azure PowerShell命令,具体请参考:
修改下面的参数
Add-AzureRmAccount -Environment AzureChinaCloud $subscriptionName='[输入订阅名称]' Select-AzureRmSubscription -SubscriptionName $subscriptionName $rgName='资源组名称' New-AzureRmResourceGroupDeployment -Name VMSSDeployment -ResourceGroupName $rgName -TemplateFile 'D:\vmssimge-customImage.json'
9.PowerShell执行过程中,我们可以观察到,Azure Template创建了1个VMSS。如下图:

10.点击Instances发现,虽然我们在template中设置了VMSS Instance数量为3,但是还是会创建若干个节点

11.我们稍等片刻后,VMSS 部署完成,Instance数量就会变成我们设置的数量3

12.我们查看VMSS之前的公网IP地址,名称为vmssxxxlb,就可以看到我们在Azure Image里面安装的IIS欢迎界面。图略
13.如果我们要配置自动横向扩展的话,我们可以按照下图操作
点击Scaling,增加一个横向扩展的条件,点Add a Rule。我们可以根据CPU利用率,或者网络流量(Network In, Network Out),设置自动横向扩展

Azure VMSS (3) 修改VM Template并创建VMSS的更多相关文章
- Azure VMSS (2) 对VM执行Generalize操作
<Windows Azure Platform 系列文章目录> 在本章中,笔者将介绍如何创建Azure Template镜像模板. 1.首先,我们先创建1台Windows Server 2 ...
- 在 Azure 中的 Linux VM 上创建 MongoDB、Express、AngularJS 和 Node.js (MEAN) 堆栈
本教程介绍如何在 Azure 中的 Linux VM 上实现 MongoDB.Express.AngularJS 和 Node.js (MEAN) 堆栈. 通过创建的 MEAN 堆栈,可以在数据库中添 ...
- 如何使用 Jenkins、GitHub 和 Docker 在 Azure 中的 Linux VM 上创建开发基础结构
若要将应用程序开发的生成和测试阶段自动化,可以使用持续集成和部署 (CI/CD) 管道. 本教程介绍如何在 Azure VM 上创建 CI/CD 管道,包括如何: 创建 Jenkins VM 安装并配 ...
- 使用 Azure CLI 2.0 从自定义磁盘创建 Linux VM
本文说明如何在 Azure 中上传自定义的虚拟硬盘 (VHD) 或复制现有 VHD,并从自定义磁盘创建 Linux 虚拟机 (VM). 可以根据要求安装并配置 Linux 分发版,并使用该 VHD 快 ...
- 【Azure Developer】使用Java SDK代码创建Azure VM (包含设置NSG,及添加数据磁盘SSD)
在参考Azure官方文档进行VM创建时,发现其中没有包含如何设置NSG的内容,以及如何在创建时就添加数据磁盘的代码(设置磁盘为SSD类型).本文的内容以"使用 Java 创建和管理 Azur ...
- Azure ARM (11) ARM模式下,创建虚拟机并配置负载均衡器
<Windows Azure Platform 系列文章目录> 本文内容比较多,请大家仔细阅读,谢谢! 在前几章中,我们做了准备工作: 1.创建ARM Resouce Group,叫Lei ...
- Azure的两种关系型数据库服务:SQL Azure与SQL Server VM的不同
Azure的两种关系型数据库服务:SQL Azure与SQL Server VM的不同 <Windows Azure Platform 系列文章目录> 如果熟悉Windows Azure平 ...
- 如何在 Azure 中均衡 Linux 虚拟机负载以创建高可用性应用程序
负载均衡通过将传入请求分布到多个虚拟机来提供更高级别的可用性. 本教程介绍了 Azure 负载均衡器的不同组件,这些组件用于分发流量和提供高可用性. 你将学习如何执行以下操作: 创建 Azure 负载 ...
- 详细故障排除步骤:针对 Azure 中到 Windows VM 的远程桌面连接问题
本文提供详细的故障排除步骤,用于为基于 Windows 的 Azure 虚拟机诊断和修复复杂的远程桌面错误. Important 若要消除更常见的远程桌面错误,请务必先阅读远程桌面的基本故障排除文章, ...
随机推荐
- 重写console.log的一些理解
关于重写console.log的方式通常都是这样的: console.log = (function(oriLogFunc){ return function(str) { oriLogFunc.ca ...
- php 搜索附近人及SQL语句的写法
/** * 根据经纬度和半径查询在此范围内的所有 * @param String $lat 纬度 * @param String $lng 经度 * @param float $radius 半径 * ...
- 7.1 通用的职责分配软件原则 GRASP原则一: 创建者 Creator
1.GRASP原则一: 创建者 Creator Who should be responsible for creating a new instance of some class 由谁来负责创 ...
- 基于socket实现http请求
异步非阻塞模块原理 # 基于socket实现http请求 import socket # 多路IO复用模块 import select socket_list= [] url_list = [&quo ...
- html5(一)
HTML5 三个基本特色:结构.样式.功能. <!DOCTYPE html ><html lang="en"><head> <meta c ...
- python url 下载并保存
方法一:用urllib import jsonimport urllib url_model='{"version":"2","url":& ...
- 关于WebUpload插件的使用
上传的路径地址: 删除图片时也应该注意: unlink('/Upload/1.jpg')删除不了 unlink('./Upload/1.jpg')可以删除. 也就是说,绝对路径删除不了 相对路径可以 ...
- Java正则表达式易错题
以下代码将打印出 public static void main (String[] args) { String classFile = "com.jd.". replaceAl ...
- 浮动滚动条 slimScroll
1.引入jquery 2.映入slimScrolljs :<script src="https://cdn.bootcss.com/jQuery-slimScroll/1.3.8/jq ...
- 输入、输出与Mad Libs游戏
name1 = input('请输入一个名字:') name2 = input('再输入一个名字:') article = input('请输入一种物品:') print('{}掉进了{},{}去救她 ...