在Global的Azure上,新的Portal和ARM已经正式发布。将来传统的portal和ASM将逐渐淡出。

China Azure将在今年下半年推出新的Portal管理界面和ARM功能(即IaaS v2)。本文将通过Azure CLI命令行的方式在ARM模式下,创建VM和负载均衡。

在ASM模式下,我们经常使用Endpoint和负载均衡SLB的功能。同样在ARM模式下,SLB也是一个非常重要的功能。但在ARM下和ASM的最重要的不同是:LoadBalancer不再是关联到VM上的属性了。就是说,VM可以没有公网IP,可以没有负载均衡对外提供服务。

这种部署模式更加符合企业应用的部署模式。在企业应用中,只有前端的展现层才会有与外部网络的连接,而其他应用层、数据库层等都不允许与外界沟通。

通过ARM部署的VM,就具有这种特性。

如图中所示:

负载均衡把Web请求分发到加入了负载均衡的VM上。

下面将一步一步的创建负载均衡的各个组件和VM。

1.创建Resource Group:

azure group create hwlb eastasia

2.在Resource Group中创建存储账户

azure storage account create -g hwlb -l eastasia --type LRS hweastasia

3.在Resource Group中创建Vnet

azure network vnet create hwlb hwlbvnet eastasia -a 10.0.0.0/

4.在Vnet中创建Subnet

azure network vnet subnet create hwlb hwlbvnet hwlbsubnet- -a 10.0.0.0/

5.创建Public-IP

azure network public-ip create -g hwlb -n hwlbpip -l eastasia -d hwlbpip -a static -i 

6.创建LoadBalancer

azure network lb create hwlb hwlb eastasia

7.定义LoadBalancer的前端IP和刚刚定义的Public-IP绑定

azure network lb frontend-ip create hwlb hwlb hwlbfndip -i hwlbpip

8.创建后端IP地址池(此时没有VM加入)

azure network lb address-pool create hwlb hwlb hwlbbndip

9.定义这个LoadBalancer的NAT规则

azure network lb inbound-nat-rule create -g hwlb -l hwlb -n ssh1 -p tcp -f  -b 

azure network lb inbound-nat-rule create -g hwlb -l hwlb -n ssh2 -p tcp -f  -b 

10.创建LoadBalancer的负载均衡规则

azure network lb rule create hwlb hwlb lbrule -p tcp -f  -b  -t hwlbfndip -o hwlbbndip

11.创建LoadBalancer的健康检查规则

azure network lb probe create -g hwlb -l hwlb -n healthprobe -p "tcp" -o  -i  -c 

12.检查创建的负载均衡

azure network lb show hwlb hwlb

至此,负载均衡已经创建完毕。下面将创建VM。

13.创建两个NIC,将NAT规则应用到两个网卡上

azure network nic create -g hwlb -n hwlbnic1-be --subnet-name hwlbsubnet- --subnet-vnet-name hwlbvnet -d "/subscriptions/xxxx/resourceGroups/hwlb/providers/Microsoft.Network/loadBalancers/hwlb/backendAddressPools/hwlbbndip" -e "/subscriptions/xxxx/resourceGroups/hwlb/providers/Microsoft.Network/loadBalancers/hwlb/inboundNatRules/ssh1" eastasia    

azure network nic create -g hwlb -n hwlbnic2-be --subnet-name hwlbsubnet- --subnet-vnet-name hwlbvnet -d "/subscriptions/xxxx/resourceGroups/hwlb/providers/Microsoft.Network/loadBalancers/hwlb/backendAddressPools/hwlbbndip" -e "/subscriptions/xxxx/resourceGroups/hwlb/providers/Microsoft.Network/loadBalancers/hwlb/inboundNatRules/ssh2" eastasia

14.创建两台VM

azure vm create --resource-group hwlb --name hwlbweb1 --location eastasia --vnet-name hwlbvnet --vnet-subnet-name hwlbsubnet- --nic-name hwlbnic1-be --availset-name hwlb-avset --storage-account-name hweastasia -u hengwei -p xxxx -z Standard_A1 --os-type Linux --image-urn openlogic:CentOS:6.5:6.5.

azure vm create --resource-group hwlb --name hwlbweb2 --location eastasia --vnet-name hwlbvnet --vnet-subnet-name hwlbsubnet- --nic-name hwlbnic2-be --availset-name hwlb-avset --storage-account-name hweastasia -u hengwei -p xxxx -z Standard_A1 --os-type Linux --image-urn openlogic:CentOS:6.5:6.5.

15.定义LoadBalancer的Distribution模式

在ASM中的SLB有3中Distribution Mode,分别是Default(5-tuple)、sourceIP(2-tuple)、sourceIP Protocol(3-tuple)。为实现Session Sticky,我们会选择sourceIP的分布模式。具体命令如下:

azure network lb rule set -d sourceIP hwlb hwlb lbrule

此命令需要最新版的Azure CLI-0.9.15。如果版本不够,请升级。

在ARM的环境下,LoadBalancer的实现方式与ASM的有类似,但要比ASM好。

在Global Azure上用Azure CLI创建ARM的VM和面向公网的负载均衡的更多相关文章

  1. 在 Azure 中使用公用 IP 创建多 NIC VM

    Russ Slaten  2014年 11 月 18日下午 4点 我们最近宣布了支持具有多个网络接口控制器 (NIC) 的虚拟机 (VM).我仍在努力了解此功能适用的所有新场景,但首先,我希望亲自测试 ...

  2. Go Global 之怎样在全球Azure上使用Azure Free Account

    随着中国用户出海的越来越多,同学们自学Azure Global 功能的积极性也越来越高.怎样开启Azure Global 账号,有哪些Global Azure的功能可以免费使用,能不能用国内的信用卡和 ...

  3. Azure上七层负载均衡APP Gateway

    Azure的SLB和ILB是最常用的4层负载均衡工具.但有些场景是7层的负载均衡,SLB和ILB就无能为力了. Azure上已经推出了APP Gateway的服务,就是7层负载均衡的负载均衡器. 如上 ...

  4. 在公有云AZURE上部署私有云AZUREPACK以及WEBSITE CLOUD(一)

    (一)前言 本文主要介绍了实践部署AzurePack的Website Cloud的过程.在部署之前, 首先要对AzurePack有个基本的了解.   Azure Pack是微软的私有云方案,具有弹性. ...

  5. Azure的负载均衡机制

    负载均衡一直是一个比较重要的议题,几乎所有的Azure案例或者场景都不可避免,鉴于经常有客户会问,所以笔者觉得有必要总结一下. Azure提供的负载均衡机制,按照功能,可以分为三种:Azure Loa ...

  6. Microsoft Azure 配置负载均衡

    负载均衡大家都知道是什么了吧,就不用介绍了.如何在 microsoft Azure 上配置了?创建两台虚拟机,并加入如云服务.然后在远处登录上去,有时你想在两台虚拟机上通信,怎么办,比如mymv2 p ...

  7. Azure Load Balancer(一) 为我们的Web项目提供负载均衡

    一,引言 上节,我们讲到使用 Azure Traffic Manager 为我们的 Demo 项目提供负载均衡,以及流量转发的功能.但是Azure 提供类似的功能的服务远远不止这一个,今天我们就来讲一 ...

  8. Linux上使用Azure CLI来管理Azure

    在Windows上我们有强大的Powershell提供各种命令来管理Azure的服务,在Linux上微软提供了基于Node.JS的跨平台的Azure Command Line来帮助Linux用户来管理 ...

  9. 使用 Azure CLI 创建 Windows 虚拟机

    Azure CLI 用于从命令行或脚本创建和管理 Azure 资源. 本指南详细介绍如何使用 Azure CLI 部署运行 Windows Server 2016 的虚拟机. 部署完成后,我们连接到服 ...

随机推荐

  1. Kafka具体解释二、怎样配置Kafka集群

    Kafka集群配置比較简单,为了更好的让大家理解.在这里要分别介绍以下三种配置 单节点:一个broker的集群 单节点:多个broker的集群 多节点:多broker集群 一.单节点单broker实例 ...

  2. 3.25课·········JavaScript的DOM操作

    1.DOM的基本概念 DOM是文档对象模型,这种模型为树模型:文档是指标签文档:对象是指文档中每个元素:模型是指抽象化的东西. 2.Window对象操作 一.属性和方法: 属性(值或者子对象): op ...

  3. 简介windows的环境变量

    环境变量一般是指在操作系统中用来指定操作系统运行环境的一些参数,比如临时文件夹位置和系统文件夹位置等.这点有点类似于DOS时期的默认路径,当你运行某些程序时除了在当前文件夹中寻找外,还会到设置的默认路 ...

  4. debian下为stm32f429i-discovery编译uboot、linux内核和根文件系统

    交叉编译器:arm-uclinuxeabi-2010q1 交叉编译器下载下来后解压,然后将其中bin文件夹路径加入到PATH变量中. 根据<debian下烧写stm32f429I discove ...

  5. 剪辑的楼天城的ACM之路

    楼天城楼教主的acm心路历程(剪辑) 利用假期空闲之时,将这几年GCJ,ACM,TopCoder 参加的一些重要比赛作个回顾.昨天是GCJ2006 的回忆,今天时间上更早一些吧,我现在还清晰记得3 年 ...

  6. LINQ 学习路程 -- 开篇

    Enumerable: Queryable:

  7. GIT使用[git remove untracked working file]

    使用GIT进行merge的时候, git merge --no-ff master 如果merge之后出现问题, 想进行回退, 可以使用 git reset --hard HEAD 来回退到最新的版本 ...

  8. NTFS文件系统的主要优点体现在以下三个方面

    1.NFTS格式具有用户权限的控制管理功能 2.NTFS有更好的压缩率 3.NTFS具有日志功能,可以提高系统安全性

  9. 京东自营,你TM太坑了。

    双12来了,京东自营好坑.昨天(12月6日)看的一条秋裤,89元,今天准备买,居然涨到了119,他大爷的. 京东你大爷的.

  10. 分享知识-快乐自己:Linux下安装 erlang 及 RabbitmMQ

    Linux下安装 erlang 及 RabbitmMQ: 下载地址一  下载地址二 下载地址三 安装依赖: yum install ncurses-devel 安装 erlang: 1):下载Erla ...