1)硬件要求:
需要支持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。可以并行读写。



机架:


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 启动