Hbase集群类型|集群配置|服务器选型|磁盘容量规划
HBase和Hadoop的集群类型
1、单机模式
主要用于开发工作,一台机器上运行所有的守护进程,或者一台机器运行多个虚拟机。一般用于评估和测试。
2、小型集群
20台机器以内的集群,不同的机器运行不同的守护进程,适用于数据量和处理请求较少的小型生产环境。
3、中型集群
20到1000台机器集群,3到5个zookeeper节点,适用于成熟的生产环境。
4、大型集群
1000台机器以上的集群,属于超大规模集群了,适用于大规模生产环境。
集群配置举例
1、NameNode/HMaster 常见配置
内存:16~128G
CPU:2*(8~24)核处理器
硬盘:1TB-SATA硬盘+1个元数据备份盘(转速7200R/MIN+)能使用固态更好。
网卡:2*1GB网卡
为了有更好的性能,所有的元数据都缓存在内存中,因此内存需要拥有较快的速度和较好的质量。大内存意为着可以存储更多的文件,从而支持NameNode更大的命名空间。同时NameNode不需要很大的磁盘,小容量的磁盘就可以满足需求,元数据要存储加载到内存中,数据副本以及修改日志存储在磁盘上。
2、ResourceManager
可以运行在NameNode机器上,也可以运行在单独的机器上。硬件配置和NameNode一直,因为只是用于作业分发,因此不需要较大的磁盘和较强的运算能力。
3、DataNode、RegionServer
实际的数据存储于这些节点,因此这些节点需要较大的存储和较强的运算能力。较小的集群可以使用一般的磁盘,内存和CPU,如果集群规模较大,可以考虑:
内存:16~128G
CPU:2*(8~24)核处理器
硬盘:2TB,转速7200
网卡:2*1GB
CDH配置
备选资源:
内存:64~512GB
硬盘:1TB~4TB
CPU:2*(8~24)核CPU,主频2~2.5GHZ
网卡:千、万兆以太网
1、CPU
工作负载核心,推荐DataNode配置为双CPU插槽,配置中等主频的CPU,高端CPU太烧钱,所以我们可以增加数量。
2、电源
耐热性,稳定。
3、内存
需要足量的内存以保证不需要等待数据频繁的装载到内存中,因此8~48G内存比较合适,HBase会使用大量的内存,将文件存放在内存中(如果开启了内存表的话),对于HBase集群,我们需要比单独的Hadoop集群更大的内存。如果HBase开启缓存,Hbase会尝试将整张表缓存在内存中。
4、磁盘
不建议在某台机器上配置很大容量的磁盘,这样当这台机器出现问题,不容易将数据分散到其他机器节点中。必须不能低于SATA 7200转
5、网络
Hadoop或者HBase在执行任务,读取数据和写入数据时,会在节点之间传输数据块,因此建议配置高速的网络和交换机。对于中小集群,1GB/s的网络足矣。对于排序和shuffle这类操作,需要节点间传输大量数据,如果带宽不足,会导致一些节点连接超时,比如RegionServer、Zookeeper。
容量规划
运算公式:T = (S* R)* 1.25
尖叫提示:
S表示存储数据量
R表示副本数
T表示整个集群需要的空间
Hbase集群类型|集群配置|服务器选型|磁盘容量规划的更多相关文章
- CentOS6.5安装HBase集群及多HMaster配置
1.配置SSH免登录 请参考:http://www.cnblogs.com/hunttown/p/5470357.html 服务器配置: Hadoop-NN-01 主Hadoop-NN-02 备Had ...
- 大数据高可用集群环境安装与配置(07)——安装HBase高可用集群
1. 下载安装包 登录官网获取HBase安装包下载地址 https://hbase.apache.org/downloads.html 2. 执行命令下载并安装 cd /usr/local/src/ ...
- Hbase集群搭建及所有配置调优参数整理及API代码运行
最近为了方便开发,在自己的虚拟机上搭建了三节点的Hadoop集群与Hbase集群,hadoop集群的搭建与zookeeper集群这里就不再详细说明,原来的笔记中记录过.这里将hbase配置参数进行相应 ...
- mongodb集群——配置服务器放分片meta信息,说明meta里包含了哪些数据信息
在搭建分片之前,先了解下分片中各个角色的作用. ① 配置服务器.是一个独立的mongod进程,保存集群和分片的元数据,即各分片包含了哪些数据的信息.最先开始建立,启用日志功能.像启动普通的mongod ...
- nginx的配置服务器集群,负载均衡
在server{}前配置服务器ip和端口号 如: upstream local_tomcat { local_tomcat为访问路径,在下面配置服务器ip及端口号,也可以分配权重(weight==?) ...
- RabbitMQ集群、镜像部署配置
1 RABBITMQ简介及安装 RabbitMQ是一个开源的AMQP实现,服务器端用Erlang语言编写,支持多种客户端,如:Python.Ruby..NET.Java.JMS.C.PHP.Act ...
- 集群之mysql主从配置(windows和linux版)
起因 由于网站进一步开发运行的需求,要求主机7*24小时运行正常,同时要求能够防止数据库灾难.考虑到后期的开发程度和业务量,准备向高可用系统进行改变,同时通过负载均衡提高网络性能.于是第一步就考虑到了 ...
- Linux Cluster 基础之LVS调度算法与集群类型
Linux Cluster 基础之LVS调度算法与集群类型 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.LB Cluster 1>.什么是LB LB 集群是 load ...
- LVS工作原理及集群类型
Cluster概念 Cluster:集群,为解决某个特定问题将多台计算机组合起来形成的单个系统 Linux Cluster类型: LB:Load Balancing,负载均衡 HA:High ...
随机推荐
- <自动化测试>之<selenium API 用法2>
不知道之前的selenium API 用法1,有没有去练习, 个人认为线性代码还是要靠敲的, 后面的模块化除了多敲还需要一定的编程思想去理解, 今天下午不是很忙就给来这儿补充点selenium api ...
- http协议和file协议的区别
1.在本地直接使用浏览器打开 html文件 和 通过本地服务器打开 html文件 有什么区别呢. https://segmentfault.com/q/1010000006554881/a-1 ...
- 分布式系统理论基础6:Raft、Zab
本文转自:https://www.cnblogs.com/bangerlee/p/5991417.html 本文转自 https://www.cnblogs.com/bangerlee/p/52684 ...
- js调用ios和安卓方法
安卓: window.AndroidWebView.方法名(参数); window.AndroidWebView.productDetail(1989); ios: function isbrowse ...
- QTP学习笔记1
1.将变量值写入datatable/ 从datatable中取值赋给变量 DataTable("列名","sheet名") = 变量名 变量名 = DataTa ...
- MYSQL的SQL_CALC_FOUND_ROWS 和count(*)
mysql的SQL_CALC_FOUND_ROWS 和 count(*) 在很多分页的程序中都这样写: SELECT COUNT(*) from `table` WHERE ......; 查出符合 ...
- Ettercap详细参数
关于界面:ettercap提供 4 种运行界面: Text #文本模式,参数 -T ,一般配合 -q(安静模式)使用 Curses/GTK #图形模式,参数 -C ...
- ubuntu安装完成后需要做的事情
1.删除libreoffice libreoffice虽然是开源的,但是Java写出来的office执行效率实在不敢恭维,装完系统后果断删掉 [html] view plain copy sudo a ...
- JavaScript中 函数的创建和调用
基础概念:定义函数的方式 一般定义函数有两种方式: 1:函数的声明 2:函数表达式 参考资料:https://blog.csdn.net/xixiruyiruyi/article/de ...
- 深入理解finally关键字,Finally到底是在return前面执行还是在return后面执行
一:2种finally不会执行的情况 a.在try语句之前就return了 b.try语句中有System.exit();语句 二:finally语句在return执行之后,return返回之前执行 ...