存储load balancerr到底咋回事

We noticed you have Javascript disabled. Some features may not work correctly. For the full site experience, please enable Javascript on your web browser.
We noticed you have Javascript disabled. Some features may not work
correctly. For the full site experience, please enable
Javascript on your web browser.
Data Center Switches
Campus Network Switches
Fibre Channel
SDN Controllers & Applications
Network Visibility
Mobile Networking
What is the New IP and How will it Benefit Service Providers?
The rise of the New IP and its practical implications, explained by Kelly Herrell from Brocade.
Brocade's high touch support offering adds enhanced response times and a Support Account Manager (SAM) to Essential Support plus many other proactive, preferential, and personal features.
The Services Add-On Menu provides additional flexibility to support contracts by offering a wide variety of features that reduce downtime and augment customer environments.
Simply fill out a brief form or give us a call.
North America: 1-888-BROCADE
International: 1-408-333-4300
Storage Networking
Software Networking
Industries
Technology
Innovations
Essential Support
Security Advisories
United States
Afghanistan
Antigua and Barbuda
Azerbaijan
Bangladesh
Bosnia-Herzegovina
Bouvet Island
British Indian Ocean Territory
British Virgin Islands
Brunei Darussalam
Burkina Faso
Cape Verde
Cayman Islands
Central African Republic
Christmas Island
Cocos (Keeling) Islands
Congo, Republic of Brazzaville
Cook Islands
Costa Rica
Cote d'lvoire
Czech Republic
Democratic Republic of the Congo
Dominican Republic
East Timor
El Salvador
Equitorial Guinea
Falkland Islands
Faroe Islands
French Guiana
French Metropolitan
French Polynesia
French Southern Territories
Guadeloupe
Guinea Bissau
Heard and McDonald Islands
Hong Kong, China
Isle of Man
Kazakhstan
Korea , South
Kyrgyzstan
Laos, Peoples Democratic Republic
Liechtenstein
Luxembourg
Macau, China
Madagascar
Marshall Islands
Martinique
Mauritania
Micronesia Fed St
Moldova, Republic of
Montenegro
Montserrat
Mozambique
North Korea
Netherlands
Netherlands Antilles
New Caledonia
New Zealand
Norfolk Island
Northern Mariana Islands
Palestinian National Authority
Papua New Guinea
Philippines
Pitcairn Island
Puerto Rico
Reunion Island
Saint Helena
Saint Kitts and Nevis
Saint Lucia
Saint Vincent and The Grenadines
Samoa American
San Marino
Sao Tome and Principe
Saudi Arabia
Seychelles
Sierra Leone
Solomon Islands
South Africa
South Georgia and South Sandwich Islands
St. Pierre and Miquelon
Svalbard and Jan Mayen Islands
Switzerland
Timor-Leste
Trinidad Tobago
Turkmenistan
Turks and Caicos Islands
U.S. Minor Outlying Islands
United Arab Emirates
United Kingdom
Uzbekistan
Virgin Islands (u.s.)
Vatican City State (Holy See)
Western Samoa
Wallis and Futuna Islands
Western Sahara
Select Topic
Sales Inquiry
Careers at Brocade
General/Customer Satisfaction
Investor Relations
Invoices & Payments
Education Services
Leasing & Network Subscription
Public Relations
Resell Brocade
Software Downloads
Technical Support
Role of IT Solution
For your own or group companies
Propose or sell to your customers
I want to receive future communications from Brocade. By submitting this form with your email address and/or phone number, you give Brocade and/or its partners permission to contact you. I understand that my personal information shall be handled in accordance with Brocade's Privacy Policy.
Thank You, Melissa
We'll be in touch with you shortly
Please check your e-mail to confirm your subscription.
You have been successfully subscribed.
You have been successfully subscribed.
Help yourself to some of Brocade's premium content hereTo Complete the subscription process please check your email
Don't settle for a legacy IP network
Revolutionizing business models for the Third Platform
Free 30-Day Trial: Brocade Virtual Traffic Manager, the leading virtual application delivery platform for the New IP
Oops, we're sorry!
An error occured while we tried to process your request
Cookies on this page
We use cookies in order to facilitate your visit of our website and to inform you in accordance with your interests. By using our website you agree to the usage of cookies. Learn more about cookies and your related choices .
ACQUISITION & DIVERSTITURE UPDATE
THE DATA CENTER PORTFOLIO FOR THE DIGITAL ERA
Innovative Brocade SLX Family with embedded network visibility and DevOps-inspired automation delivers agility at all layers of the data center stack.
An Application Boost For The New IP
Free 30-Day Trial: Brocade Virtual Traffic Manager, the leading virtual application delivery platform for the New IP
AMS-IX: Delivering the Internet at Breakthrough Speeds
Job Witteman (CEO) and Henk Steenman (CTO) of The Amsterdam Internet Exchange (AMS-IX) discuss the unique challenges faced by a large Internet Exchange.
Levi’s(R) Stadium Digitally Transforming the Fan Experience
Learn why Levi’s(R) Stadium chose technology partner Brocade to deliver an award-winning state-of-the-art sport and technology showcase as well as a superlative fan experience.
Telefónica - Putting NFV to the Test
Telefónica, one of the largest telecommunications companies in the world, has a significant presence in 24 countries and a customer base that amounts to more than 313 million accesses around the world. As Telefónica transforms into a “Digital Telco” with an innovative portfolio of digital solutions in addition to its best-in-class mobile, fixed, and broadband networks, the company is constantly looking for new ways to meet the needs of customers while growing revenue.
Jim Henson Company Boosts Production Efficiency with Brocade
The Jim Henson Company has cut rendering and upload times down to a fraction of what it once was, and has enabled the company to create more elaborate, complex, and magical stories.
Unnecessary network complexity can stop a growing company in its tracks. That is why the simplicity of Brocade fabrics was of key importance.
Tom Whitcomb
Chief Technical Officer, Ajubeo
Rackspace Deploys Brocade Fibre Channel
Brocade SAN technology allows Rackspace to simplify their SAN infrastructure, while creating a more scalable, high availability infrastructure to meet growing customer demand.
Sadly, been there and done that. On Second Thought...Brocade
Is your network ready for tomorrow's storage? #AllFlash #Gen6FC via @networkworld
When you get your daily exercise by trying to get (and stay) on wi-fi. On Second Thought...Brocade&
StorageNetworks
Coming soon to your All Flash Array: iNVMe!
NVMe over TCP (nicknamed &iNVMe&) is the up-and-coming RDMA-free protocol for NVMe over Fabrics. Like iSCSI, NVMe over TCP offers commodity connectivity to storage arrays that get reliab...
Brocade News
Lumina Networks Enters SDN Market
AMS-IX: Delivering the Internet at Breakthrough Speeds - Revised
Job Witteman (CEO) and Henk Steenman (CTO) of The Amsterdam Internet Exchange (AMS-IX) discuss the unique challenges faced by a large Internet Exchange. The Brocade SLX 9850 routing system meets t...
{content will be pulled from another HTML and placed inside here on pageload}LVS集群的体系结构 - 服务器知识 - 编程入门网
LVS集群的体系结构
LVS集群的体系结构,构建强壮的体系结构里负载均衡层、真实服务器层、后端共享存储层都是相辅相成
LVS集群的体系结构
LVS集群的体系结构如图9 所示 ,这里将它划分成三层,一个完整的LVS负载均衡项目,构建强壮的体系结构里负载均衡层、真实服务器层、后端共享存储层都是相辅相成,必不可少的部分。
软件工具的选择与优点
使用普通的服务器 + 开源软件,顶替昂贵的商业硬件设备,节省开销,特别是为在创业发展中的公司有效节约成本。LVS这种集群技术可以用最少的投资获得接近于大型主机的性能。
LVS集群的通用体系结构,LVS负载均衡结构图,LVS负载均衡架构图
它有三个主要组成部分:
(1)负载均衡器(Load Balancer) :是整个集群对外的前
端机 ,它负责将客户的服务请求发送到一组真实服务器上
执行 ,而客户则认为服务是来自同一个 IP地址上的。
(2)服务器池(Server Pool) :客户端发出的服务请求经
过负载均衡器处理以后转交到服务池 ,由真实服务器响应
请求并返回数据。真实服务器执行的服务有 WWW、 Mail、
FTP和 DNS等 ,它们通过高速 LAN 或在地理上分布于各
地的 WAN 相连。
(3)后端存储(Backend Storage) :为服务器池提供一个
共享的存储区 ,这样很容易使各服务器提供相同的服务。
各层的作用:
◆Load Balancer(负载均衡器):
Load Balancer(负载均衡器)是整个集群系统的前端,负责把客户请求转发到Real Server上。
Backup是备份Load Balancer,当Load Balancer不可用时接替它,成为实际的Load Balancer。
Load Balancer通过Ldirectord监测各Real Server的健康状况。在Real Server不可用时把它从群中剔除,恢复时重新加入。
◆Server Array(服务器群):
Server Array是一组运行实际应用服务的机器,比如WEB, Mail, FTP, DNS, Media等等。
在实际应用中,Load Balancer和Backup也可以兼任Real Server的角色。
◆Shared Storage(共享存储):
Shared Storage为所有Real Server提供共享存储空间和一致的数据内容。
本文出自 &Jimmy Li我站在巨人肩膀上& 博客,请务必保留此出处http://jimmyli./966您所在位置: &
&nbsp&&nbsp&nbsp&&nbsp
MySQL存储过程之事务管理.doc 14页
本文档一共被下载:
次 ,您可全文免费在线阅读后下载本文档。
下载提示
1.本站不保证该用户上传的文档完整性,不预览、不比对内容而直接下载产生的反悔问题本站不予受理。
2.该文档所得收入(下载+内容+预览三)归上传者、原创者。
3.登录后可充值,立即自动返金币,充值渠道很便利
需要金币:130 &&
你可能关注的文档:
··········
··········
MySQL存储过程之事务管理MySQL存储过程之事务管理 ACID:Atomic、Consistent、Isolated、Durable 存储程序提供了一个绝佳的机制来定义、封装和管理事务。 1,MySQL的事务支持 MySQL的事务支持不是绑定在MySQL服务器本身,而是与存储引擎相关: Java代码 MyISAM:不支持事务,用于只读程序提高性能
InnoDB:支持ACID事务、行级锁、并发
Berkeley DB:支持事务
隔离级别: 隔离级别决定了一个session中的事务可能对另一个session的影响、并发session对数据库的操作、一个session中所见数据的一致性 ANSI标准定义了4个隔离级别,MySQL的InnoDB都支持: Java代码 READ UNCOMMITTED:最低级别的隔离,通常又称为dirty read,它允许一个事务读取还没commit的数据,这样可能会提高性能,但是dirty read可能不是我们想要的
READ COMMITTED:在一个事务中只允许已经commit的记录可见,如果session中select还在查询中,另一session此时insert一条记录,则新添加的数据不可见
REPEATABLE READ:在一个事务开始后,其他session对数据库的修改在本事务中不可见,直到本事务commit或rollback。在一个事务中重复select的结果一样,除非本事务中update数据库。
SERIALIZABLE:最高级别的隔离,只允许事务串行执行。为了达到此目的,数据库会锁住每行已经读取的记录,其他session不能修改数据直到前一事务结束,事务commit或取消时才释放锁。
可以使用如下语句设置MySQL的session隔离级别: Java代码 SET TRANSACTION ISOLATION LEVEL {READ UNCOMMITTED | READ COMMITTED | REPEATABLE READ | SERIALIZABLE}
MySQL默认的隔离级别是REPEATABLE READ,在设置隔离级别为READ UNCOMMITTED或SERIALIZABLE时要小心,READ UNCOMMITTED会导致数据完整性的严重问题,而SERIALIZABLE会导致性能问题并增加死锁的机率 事务管理语句: Java代码 START TRANSACTION:开始事务,autocommit设为0,如果已经有一个事务在运行,则会触发一个隐藏的COMMIT
COMMIT:提交事务,保存更改,释放锁
ROLLBACK:回滚本事务对数据库的所有更改,然后结束事务,释放锁
SAVEPOINT savepoint_name:创建一个savepoint识别符来ROLLBACK TO SAVEPOINT
ROLLBACK TO SAVEPOINT savepoint_name:回滚到从savepoint_name开始对数据库的所有更改,这样就允许回滚事务中的一部分,保证更改的一个子集被提交
SET TRANSACTION:允许设置事务的隔离级别
LOCK TABLES:允许显式的锁住一个或多个table,会隐式的关闭当前打开的事务,建议在执行LOCK TABLES语句之前显式的commit或rollback。我们一般所以一般在事务代码里不会使用LOCK TABLES
2,定义事务 MySQL默认的行为是在每条SQL语句执行后执行一个COMMIT语句,从而有效的将每条语句独立为一个事务。 在复杂的应用场景下这种方式就不能满足需求了。 为了打开事务,允许在COMMIT和ROLLBACK之前多条语句被执行,我们需要做以下两步: 1, 设置MySQL的autocommit属性为0,默认为1 2,使用START TRANSACTION语句显式的打开一个事务 如果已经打开一个事务,则SET autocommit=0不会起作用,因为START TRANSACTION会隐式的提交session中所有当前的更改,结束已有的事务,并打开一个新的事务。 使用SET AUTOCOMMIT语句的存储过程例子: Java代码 CREATE PROCEDURE tfer_funds
(from_account int, to_account int, tfer_amount numeric(10,2))
SET autocommit=0;
UPDATE account_balance SET balance=balance-tfer_amount WHERE account_id
正在加载中,请稍后...您当前位置: >
> HDFS节点内数据平衡:DiskBalancer
HDFS节点内数据平衡:DiskBalancer
来源:程序员人生&& 发布时间: 10:22:32 阅读次数:1054次
做集群运维的同学可能都会遇到这样1个问题:Hadoop集群使用久了,各个节点上的数据会变得不均衡,多的到达70,80%,少的就10,20%.面对这类场景,我们的办法1般就是用HDFS自带的Balancer工具对其进行数据平衡.但有的时候,你会发现虽然节点间数据平衡了,但是节点内各个磁盘块的数据出现了不平衡的现象.这可是Balancer工具所干不了的事情.通过这个场景,我们引入本文的1个话题点:HDFS节点内数据平衡.这个问题很早的时候其实就被提出了,详见issue HDFS⑴312(Re-balance disks within a Datanode).我相信大家在使用Hadoop集群的时候或多或少都遇到过这个问题.本文就来好好聊聊这个话题,和社区目前对此的解决方案.
磁盘间数据不均衡状态的出现
磁盘间数据不均衡的现象源自于长时间写操作时数据大小不均衡.由于每次写操作你可以保证写磁盘的顺序性,但是你没法保证每次写入的数据量都是1个大小.比如A,B,C,D4块盘,你用默许的RoundRobin磁盘选择策略去写,最后4块盘都写过了,但是A,B可能写的block块就1M,而C,D可能就是128M.
磁盘间数据不均衡带来的问题
如果磁盘间数据不均衡现象确切出现了,它会给我们造成甚么影响呢?有人可能会想,它不就是1个普通磁盘嘛,又不是系统盘,系统盘使用空间太高是会影响系统性能,但是普通盘应当问题不大吧.这个观点听上去是没问题,但是只能说它斟酌的太浅了.我们从HDFS的读写层面来对这个现象做1个分析.这里归纳出了以下2点:
第1点,磁盘间数据不均衡间接引发了磁盘IO压力的不同.我们都知道,HDFS上的数据访问频率是很高的,这就会触及到大量读写磁盘的操作,数据多的盘自然的就会有更高频率的访问操作.如果1块盘的IO操作非常密集的话,必将会对它的读写性能造成影响.
第2点,高使用率磁盘致使节点可选存储目录减少.HDFS在写Block数据的时候,会挑选剩余可用空间满足待写Block的大小的情况下时,才会进行挑选,如果高使用率磁盘目录过量,会致使这样的候选块变少.所以这方面其实偏向的是对HDFS的影响.
磁盘间数据不均衡的传统解决方案
磁盘间数据不均衡现象出现了,目前我们有甚么办法解决呢?下面是2种现有解决方案:
方案1:节点下线再上线.将节点内数据不均衡的机器进行Decommision下线操作,下线以后再次上线.上线以后相当因而1个全新的节点了,数据也将会重新存储到各个盘上.这类做法给人感觉会比较暴力,当集群范围比较小的时候,代价太高,此时下线1个节点会对集群服务造成不小的影响.
方案2:人工移动部份数据block存储目录.此方案比方案1更加灵活1些,但是数据目录的移动要保证准确性,否则会造成移动完目录后数据找不到的现象.下面举1个实际的例子,比如我们想将磁盘1上的数据挪到磁盘2上.现有磁盘1的待移动存储目录以下:
/data/1/dfs/dn/ current/BP⑴-xx.xx.xx.xx⑴/current/ finalized/subdir0/subdir1/
我移动到目标盘上的路径应当保持这样的路径格式不变,只变化磁盘所在的目录,目标路径以下:
/data/2/dfs/dn/current/BP⑴-xx.xx.xx.xx⑴/current/finalized/subdir0/subdir1/
如果上述目录结构出现变化,就会造成HDFS找不到此数据块的情况.
社区解决方案:DiskBalancer
前面铺垫了这么多的内容,就是为了引出本节要重点论述的内容:DiskBalancer.DiskBalancer从名字上,我们可以看出,它是1个类似于Balancer的数据平衡工具.但是它的作用范围是被限制在了Disk上.首先这里要说明1点,DiskBalancer目前是未发布的功能特性,所以你们在现有发布版中是找不到此工具的.下面我将会全方面的介绍DiskBalancer,让大家认识,了解这个强大的工具.
DiskBalancer的设计核心
首先我们先来了解DiskBalancer的设计核心,这里与Balancer有1点点的区分.Balancer的核心点在于数据的平衡,数据平衡好就OK了.而DiskBalancer在设计的时候提出了2点目标:
第1.Data Spread Report.数据散布式的汇报.这是1个report汇报的功能.也就是说,DiskBalancer工具能支持各个节点汇报磁盘块使用情况的功能,通过这个功能我可以了解到目前集群内使用率TopN的节点磁盘.
第2.Disk Balancing.第2点才是磁盘数据的平衡.但是在磁盘内数据平衡的时候,要斟酌到各个磁盘storageType的不同,由于之条件到过HDFS的异构存储,不同盘可能存储介质会不同,目前DiskBalancer不支持跨存储介质的数据转移,所以目前都是要求在1个storageType下的.
以上2点取自于DiskBalancer的设计文档(DiskBalancer相干设计文档可见文章末尾的参考链接).
DiskBalancer的架构设计
此部份来讨论讨论DiskBalancer的架构设计.通过架构设计,我们能更好的了解它的1个整体情况.DiskBalancer的核心架构思想以下图所示:
上面进程经过了3个阶段,Discover(发现)到Plan(计划),再从Plan(计划)到Execute(履行).下面来详细解释这3个阶段:
发现阶段做的事情实际上就是通过计算各个节点内的磁盘使用情况,然后得出需要数据平衡的磁盘列表.这里会通过Volume Data Density磁盘使用密度的概念作为1个评判的标准,这个标准值将会以节点总使用率作为比较值.举个例子,如果1个节点,总使用率为75%,就是0.75,其中A盘使用率0.5(50%),那末A盘的volumeDataDensity密度值就等于0.75-0.5=0.25.同理,如果超越的话,则密度值将会为负数.因而我们可以用节点内各个盘的volumeDataDensity的绝对值来判断此节点内磁盘间数据的平衡情况,如果总的绝对值的和越大,说明数据越不平衡,这有点类似于方差的概念.Discover阶段将会用到以下的连接器对象:
1.DBNameNodeConnector
2.JsonConnector
3.NullConnector
其中第1个对象会调用到Balancer包下NameNodeConnector对象,以此来读取集群节点,磁盘数据情况
拿到上1阶段的汇报结果数据以后,将会进行履行计划的生成.Plan其实不是1个最小的履行单元,它的内部由各个Step组成.Step中会指定好源,目标磁盘.这里的磁盘对象是1层经过包装的对象:DiskBalancerVolume,其实不是原来的FsVolume.这里顺便提1下DiskBalancer中对磁盘节点等概念的转化:
1.DiskBalancerCluster.通过此对象可以,读取到集群中的节点信息,这里的节点信息以DiskBalancerDataNode的方式所显现.
2.DiskBalancerDataNode.此对象代表的是1个包装好后的DataNode.
3.DiskBalancerVolume和DiskBalancerVolumeSet.DataNode磁盘对象和磁盘对象集合.DiskBalancerVolumeSet内的磁盘存储目录类型需要是同种StorageType.
最后1部份是履行阶段,所有的plan计划生成好了以后,就到了履行阶段.这些计划会被提交到各自的DataNode上,然后在DiskBalancer类中进行履行.DiskBalancer类中有专门的类对象来做磁盘间数据平衡的工作,这个类名称叫做DiskBalancerMover.在磁盘间数据平衡的进程中,高使用率的磁盘会移动数据块到相对低使用率的磁盘,等到满足1定阈值关系的情况下时,DiskBalancer会渐渐地退出.在DiskBalancer的履行阶段,有以下几点需要注意:
1.带宽的限制.DiskBalancer中一样可以支持带宽的限制,默许是10M,通过配置项dfs.disk.balancer.max.disk.throughputInMBperSec进行控制.
2.失败次数的限制.DiskBalancer中会存在失败次数的控制.在拷贝block数据块的时候,出现IOException异常,会进行失败次数的累加计数,如果超越最大容忍值,DiskBalancer也会退出.
3.数据平衡阈值控制.DiskBalancer中可以提供1个磁盘间数据的平衡阈值,以此作为是不是需要继续平衡数据的标准,配置项为dfs.disk.balancer.block.tolerance.percent.
DiskBalancer的命令履行
DiskBalancer内部提供了许多种别的命令操作,比以下面的查询命令:
hdfs diskbalancer -query nodename.mycluster.com
我们也能够履行相应的plan命令来生成plan计划文件.
hdfs diskbalancer -uri hdfs://mycluster.com -plan node1.mycluster.com
然后我们可以用生成好后的json文件进行DiskBalancer的履行
hdfs diskbalancer -execute /system/diskbalancer/nodename.plan.json
固然,如果我们发现我们履行了毛病的plan,我们也能够通过cancel命令进行清除:
hdfs diskbalancer -cancel /system/diskbalancer/nodename.plan.json
hdfs diskbalancer -cancel & -node &
在DiskBalancer中会触及到比较多的object-json的关系转换,所以你会看到1些带.json后缀的文件
总而言之,DiskBalancer是1个很实用的功能特性.在Hadoop中,有专门的分支用于开发此功能,就是HDFS⑴312,感兴趣的同学可以下载Hadoop的最新代码进行学习.本人非常荣幸地也向此功能提交了1个小patch, issue编号,HDFS⑴0560.这个new feature很快就要在新版的Hadoop中发布了,相信会对Hadoop集群管理人员非常有帮助.
1.https://issues.apache.org/jira/secure/attachment//disk-balancer-proposal.pdf
2.https://issues.apache.org/jira/secure/attachment//Architecture_and_test_update.pdf
2.https://issues.apache.org/jira/browse/HDFS⑴312
3.https://issues.apache.org/jira/browse/HDFS⑴0560
生活不易,码农辛苦
如果您觉得本网站对您的学习有所帮助,可以手机扫描二维码进行捐赠
------分隔线----------------------------
------分隔线----------------------------
积分:4237

我要回帖

更多关于 loadbalancerclient 的文章

 

随机推荐