在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. 九度OJ 1255:骰子点数概率 (递归、DP)

    时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:316 解决:29 题目描述: 把n个骰子扔在地上,所有骰子朝上一面的点数之和为S.输入n,打印出S的所有可能的值出现的概率. 输入: 输入包 ...

  2. spring 注入属性

    一.注入对象类型的数据 1.配置文件 User类与UserService类均需要创建对象.所以都配置其相应的bean类,另外user需作为userService的属性注入,所以userService需 ...

  3. centos7 使用postgres

    1: http://www.cnblogs.com/think8848/p/5877076.html 2:http://blog.csdn.net/xuaa/article/details/52262 ...

  4. IOS - 执行时 (多态)

    一 多态概述          多态指同一操作作用于不同的对象.能够有不同的解释.产生不同的执行结果.它是面向对象程序设计(OOP)的一个重要特征,动态类型能使程序直到执行时才确定对象的所属类.其详细 ...

  5. ADT和Android SDK的安装

    本文主要涉及Android开发环境搭建时的Eclipse.ADT及Android SDK的安装方法,还有遇到的两个问题及其解决办法.其中,ADT的安装介绍了在线和离线安装两种方式.  1.安装ecli ...

  6. 一对多 添加表单 cocoon

    gem 'cocoon' - javascript "cocoon.js" https://note.youdao.com/web/#/file/XCiivnE/note/WEB4 ...

  7. php关于<<<的用法

    Heredoc技术,在正规的PHP文档中和技术书籍中一般没有详细讲述,只是提到了这是一种Perl风格的字符串输出技术.但是现在的一些论坛程序,和部分文章系统,都巧妙的使用heredoc技术,来部分的实 ...

  8. linux系统的nobody用户

    正如window系统在安装完毕后会自动建立一些用户账号,linux也会生成一些目标是为了完成特定任务的账号,如nobody和ftp 首先,nobody是一个普通用户,没有特权,他存在的目的是为了让任何 ...

  9. DEDE 列表页调用如 标题,时间,简介等

    以下是直接从板子中复制出来的,CSS自已根据需要写下就行.在调时简介长度不知道怎么控制,现在说下方法1. infolen='30' 这个可以2. 系统设置 >其它设置 >内容简介长度填下就 ...

  10. eDocEngine_3.0.4.273的手动安装

    1.安装FastReport 5: 2.编译Shared3(如对Delphi2007,打开gtSharedD11.groupproj项目文件),将产生的bpl.dcp文件分别拷贝到C:\Users\P ...