AWS - Elastic load Balance的创建使用 (上)

EC2里面有个很重要的功能就是Elastic Load Balancer,配合Auto Scaling和RDS的Multip-AZ使用,可以实现非常经济高效的高可用的结构。

我们先看看最基本的一个ELB结构。ELB根据DNS以轮换的方式对用户的请求实现数据分流和高可用。

以下的实验设计来自amazon的企业培训教案(豆子在网上找到的,还不错)。这里我会创建2个Web Server,并通过user data自动配置bootstrap的shell脚本。这样的好处是我不需要在搭建完服务器之后再手动的配置一遍了。

创建EC2的实例过程很简单,在第三步的时候需要在高级里面添加一些Shell脚本。该命令会从指定的url下载一个sh脚本并执行

这个sh的内容就是自动安装LAMP的相关程序,并在apache的目录下解压预先配置的一些php文件

虚拟机创建好了

登录看看脚本执行没有,可以看见,examplefiles.zip已经解压,这样当我们打开该服务器的公网地址或者DNS的时候,会自动加载index.php 文件,并显示一些我们希望看见的数据作为对比

看看index.php文件是什么内容

在浏览器上面输入EC2的DNS以后可以看见该虚拟机的实例号,AZ区域和CPU的负荷

现在,我们来创建一个ELB

输入名字和子网,这里我们只需要简单的80端口

Ping Protocol是用来做健康检查的,每隔5秒,会自动Ping 80端口确认

配置Security group

把我们之前配置的2个Web Server加入ELB

最后确认一下即可

这样就创建好了。注意他的Port Configuration,ELB有点类似代理服务器或者NAT服务器,所以80端口进入他,并转发到集群里服务器的80端口

查看一下描述,因为他的名字很长,可以通过CNAME来创建一个简单好记的名字。

状态表面已经是InService,准备就绪

最后来测试一下,输入ELB的URL,每次刷新,都会指向不同的Web Server实现分流

我们还可以通过cloudwatch来检测ELB的Metric参数

这样一个基本的ELB就实现了。

下一篇博客我们来看看如何配合Auto Scaling实现在不同负载的情况下,虚拟机如何动态的自动创建和删除。

AWS - Elastic load Balance的创建使用 (上)

时间: 2024-08-29 19:28:14

AWS - Elastic load Balance的创建使用 (上)的相关文章

创建应用程序源包AWS Elastic Beanstalk

使用 AWS Elastic Beanstalk 控制台部署新应用程序或应用程序版本时,需要上传源包.源包必须符合以下要求: 由单个 ZIP 文件或 WAR 文件组成 (您可以在 WAR 文件中包含多个 ZIP 文件) 不超过 512 MB 不包含父文件夹或顶级目录 (可包含子目录) 如果您要部署处理定期后台任务的工作线程应用程序,您的应用程序源包还必须包括一个 cron.yaml 文件. ~/myapp$ zip ../myapp.zip -r * .[^.]* adding: app.js

亲密接触Redis-第三天(Redis的Load Balance)

前言 上两天讲述了Redis的基本搭建和基于HA的集群布署方式以及相关的策略和注意点.今天开始讲述Redis的Cluster功能,而这块目前来说网上资料不是太全,就算有1,2篇也只是单讲服务端的搭建也并未提及相关的客户端怎么和Redis Cluster间的调用问题. 我们今天要讲述的Redis Cluster是真正的Load Balance,它和Sentinel不一样,Sentinel虽然也叫集群,可是它是一种HA策略即High Available或者又通俗的被称为"灾难转移"策略.

OpenStack Neutron 之 Load Balance

OpenStack Neutron 之 Load Balance 负载均衡(Load Balance)是 OpenStack Neutron 支持的功能之一.负载均衡能够将网络请求分发到多个实际处理请求的虚机上,这样能有效处理高流量的网络请求,负载均衡在现实中有很多使用场景.本文将基于 Neutron 所提供的负载均衡,介绍其基本概念.实现过程,并验证其功能. Neutron Load Balance 简介 负载均衡(Load Balance)其实早在 OpenStack 的 Grizzly 版

利用 AWS Elastic Beanstalk 部署 Wordpress 环境

1. 准备 wordpress 代码 从https://wordpress.org/download/ 将代码压缩包下载到本地, 解压,会有一个 wordpress 目录 复制 wp-config-sample.php 为 wp-config.php,修改.将下面的代码 define('DB_NAME', 'database_name_here'); define('DB_USER', 'username_here'); define('DB_PASSWORD', 'password_here'

Neutron: Load Balance as a Service(LBaaS)负载均衡

load balancer 负责监听外部的连接,并将连接分发到 pool member. LBaaS 有三个主要的概念: Pool Member,Pool 和 Virtual IP Pool Member Pool Member 是 layer 4 的实体,拥有 IP 地址并通过监听端口对外提供服务. 例如 Pool Member 可以是一个 web server,IP 为 172.16.100.9 并通过 80 端口提供 HTTP 服务. Pool Pool 由一组 Pool Member 组

LB(Load balance)负载均衡集群--{LVS-[NAT+DR]单实例实验+LVS+keeplived实验} 菜鸟入门级

LB(Load balance)负载均衡集群 LVS-[NAT+DR]单实例实验 LVS+keeplived实验 LVS是Linux Virtual Server的简写,意即Linux虚拟服务器,是一个虚拟的服务器集群系统. 逻辑可分为: 1调度层 (Director):它是整个集群对外面的前端机,负责将客户的请求发送到一组服务器上执行,而客户认为服务是来自一个IP地址(我们可称之为虚拟IP地址)上的. 2[服务器池(server pool)/集群层(Real server)]:是一组真正执行客

Oracle RAC 服务器端连接负载均衡(Load Balance)

Oracle RAC服务器端的负载均衡是根据RAC中各节点的连接负荷数情况,将新的连接请求分配到负荷最小的节点上去.当数据库处于运行时,RAC中各节点的PMON进程每3秒会将各自节点的连接负荷数更新到service_register.而对于节点中任意监听器故障或监听器意外失败时,PMON进程会每1秒钟检查当前节点上的监听是否重启,以获得最新的负载信息来及时调整负载均衡.本文主要演示suse 10 + oracle 10g rac下的服务器端的负载均衡. 有关客户端的负载均衡可参考      Or

Oracle RAC 客户端连接负载均衡(Load Balance)

实现负载均衡(Load Balance)是Oracle RAC最重要的特性之一,主要是把负载平均分配到集群中的各个节点,以提高系统的整体吞吐能力.通常情况下有两种方式来实现负载均衡,一个是基于客户端连接的负载均衡,一个是基于服务器端监听器(Listener)收集到的信息来将新的连接请求分配到连接数较少实例上的实现方式.本文主要讨论的是基于客户端连接的负载均衡,并给出演示. 与负载均衡配置之前的监听配置请参考              ORACLE RAC 监听配置 (listener.ora t

Vertica7 Native Connection Load Balance

原文链接:Vertica7 Native Connection Load Balance 在Vertica7以前的版本中,Vertica是通过Linux的Virtual IP来实现连接的负载均衡的,但是在Vertica7x中,Vertica本身提供了连接的负载均衡功能,这个功能用起来也是非常方便的,下面就来看看怎么使用这个功能. 1. 首先安装N个Vertica7的节点,然后用数据库管理员的身份运行下面的命令来让Vertica使用这个功能 SELECT SET_LOAD_BALANCE_POLI