1)硬件要求:
需要支持java。因为memstore和块缓存需要安装64位操作系统才能使用大于4G的内存,因为数据存储hdfs上,最好hadoop和hbase 安装在相同机器上,可以减少I/O需求。集群内存不能全部都给JVM,最好小于80%,主要用户IO缓存等
需要支持java。因为memstore和块缓存需要安装64位操作系统才能使用大于4G的内存,因为数据存储hdfs上,最好hadoop和hbase 安装在相同机器上,可以减少I/O需求。集群内存不能全部都给JVM,最好小于80%,主要用户IO缓存等
2)服务器:
cpu :最好多核,四核以上,主频大于2G
内存:每个JVM不要大于16G,主要是垃圾回收,需要经过清洗整理,越大占用时间越长。master这个时候可能认为Region dead。
NameNode:8G
SecondaryNameNode :8G
JOBTracker :2G
HBase Master 4G
DataNode 1G
RegionServer 12G
zookeeper 1G
TaskTracker 1G
TaskAttempts1G
整台机器:
Master 24G
Slava 大于24G
磁盘
因为master的重要性可以考虑做Raid 0+1,slave因为本身有容错机制,所以不需要。
SATA比SAS便宜,虽然sas安全性能高,。
master 4×1T
regionService 6×1T
磁盘数量影响IO/s。所以8×500G好于4×1T。可以并行读写。
机架:
master 最好能提供双psu。
slave 和master
最好都在一个机架里面。
3)操作系统
linux,
windows可以开发,但是需要安装cygwin
文件系统:
ext3就可以。
ext4:最好关闭 延迟分配
XFS,或者
ZFS都行,对压缩支持非常好,但系统方面一般
4)java
Oracle
5)hadoop
需要去官网匹配一下hadoop版本。
hbase 不支持异步的hdfs,对于没有同步功能的hadoop不支持。因为在habse在写副本时是同步的,确保强一致性。
6)安装ssh,无密码登录。
7)域名服务
ping -c 1 ${hostname}
如果要配置多个服务器接口
hbase。regionServer。dns,interface
或者
hbase。regionServer。dns,nameserver
8)同步时间
需要配置NTP
/etc/ntp.conf
or
/etc/xntp.conf
9 配置文件句柄和进程现在
Ulimit -u 默认的1024远远不够,至少10000
lsof -p RegionServer-pid 查看打开了多少文件
/etc/security/limits.conf
hadoop - nofile 32768
10)DataNode 处理线程数
conf/hdfs-site.xml
设置:
dfs。dataNode。max。xcievers = 4096
11)交换器
不建议用。因为交换器唤醒过程,整体性能下降,而且交换过程中hbase 无法和zookeeper 交换信息。master认为regionservice dead,
/ect/sysctl.conf
wm.swappiness=5
或者swapoff=true
配置后需要调用
sysctl -p 启动