Azure运维系列 8:使用现有磁盘创建虚拟机-阿里云开发者社区

开发者社区> 技术小胖子> 正文

Azure运维系列 8:使用现有磁盘创建虚拟机

简介:
+关注继续查看

今天跟大家分享一个在Azure日常运维中经常会用到的技巧,通过存储在存储帐户中的VHD快速创建虚拟机。整体的步骤非常简单,需要使用到带有Azure模块的PowerShell。如果没有安装请通过以下地址进行安装:


首先,我们需要找到我们事先准备好的虚拟机OS磁盘VHDURL地址。在Azure门户中找到对应的存储帐户:



然后在存储帐户中找到Blob存储。



找到对应的VHD文件,并复制它的URL



最新版Azure PowerShell 下载地址:

https://github.com/Azure/azure-powershell/releases



关于更多安装和使用Azure PowerShell的文章请浏览:

http://reinember.blog.51cto.com/2919431/1857099


装好Azure PowerShell,然后我们首先登录Azure RM帐号。通过以下命令:

Login-AzureRmAccount

如果是中国版Azure,必须加上-EnvironmentName AzureChinaCloud



登录好后会显示我们的订阅信息,请确认订阅ID和订阅名称。


然后我们就需要定义一些变量,为我们创建虚拟机做准备。

首先是通过以下来定义虚拟机名称:

$VMName = "xxx"

然后是指定资源组:

$ResourceGroup = "xxx"



然后创建或选择现有的虚拟网络,并指定虚拟网络的子网ID

$vnet = Get-AzureRmVirtualNetwork -Name <VNET Name> -ResourceGroupName $resourceGroup

$subnet01 = Get-AzureRmVirtualNetworkSubnetConfig -Name <Subnet Name> -VirtualNetwork $vnet



然后我们需要创建一个公网IP地址,通过以下命令:

$publicIP = New-AzureRmPublicIpAddress -Name <IP Name> -ResourceGroupName $resourceGroup -Location "China East" -AllocationMethod Static -IpAddressVersion IPv4 Force


然后创建虚拟机的网卡,其中需要指定虚拟网络对应子网中虚拟机的IP地址即内网IP地址:

$NIC = New-AzureRmNetworkInterface -Name <Network Interface Name> -ResourceGroupName $resourceGroup -Location "China East" -SubnetId $subnet01.Id -PublicIpAddressId $publicIP.Id -PrivateIpAddress <Internal IP Address>


然后需要配置配置要使用的存储账号以及系统盘名称,最重要的是虚拟磁盘的位置,就是第一步中我们复制的URL

$storage = Get-AzureRmStorageAccount -Name <storage account name> -ResourceGroupName $resourceGroup

$OSDiskName = $vmname + "_OSDisk"

$OSDiskUrl = "https://xxx/vhds/xxx.vhd"



到此我们的准备工作就已经完成了,然后需要将以上的配置信息生成虚拟机的配置:

$vmconfig = New-AzureRmVMConfig -VMName $vmname -VMSize Standard_A1 | Set-AzureRmVMOSDisk Name$OSDiskName -VhdUri $OSDiskUrl -CreateOption attach -Windows | Add-AzureRmVMNetworkInterface -Id $NIC.Id -Primary



然后通过PowerShell创建新的资源组类型虚拟机:

New-AzureRmVM -ResourceGroupName $ResourceGroup -Location "China East" -VM $vmconfig



稍等片刻,回到我们的Azure管理门户中,就可以看到虚拟机已经正在创建了。


以上步骤和操作适用于:


Global Azure

China Azure

虚拟机

云服务



什么情况需要使用自定义磁盘创建虚拟机呢?



比如虚拟机是由其他订阅迁移过来的,或是不小心删除掉虚拟机磁盘仍然存在的情况。希望以上内容对有需要的朋友能够有所帮助。








 本文转自 reinxu 51CTO博客,原文链接:http://blog.51cto.com/reinember/1977539,如需转载请自行联系原作者

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
PostgreSQL 10.1 手册_部分 III. 服务器管理_第 29 章 监控磁盘使用
第 29 章 监控磁盘使用 目录 29.1. 判断磁盘用量 29.2. 磁盘满失败 本章讨论如何监控PostgreSQL数据库系统的磁盘使用情况。 本文转自PostgreSQL中文社区,原文链接:第 29 章 监控磁盘使用
712 0
PostgreSQL 10.1 手册_部分 III. 服务器管理_第 29 章 监控磁盘使用_29.1. 判断磁盘用量
29.1. 判断磁盘用量 每个表都有一个主要的堆磁盘文件,大多数数据都存储在其中。如果一个表有着可能会很宽(尺寸大)的列, 则另外还有一个TOAST文件与这个表相关联, 它用于存储因为太宽而不能存储在主表里面的值(参阅第 66.2 节)。
852 0
分享录制的正则表达式入门、高阶以及使用 .NET 实现网络爬虫视频教程
我发布的「正则表达式入门以及高阶教程」,欢迎学习。 课程简介 正则表达式是软件开发必须掌握的一门语言,掌握后才能很好地理解到它的威力; 课程采用概念和实验操作 4/6 分隔,帮助大家理解概念后再使用大量的实例加深对概念的理解; 实例操作是对概念最好的理解,也是学习新语言最有效的办法; 在课程中也穿插着大量软件开发的技巧和大家分享; 应该是把晦涩的正则表达式讲解的最生动的课程; 掌握了正则表达式后,您一定会觉得这是一门最值得掌握的语言。
922 0
PostgreSQL 10.1 手册_部分 III. 服务器管理_第 29 章 监控磁盘使用_29.2. 磁盘满失败
29.2. 磁盘满失败 一个数据库管理员最重要的磁盘监控任务就是确保磁盘不会写满。一个写满了的数据磁盘可能不会导致数据的崩溃,但它肯定会让系统变得不可用。如果保存 WAL 文件的磁盘变满,会发生数据库服务器致命错误并且可能发生关闭。
1091 0
教你如何免费使用一款免运维、无限容量的表存储服务
作者:李欣前言表格存储是一款用于存储海量非关系型(NoSQL)结构化数据的云原生表存储服务,提供 Schemaless 表结构设计、多元化索引以及数据更新实时订阅通道,支撑 PB 级数据存储的同时能提供丰富且灵活的数据查询、检索和分析能力。对接了各大主流开源计算引擎,能灵活的实现流批一体分析。通过阅读本文您将了解如何免费开通和使用表格存储服务,即刻拥有一个完全免运维、弹性、高性能、低成本的表存储服
924 0
使用MaxCompute进行纽约的士拼车分析
我们通过将纽约的士的时空数据转换成为图的方法,使用odps自带的graph分析工具来进行拼车分析。
2863 0
21119
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载