在Global Azure上用Azure CLI创建ARM的VM和面向公网的负载均衡
在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和面向公网的负载均衡的更多相关文章
- 在 Azure 中使用公用 IP 创建多 NIC VM
Russ Slaten 2014年 11 月 18日下午 4点 我们最近宣布了支持具有多个网络接口控制器 (NIC) 的虚拟机 (VM).我仍在努力了解此功能适用的所有新场景,但首先,我希望亲自测试 ...
- Go Global 之怎样在全球Azure上使用Azure Free Account
随着中国用户出海的越来越多,同学们自学Azure Global 功能的积极性也越来越高.怎样开启Azure Global 账号,有哪些Global Azure的功能可以免费使用,能不能用国内的信用卡和 ...
- Azure上七层负载均衡APP Gateway
Azure的SLB和ILB是最常用的4层负载均衡工具.但有些场景是7层的负载均衡,SLB和ILB就无能为力了. Azure上已经推出了APP Gateway的服务,就是7层负载均衡的负载均衡器. 如上 ...
- 在公有云AZURE上部署私有云AZUREPACK以及WEBSITE CLOUD(一)
(一)前言 本文主要介绍了实践部署AzurePack的Website Cloud的过程.在部署之前, 首先要对AzurePack有个基本的了解. Azure Pack是微软的私有云方案,具有弹性. ...
- Azure的负载均衡机制
负载均衡一直是一个比较重要的议题,几乎所有的Azure案例或者场景都不可避免,鉴于经常有客户会问,所以笔者觉得有必要总结一下. Azure提供的负载均衡机制,按照功能,可以分为三种:Azure Loa ...
- Microsoft Azure 配置负载均衡
负载均衡大家都知道是什么了吧,就不用介绍了.如何在 microsoft Azure 上配置了?创建两台虚拟机,并加入如云服务.然后在远处登录上去,有时你想在两台虚拟机上通信,怎么办,比如mymv2 p ...
- Azure Load Balancer(一) 为我们的Web项目提供负载均衡
一,引言 上节,我们讲到使用 Azure Traffic Manager 为我们的 Demo 项目提供负载均衡,以及流量转发的功能.但是Azure 提供类似的功能的服务远远不止这一个,今天我们就来讲一 ...
- Linux上使用Azure CLI来管理Azure
在Windows上我们有强大的Powershell提供各种命令来管理Azure的服务,在Linux上微软提供了基于Node.JS的跨平台的Azure Command Line来帮助Linux用户来管理 ...
- 使用 Azure CLI 创建 Windows 虚拟机
Azure CLI 用于从命令行或脚本创建和管理 Azure 资源. 本指南详细介绍如何使用 Azure CLI 部署运行 Windows Server 2016 的虚拟机. 部署完成后,我们连接到服 ...
随机推荐
- nginx的location
nginx的location分为普通location和正则location. 在普通location中,匹配规则是最大前缀匹配. 在正则location中,匹配规则是先到先得匹配.(最先匹配的正则lo ...
- Unknown Entity namespace alias 'BaseMemberBundle'.
$em = $this->getDoctrine()->getManager('member');//要记得写上member $repo = $em->getRepository(' ...
- 又一次发现Oracle太美之awr相关脚本简介
又一次发现Oracle太美之awr相关脚本简介 大家知道在$ORACLE_HOME/rdbms/admin下,有例如以下的相关脚本(我的环境为11.2.0.4.2): [oracle@rh64 ~]$ ...
- QT里面的delay使用
void delay() { QTime dieTime= QTime::currentTime().addSecs(1); while( QTime::currentTime() < dieT ...
- Nginx启动与停止
参考:https://www.phusionpassenger.com/library/install/nginx/install/oss/rubygems_rvm/ Starting Nginx Y ...
- 【leetcode】Balanced Binary Tree
Given a binary tree, determine if it is height-balanced. For this problem, a height-balanced binary ...
- POJ3660 暑假集训-最短路H题floyd
http://acm.hust.edu.cn/vjudge/contest/view.action?cid=82829#rank#include<iostream> #include& ...
- 在unigui中为组件添加hint
//改变hint的样式procedure TUniForm1.UniFormShow(Sender: TObject);var i: Integer;begin for I := 0 to Self. ...
- 算法(Algorithms)第4版 练习 2.1.4
E A S Y Q U E S T I O N A E S Y Q U E S T I O N A E S Y Q U E S T I O N A E S Y Q U E S T I O N A E ...
- JavaWeb -- Cookie应用实例 -- 购物历史记录
1. 页面一:主页面 页面二: 详细显示页面 Demo2 负责页面一, 显示商品清单和历史记录 Demo3负责页面二 ...