用DockerMachine创建Azure虚拟主机

极速动力10个月前帮助181

搭建环境向来是一个重复造轮子的过程,则把用户搭建环境的各类方案汇集在了一起。笔者在《简介》一文中演示了使用在本地的主机安装环境。并且在云估算大爆燃的明天,真正让我们头痛的可能是五花八门的IaaS平台!这才是真正发挥威力的地方。

把与平台相关的部份封装到了不同的驱动中。只要为某个IaaS平台提供了驱动程序,就才能支持该平台上的操作。像Azure、awsGCE、等大的厂商已经被支持。本文将以Azure为例介绍使用在IaaS上创建并管理虚拟主机

倘若您还不了解,请先移步笔者的前两篇文章补充相关知识:《简介》、《详解》。

打算

我们的目标是通过在Azure里面创建一台安装了的虚拟主机。由于Azure上的所有资源都必须通过订阅帐号就能授权使用,所以我们首先得打算一个Azure的订阅帐号。国外的Azure仍然在搞一元试用的活动,赶紧去申请一个吧!

Azure建议我们把资源通过group组织上去。为了演示便捷,我们新创建一个名为的group储存即将创建的虚机:

此时group中还没有任何内容。

创建云端虚机

使用,一个命令才能搞定

docker-machine create \
    --driver azure \
    --azure-environment AzurePublicCloud \
    --azure-subscrIPtion-id xxxxxxxxxxxxxxxxxxxxxxxxxx \
    --azure-location "East Asia" \
    --azure-size Standard_A0 \
    --azure-image canonical:UbuntuServer:16.04.0-LTS:latest \
    --azure-ssh-user nick \
    --azure-resource-group nickcontainer \
    --azure-availability-set testvmtiggeras \
    testvmtigger

使用国外Azure的用户请把参数--azure-更改为--azure-。

执行前面的命令,首先会验证我们是否有权限访问Azure进行操作:

这时执行流程挪开了,上图的输出中说的很明晰,须要在浏览器中访问,之后输入一个验证码:

填入验证码并继续:

在此处输入你的订阅帐号和密码就可以进完成身分验证了:

此时身分认证过程早已完成,可以关闭浏览器了。回到刚刚的命令行,发觉又接着往下执行了。整个过程大约须要几分钟,直至输出下边的内容:

让我们瞧瞧虚机的状态:

早已处于""状态,连上试试:

可以看见服务器端版本是17.05.0-ce,远低于本地顾客端的版本。

再让我们回到Azure的上,瞧瞧group中新创建了什么内容:

一看吓一跳,如何那么多东西?虽然玩过Azure虚机的朋友都晓得,当我们创建一台虚机的同时会创建这台虚机依赖的所有资源,例如储存、虚拟网路、网络安全组、可用集合网卡、公有IP地址等等。这儿我们只关心两点(上图中的红框框)就足够了:第一,虚机被成功创建了;第二,所有资源的区域都在东亚。

经过一轮检测,我们可以确定命令挺好的完成了任务:在Azure上创建了虚机,但是安装了环境。下边我们解释一下命令中主要的几个参数。

参数解读

--azure

参数告诉我们操作的对象在Azure云上,须要使用Azure相关的插口来进行操作。

--azure-

虽然存在多套互相独立的Azure云环境,例如国外的。所以须要用这个参数来指定具体的Azure云环境。默认值是,指向我们说的Azure国际版。联接国外版须要指定为。

--azure--id

这个是与你帐号关联的订阅ID,Azure内部的操作都是依赖于这个ID的。

--azure-"EastAsia"

Azure在全球各地布署了好多的数据中心,我们可以通过指定创建的资源所在的位置。这个位置其实是越紧靠用户越好,国外的国际版用户选择东亚稍为好一点。

--azure-size

Azuer依照不同的size(虽然就是配置)对虚拟机进行收费,demo中选择的大约是这个样子:

尽管配置不高,但作为demo来说早已足够用了。MS提供了十分丰富的size可供选择,假如你要创建生产环境的虚机实例,可能须要选择每位月几十到几百美元的实例。

--azure-image::16.04.0-LTS:

对于生产环境来说,虚机的镜像是至关重要的。Demo中使用了16.04的镜像,其实我们可以在这儿指定Azure支持的任何虚拟机镜像。这点可比只能使用的驱动强多了!

--azure-ssh-usernick

可以通过SSH登入到虚拟机中的用户,让我们试一下:

直接以用户nick登陆成功了,虽然早已为这个用户配置了通过密钥登陆的相关信息。

--azure--group

新创建的资源所属的group。

去除资源

除了可以创建虚机,还可以管理虚机。所谓的管理,仅仅是能否stop、start和吗?答案是可以有更多的功能,而且须要相关驱动的支持。例如rm命令,对于azure驱动来说,它是可以把刚刚创建那一坨东西几乎全部杀死的!执行下边的命令:

$ docker-machine rm testvmtigger

这是一个很危险的操作,所以会有一个确认执行的步骤,之后就真的把Azure上的资源给杀死了(不仅储存部份):

尽管笔者认为这真的是一个很强很酷的功能,但还是要警告自己和朋友们:一定要慎用!

总结

云服务为我们打开了一扇新的房门,其实对运维人员来说也带来了众多的挑战。怎么选择对云端操作友好的工具就成了我们提高效率的重要途径。就操作来说,在这个方向上做了挺好的尝试。真心的希望这个工具才能不断的建立,成为运维人员手中的一把利剑。

相关文章:

相关文章

「运维有小邓」给企业文件服务器加把锁(文件服务器审计)

一、文件服务器介绍 文件服务器是最基本的系统服务器。顾名思义,它的功能是储存和管理数据。构建部门和组织文件夹来储存和提供数据、程序、文档等。在网路办公系统的初期,每位文件服务器都有其单独的访问配置;明...

Apache虚拟主机在校园网中的应用

【相似文献】 中国刊物全文数据库 前20条 1 高恒聚;;校园网升级改建方案案例剖析[J];山东笔记本;2011年05期 2 陈卫民;;基于QinQ技术的院校校园网研究[J];广东城市大学学报(自然科...

用友NC软件被locked恐吓病毒功击服务器oracle数据库中了恐吓病毒

金蝶NC软件是一款企业级管理软件,广泛应用于各行各业的集团企业中。但是,近来有关恐吓病毒对金蝶NC软件的功击早已造成了广泛的关注和忧虑。下边将为你们介绍一下有关功击加密金蝶NC软件的形式,并给出合理的...