最近我们有客户经常谈到一个问题,我创建了不同的云服务。但是我的目的是在同一个云服务下面建立不同的虚拟机,现在我全部搭建完成,但是我发现我建的虚拟机错了,怎么办呢?

我辛辛苦苦建立的虚拟机,竟然不在同一个云服务里面。我又不想出太多钱,有办法么?当然有办法,办法就是利用我们的Powershell 脚本完成我们的虚拟机迁移我们的虚拟机到同一个云服务下面,这个按照我们下面的步骤走起:

首先我们当然是下载Azure Powershell.这个请参考我博客中前面提到的Azurepowershell.

接下来我们来执行Powershell 命令,这里面首先执行倒入Subscription 账户,执行下面这条命令:add-azureaccount -environment Azurechinacloud(如果你的账户在全球版的是AzureCloud).

由于目前我们有多个Azure操作账户,由于目前是第一个azure账户,我需要将第二个账户设置为操作账户:

我们接下来利用select azuresubscription 命令来选择第二个订阅账户:

OK,接下来我们看看是不是我们自己的设定的账户是不是有我们所建立的机器,我们来Get一下我们的VM,get-azurevm

我们来看看具体的虚拟机,我们希望将我们的PilotS1和PilotS2合并到同一个云服务里面,我们先来看看这两台机器的具体信息,我们首先看看PilotS1,目前部署在PilotTest云服务中:

我们再看看PilotS2的信息:

我们能看到在不同云服务里面有不同的机器,我们由于特殊原因需要将这两台机器合并到同一个云服务,怎么办呢?按照我们的顺序一个一个来吧:

1. 首先我需要将需要合并到另外一个云服务的配置文件导出来,Export-AzureVM -ServiceName pilots2 -name pilots2 -Path d:\azuremove.xml:

2.在我们的D盘就有一个文件,就是我们刚才导出的那个文件:

3.接下来,我们 就需要将这台机器从云服务中移除,注意是移除不是删除。我们执行如下的命令:

 


4. 由于导向到同一个云服务,意味着端口可能重复,为了避免这个状况,我们需要修改默认的端口到需要合并的云服务。因此我们需要修改下这个文件:

5. 接下来我们利用这个xml 文件来创建我们的虚拟机,所有的配置文件和访问账户都在我们的文件中,所以他其实就是执行了挂载程序来挂载我们的应用,但是很遗憾,报错了,咋办呢?

6. 我们还是回到我们的Windows Azure Powershell 界面,执行如下的命令来查询我们目前的Subscription ID:

7. 接下来我们来设定我们的SubscriptionID 和我们存储账户对应:

8.  我们接下来再执行下刚才的命令:

9.接下来我们来看看我们的虚拟机状态:

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐