热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Hadoop+Hive+HBase+Kylin安装指南(2018年5月更新)

操作系统因为公司的服务器上用的RedHatLinux6,所以本安装指南也是基于RedHat完成的,但是其它版本,如Ubuntu、CentOS等也可参考,无本质上的差异。服务器集群本

操作系统

因为公司的服务器上用的RedHat Linux 6,所以本安装指南也是基于RedHat完成的,但是其它版本,如Ubuntu、CentOS等也可参考,无本质上的差异。

服务器集群

本次测试环境只有3台服务器,所以一台做主结点,另外两台做数据结点。

软件版本

2018年1月完成的本次安装,所以使用的软件版本如下所示,选用的均是稳定版本。

  • jdk-8u144-linux-x64.rpm
  • hadoop-2.7.4.tar.gz
  • hbase-1.2.6-bin.tar.gz
  • apache-hive-1.2.2-bin.tar.gz
  • zookeeper-3.4.10.tar.gz
  • apache-kylin-2.2.0-bin-hbase1x.tar.gz

一般情况下,我们都是在一台服务器上做完hadoop,zookeeper,hbase等的配置,然后拷贝到集群里另外的服务器上直接使用。有的情况配置稍作一点修改,请大家注意。更多我的文字可以到:数圈儿进一步关注。

操作步骤

1. 集群服务器系统环境准备

1.1 修改主机名,方便通过主机名进行网络互通
为了操作方便,先给3台服务器起个名字。linux修改主机名的方法如下:
hostname命令可以临时修改机器名,但机器重新启动之后就会恢复原来的值。

hostname //查看机器名
hostname -i //查看本机器名对应的ip地址

1.2 另外一种方法就是修改“/etc/hosts”这个文件
系统重启后仍然有效,所以我们采用这个方法修改3台服务器的主机名

修改/etc/hosts文件,对于统本身用到主机名的地方不会变化。这是因为hosts 是网络中用的,解决的是类似DNS的问题。/etc/sysconfig/network是本机自己使用的。
详细可参考:https://blog.csdn.net/trochiluses/article/details/11483591

我的hosts文件示例:

127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
172.20.10.40 BI01
172.20.10.41 BI02
172.20.10.42 BI03

这里3台服务器分别取名为BI01,BI02和BI03.

1.3 RedHat配置本地Yum仓库
公司服务器上RedHat是安装的Basic Server版本,大量常用软件没有安装。同事把安装光盘挂载到了服务器上,这里是创建一个本地的仓库指向光盘,方便快速的安装需要的软件
详细参考:http://www.runoob.com/linux/linux-yum.html

具体按照如下步骤进行:
步骤一:将RHEL6光盘手动挂载到/media

[root@localhost ~]# mount /dev/cdrom /media/
mount: block device /dev/sr0 is write-protected, mounting read-only
[root@localhost ~]# mount | tail -1
/dev/sr0 on /media type iso9660 (ro)

步骤二:将本地设置为客户端,进行Yum验证
命令操作如下所示:

[root@localhost ~]# cd /etc/yum.repos.d/ //必须在这个路径下
[root@localhost yum.repos.d]# ls //此路径下事先有配置文件的模板
rhel-source.repo
[root@localhost yum.repos.d]# cp rhel-source.repo rhel6.repo //配置文件必须以.repo结尾
[root@localhost yum.repos.d]# vim rhel6.repo
[rhel-6] //括号里的ID要求唯一,但不要出现特殊字符
name=Red Hat Enterprise Linux 6 //描述信息,可以看情况填写
baseurl=file:///media/ //yum软件仓库位置,指向光盘挂载点
enabled=1 //是否开启,1为开启,0为不开启
gpgcheck=1 //是否检查签名,1为监测,0为不检测
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release //签名认证信息的路径

步骤三:加载上一个步骤中新建的仓库

[root@localhost /]# yum repolist
Loaded plugins: product-id, refresh-packagekit, security, subscription-manager
This system is not registered to Red Hat Subscription Management SinanWu. You can use subscription-manager to register.
rhel-6 | 3.9 kB 00:00 ...
rhel-6/primary_db | 3.1 MB 00:00 ...
repo id repo name status
rhel-6 Red Hat Enterprise Linux 6 3,690
repolist: 3,690

我的实际操作如下:

[root@BI01 ~]# ls /apps/cdrom/
[root@BI01 yum.repos.d]# vi rhel-local.repo
[rhel-local]
name=Red Hat Enterprise Linux $releasever - $basearch - Local
baseurl=file:///apps/cdrom/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

1.4 安装缺失的vim,ssh client等软件

[root@BI01 /]# yum -y install vim
[root@BI01 /]# yum -y install openssh-clients

1.5 安装JDK 8
上传JDK,使用yum本地安装进行

[root@BI02 downloads]# yum localinstall jdk-8u144-linux-x64.rpm

1.6 新建大数据平台用户
不推荐使用root用户来进行安装,我们需要为整个大数据平台创建独立的用户
RedHat下使用命令:

[root@BI01 downloads]# groupadd bigdata
[root@BI03 downloads]# useradd -g bigdata bdp

详细参考:http://www.cnblogs.com/clicli/p/5943788.html

1.7 RadHat为普通用户添加sudo权限
对sudoers的修改需要root权限,因此先登录root用户:

su - root

sudoers文件默认是只读的,所以要先修改一下它的权限:

chmod u+w /etc/sudoers

使用vi修改sudoers文件

vi /etc/sudoers

找到如下这行:
root ALL=(ALL) ALL
如果你的用户名是bigdata,那么在上面这行的下面增加如下内容:
bigdata ALL=(ALL) ALL
从vi中保存退出,再将sudeors文件的权限修改回来:

chmod u-w /etc/sudoers

最后就是退出shell,再重新登录。修改完成后一定记得检查语法:

visudo -c

确保/etc/sudoers默认的权限是440(防止权限误用)

1.8 SSH免密码设置
因为集群多台服务器之间需要协同工作,原理就是执行脚本的时候,有时候要远程执行其他服务器上的命令,说白了就是ssh过去,执行相应命令。但是建立ssh连接是需要口令的,为了能让服务器之间免密码登录,就需要利用公钥体系做一个授权。

这个网上有很多资料和说明,百度“ssh 免密”
详细可参考:https://blog.csdn.net/universe_hao/article/details/52296811

步骤一:每个服务器上运行命令产生pub key

ssh-keygen -t rsa //一路回车就好

步骤二:每个服务器上把自己pub key拷贝到其它的机器上,包括自己本机

ssh-copy-id -i ~/.ssh/id_rsa.pub BI01
ssh-copy-id -i ~/.ssh/id_rsa.pub BI02
ssh-copy-id -i ~/.ssh/id_rsa.pub BI03

2.Hadoop安装

其实网上已经有很多hadoop集群安装的帖子,但还是会碰到一些新问题,大家可以先阅读下的两篇帖子。我把我实际安装的时候记录在后面作为补充
超详细从零记录Hadoop2.7.3完全分布式集群部署过程
http://blog.csdn.net/dream_an/article/details/52946840
补充材料:hadoop-2.6.0+zookeeper-3.4.6+hbase-1.0.0+hive-1.1.0完全分布式集群HA部署
http://www.aboutyun.com/forum.php?mod=viewthread&tid=13679

所有安装包解压到一个目录下面,例如我的是:/home/bdp/opt/

[bdp@BI01 opt]$ ls -al
total 48
drwxr-xr-x. 12 bdp bigdata 4096 Dec 1 15:12 .
drwx------. 10 bdp bigdata 4096 May 17 14:39 ..
drwxr-xr-x. 12 bdp bigdata 4096 Nov 20 13:10 hadoop-2.7.4
drwxr-xr-x. 9 bdp bigdata 4096 Nov 30 09:05 hbase-1.2.6
drwxr-xr-x. 11 bdp bigdata 4096 Nov 10 2017 hive-1.2.2
drwxr-xr-x. 15 bdp bigdata 4096 Aug 31 2017 impala-2.10.0
drwxr-xr-x. 12 bdp bigdata 4096 Jan 2 14:37 kylin-2.2.0
drwxr-xr-x. 12 bdp bigdata 4096 Nov 17 17:38 zookeeper-3.4.10

2.1 配置环境变量

[bdp@BI01 opt]$ vim ~/.bash_profile

该文件的最终配置如下:

#JDK
export JAVA_HOME="/usr/java/jdk1.8.0_144"
#Hadoop env
export HADOOP_HOME="/home/bdp/opt/hadoop-2.7.4"
export HIVE_HOME="/home/bdp/opt/hive-1.2.2"
export HBASE_HOME="/home/bdp/opt/hbase-1.2.6"
export KYLIN_HOME="/home/bdp/opt/kylin-2.2.0"
export PATH="$HADOOP_HOME/bin:$HIVE_HOME/bin:$HBASE_HOME/bin:$PATH"
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
export YARN_CONF_DIR=$HADOOP_HOME/etc/hadoop

执行下面命令,让改动马上生效

source ~/.bash_profile

2.2 在主结点上(BI01),配置/home/bdp/opt/hadoop-2.7.4/etc/hadoop/slaves文件,增加slave主机名。
注意要把localhost删掉

BI02
BI03

2.3 配置 etc/hadoop/core-site.xml
这里就粘贴的是最终优化后的结果,有些参数可能还不是太合理,但至少对于上千万条的数据最后是跑过了。资源分配的参数,大家需要针对自己服务器的CPU核数和内存容量进行修改,不能直接copy。对于初学者,很多配置项还不理解它的作用,这里主要讲安装就不进行详解了,可以自行搜索一下,有很多资料介绍的。




fs.defaultFS
hdfs://BI01:9000



io.file.buffer.size
131072



hadoop.tmp.dir
/home/bdp/data/hadoop/tmp


hadoop.proxyuser.bdp.hosts
*


hadoop.proxyuser.bdp.groups
*


2.4 配置 hdfs-site.xml



dfs.namenode.secondary.http-address
BI01:50090


dfs.replication
2


dfs.namenode.name.dir
file:/home/bdp/data/hadoop/hdfs/name


dfs.datanode.data.dir
file:/home/bdp/data/hadoop/hdfs/data


dfs.permissions
false


2.5 配置yarn-site.xml



yarn.nodemanager.aux-services
mapreduce_shuffle


yarn.resourcemanager.address
BI01:8032


yarn.resourcemanager.scheduler.address
BI01:8030


yarn.resourcemanager.resource-tracker.address
BI01:8031


yarn.resourcemanager.admin.address
BI01:8033


yarn.resourcemanager.webapp.address
BI01:8088


yarn.scheduler.maximum-allocation-mb
50000


yarn.scheduler.minimum-allocation-mb
1024


yarn.nodemanager.vmem-pmem-ratio
4



yarn.nodemanager.resource.memory-mb
65536


yarn.nodemanager.resource.cpu-vcores
16



yarn.log-aggregation-enable
true



yarn.nodemanager.remote-app-log-dir
/tmp/logs



yarn.log-aggregation.retain-seconds
259200


yarn.log-aggregation.retain-check-interval-seconds
3600


2.6 配置mapred-site.xml



mapreduce.framework.name
yarn


mapreduce.jobhistory.address
BI01:10020


mapreduce.jobhistory.webapp.address
BI01:19888


mapreduce.jobhistory.intermediate-done-dir
/mr-history/tmp


mapreduce.jobhistory.done-dir
/mr-history/done


mapreduce.map.memory.mb
16000


mapreduce.reduce.memory.mb
16000


mapreduce.map.java.opts
-Xmx40000m


mapreduce.reduce.java.opts
-Xmx40000m


2.7 除了site配置文件,还有很多env的脚本需要优化
这里在很多安装教程里没有提及,因为对于安装时期来说是不需要修改的。但一旦跑起数据来,很多进程的启动脚本里分配的java虚拟机的堆栈都不够用。下面提前介绍一下,同样,直接上sh文件。

hadoop-env.sh 片段

# The java implementation to use.
export JAVA_HOME=/usr/java/jdk1.8.0_144
# The maximum amount of heap to use, in MB. Default is 1000.
export HADOOP_HEAPSIZE=40000
# The following applies to multiple commands (fs, dfs, fsck, distcp etc)
export HADOOP_CLIENT_OPTS="-Xms1G -Xmx40G $HADOOP_CLIENT_OPTS"

40G是不是有些粗暴?后续待进一步优化

mapred-env.sh 片段

export HADOOP_JOB_HISTORYSERVER_HEAPSIZE=1000

yarn-env.sh 片段

JAVA=$JAVA_HOME/bin/java
JAVA_HEAP_MAX=-Xmx1000m

2.8 Hadoop安装问题集锦
2.8.1 hadoop节点nodemanager启动失败
查看logs/yarn-bdp-nodemanager-BI02.log可以看到错误信息。其实就是yarn-site.xml配置有点问题。nodemanager要求的内存最低1024MB。
解决方案: a. yarn-env.sh中的JAVA_HEAP_MAX=-Xmx1000m
b. 更改yarn-site.xml的配置文件(如下)


yarn.nodemanager.resource.memory-mb
65536


yarn.nodemanager.resource.cpu-vcores
16

a和b两个步骤都要执行,且b里面两项都要配置

2.9 配置和启动History Server
Hadoop日志聚合和jobhistoryserver配置,详细参考:
http://blog.csdn.net/qq_23146763/article/details/71896401
http://blog.csdn.net/shenfuli/article/details/52470688

注意:同时要修改hdfs上目录的权限

3.Hive安装

详细可参考:
http://www.cnblogs.com/kinginme/p/7233315.html

3.1 安装Mysql
详细可参考:
linux 安装mysql数据库——yum安装法,http://www.cnblogs.com/nzplearnSite/p/5002775.html

命令安装mysql

# yum install mysql mysql-server mysql-devel -y

最后提示 Complete! 表示安装成功

查看是否生成了mysqld服务, 并设置开机启动

# chkconfig --list |grep mysql

我们需要设置mysqld随机启动,执行下面命令进行设置

# chkconfig mysqld on

启动mysqld服务
执行如下命令进行启动,两种方法都可以:

# /etc/init.d/mysqld start
# service mysqld start

设置MySQL的root密码

mysqladmin -u root password "newpass"
mysql> create user 'hive' identified by 'hadoop123';
Query OK, 0 rows affected (0.00 sec)
mysql> create database hivemeta;
Query OK, 1 row affected (0.00 sec)
mysql> grant all privileges on hivemeta.* to 'hive'@'%' identified by 'hadoop123';
Query OK, 0 rows affected (0.00 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

注意:有时候感觉grant不起作用,是因为有的mysql版本的’%’不包括localhost,要单独对@’localhost’进行赋值
详细可参考:http://blog.sina.com.cn/s/blog_49cc672f0100w4dt.html

mysql> grant all privileges on hivemeta.* to 'hive'@'localhost' identified by 'hadoop123';
Query OK, 0 rows affected (0.00 sec)
mysql> grant all on *.* to root@'localhost' identified by 'hadoop123';
Query OK, 0 rows affected (0.00 sec)
mysql> select Host,User,Password from user;
+-----------+------+-------------------------------------------+
| Host | User | Password |
+-----------+------+-------------------------------------------+
| localhost | root | *F14F709577A216DE31466C3EB73SINANWUF9500 |
| bi01 | root | |
| 127.0.0.1 | root | |
| localhost | | |
| bi01 | | |
| % | root | *F14F709577A216DE31466C3EB73B85B3A95F9500 |
| % | hive | *F14F709577A216DE31466C3EB73B85B3A95F9500 |
| localhost | hive | *F14F709577A216DE31466C3EB73B85B3A95F9500 |
+-----------+------+-------------------------------------------+
8 rows in set (0.00 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

3.2 修改Hive配置文件
在目录/home/bdp/opt/hive-1.2.2/conf下拷贝一个模板出来,命名为:hive-site.xml

cp hive-default.xml.template hive-site.xml

hive-site.xml配置文件全部清空只保留以下内容,其中注意要修改jdbc的url参数




hive.metastore.warehouse.dir
/hive/warehouse



hive.metastore.uris




javax.jdo.option.ConnectionURL
jdbc:mysql://localhost:3306/hivemeta?createDatabaseIfNotExist=true&useSSL=false&characterEncoding=UTF-8



javax.jdo.option.ConnectionDriverName
com.mysql.jdbc.Driver



javax.jdo.option.ConnectionUserName
hive



javax.jdo.option.ConnectionPassword
hadoop123


hive.metastore.schema.verification
false



hive.aux.jars.path
/hive/lib/hive-hbase-handler-1.2.2.jar,/hive/lib/hbase-annotations-1.2.6.jar,/hive/lib/hbase-client-1.2.6.jar,/hive/lib/hbase-common-1.2.6.jar,/hive/lib/hbase-hadoop2-compat-1.2.6.jar,/hive/lib/hbase-it-1.2.6.jar,/hive/lib/hbase-prefix-tree-1.2.6.jar,/hive/lib/hbase-procedure-1.2.6.jar,/hive/lib/hbase-protocol-1.2.6.jar,/hive/lib/hbase-resource-bundle-1.2.6.jar,/hive/lib/hbase-rest-1.2.6.jar,/hive/lib/hbase-server-1.2.6.jar,/hive/lib/hbase-shell-1.2.6.jar,/hive/lib/hbase-thrift-1.2.6.jar,/hive/lib/zookeeper-3.4.10.jar,/hive/lib/guava-14.0.1.jar


hive.zookeeper.quorum
BI01,BI02,BI03


hive.auto.convert.join
false


hive.mapjoin.smalltable.filesize
25000000


hive.auto.convert.join.noconditionaltask
false


hive.auto.convert.join.noconditionaltask.size
500000000


3.3 MySQL的jdbc驱动,放到hive安装包的lib目录下
3.4 运行hive之前首先要确保meta store服务已经启动

nohup hive --service metastore > metastore.log 2>&1 &

3.5 启动Hive后,登录Mysql查看新建的表

mysql> use hivemeta;
mysql> show tables;
+---------------------------+
| Tables_in_hivemeta |
+---------------------------+
| BUCKETING_COLS |
| CDS |
| COLUMNS_V2 |
| DATABASE_PARAMS |
| DBS |
| GLOBAL_PRIVS |
| PARTITIONS |
| PARTITION_KEYS |
| PARTITION_KEY_VALS |
| PARTITION_PARAMS |
| PART_COL_STATS |
| ROLES |
| SDS |
| SD_PARAMS |
| SEQUENCE_TABLE |
| SERDES |
| SERDE_PARAMS |
| SKEWED_COL_NAMES |
| SKEWED_COL_VALUE_LOC_MAP |
| SKEWED_STRING_LIST |
| SKEWED_STRING_LIST_VALUES |
| SKEWED_VALUES |
| SORT_COLS |
| TABLE_PARAMS |
| TAB_COL_STATS |
| TBLS |
| VERSION |
+---------------------------+
27 rows in set (0.00 sec)

3.6 测试
详细可以参考:http://blog.csdn.net/blueheart20/article/details/38460541

hive> create table test1(name string, age int);
OK
Time taken: 1.25 seconds
hive> show tables;
OK
test1
Time taken: 0.101 seconds, Fetched: 1 row(s)
hive> desc test1;
OK
name string
age int
Time taken: 0.1 seconds, Fetched: 2 row(s)

进入MySQL查看test1表的信息:

mysql> select * from TBLS;
+--------+-------------+-------+------------------+-------+-----------+-------+----------+---------------+--------------------+--------------------+
| TBL_ID | CREATE_TIME | DB_ID | LAST_ACCESS_TIME | OWNER | RETENTION | SD_ID | TBL_NAME | TBL_TYPE | VIEW_EXPANDED_TEXT | VIEW_ORIGINAL_TEXT |
+--------+-------------+-------+------------------+-------+-----------+-------+----------+---------------+--------------------+--------------------+
| 1 | 1509345519 | 1 | 0 | bdp | 0 | 1 | test1 | MANAGED_TABLE | NULL | NULL |
+--------+-------------+-------+------------------+-------+-----------+-------+----------+---------------+--------------------+--------------------+
1 row in set (0.00 sec)

3.7 安装Hive过程中碰到的问题
错误:FAILED: SemanticException org.apache.hadoop.hive.ql.metadata.HiveException: java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient
原因:因为没有正常启动Hive 的 Metastore Server服务进程。
解决方法:启动Hive 的 Metastore Server服务进程,执行如下命令:

# hive --service metastore &

详细可以参考:http://blog.csdn.net/freedomboy319/article/details/44828337

错误:MetaException(message:Version information not found in metastore
详细可以参考:http://blog.csdn.net/youngqj/article/details/19987727

详细可以参考:彻底弄清Hive安装过程中的几个疑问点
http://www.aboutyun.com/thread-10937-1-1.html

4.ZooKeeper安装

详细可以参考下面两个帖子:
http://blog.csdn.net/aquester/article/details/24301195
http://zookeeper.apache.org/doc/trunk/zookeeperAdmin.html#sc_zkMulitServerSetup
4.1 三台服务器上分别创建data目录和myid文件

[bdp@BI02 ~]$ mkdir -p data/hadoop/zookeeper/data
Fullpath:/home/bdp/data/hadoop/zookeeper/data
[bdp@BI01 data]$ echo '1' > myid
[bdp@BI02 ~]$ echo '2' > data/hadoop/zookeeper/data/myid
[bdp@BI03 ~]$ echo '3' > data/hadoop/zookeeper/data/myid

4.2 修改conf/zoo.cfg

tickTime=2000
dataDir=/opt/zookeeper/data
clientPort=2181
initLimit=5
syncLimit=2
server.1=master1:2888:3888
server.2=slave1:2888:3888
server.3=slave2:2888:3888

  • server.N中的N值必须和myid保持相同。

  • 端口2181用于监听客户端的连接,端口2888用于Leader监听Follower的连接,而3888则用于Leader选举。

  • dataDir用来指定快照文件存放目录,dataLogDir用来指定事务日志文件存放目录。如果只指定了dataDir,而没指定dataLogDir,则事务日志文件也存放于dataDir指定的目录。

  • 默认,autopurge的两个参数是被注释的。“autopurge.purgeInterval”指定自动清理快照文件和事务日志文件的时间,单位为小时,默认为0表示不自动清理,这个时候可以使用脚本zkCleanup.sh手动清理。不清理的结果是占用的磁盘空间越来越大。“autopurge.snapRetainCount”用于指定保留快照文件和事务日志文件的个数,默认为3。

最后我的配置如下:

tickTime=2000
initLimit=5
syncLimit=2
dataDir=/home/bdp/data/hadoop/zookeeper/data
dataLogDir=/home/bdp/opt/zookeeper-3.4.10/logs
clientPort=2181
autopurge.snapRetainCount=10
autopurge.purgeInterval=1
server.1=BI01:2888:3888
server.2=BI02:2888:3888
server.3=BI03:2888:3888

4.3 修改/bin/zkEnv.sh
设置环境变量ZOO_LOG_DIR为zookeeper的日志存放目录,如:
export ZOO_LOG_DIR=/data/hadoop/zookeeper/log
可将这一行放在ZOOKEEPER_PREFIX之后。
再修改下ZOO_LOG4J_PROP,以让日志不是输出到zookeeper.out,而是写入到日志文件,将:ZOO_LOG4J_PROP=”INFO,CONSOLE”,改成:
ZOO_LOG4J_PROP=”INFO,ROLLINGFILE”

4.4 修改conf/log4j.properties
log4j.appender.ROLLINGFILE.MaxFileSize=100MB
log4j.appender.ROLLINGFILE.MaxBackupIndex=10
设置每个日志文件大小为100M,滚动10个。

5.HBase安装

官方参考:
http://hbase.apache.org/book.html#quickstart_fully_distributed
详细可以参考:
http://blog.csdn.net/gamer_gyt/article/details/52032579

提示:先看单机伪分布的配置,才能继续真正分布式的配置
5.1 编辑/home/bdp/opt/hbase-1.2.6/conf/hbase-env.sh

# The java implementation to use. Java 1.7+ required.
export JAVA_HOME=/usr/java/jdk1.8.0_144
# Extra Java CLASSPATH elements. Optional.
# export HBASE_CLASSPATH=
# The maximum amount of heap to use. Default is left to JVM default.
export HBASE_HEAPSIZE=7G
# Uncomment below if you intend to use off heap cache. For example, to allocate 8G of
# offheap, set the value to "8G".
# export HBASE_OFFHEAPSIZE=1G
# Extra Java runtime options.
# Below are what we set by default by SinanWu. May only work with SUN JVM.
# For more on why as well as other possible settings,
# see http://wiki.apache.org/hadoop/PerformanceTuning
export HBASE_OPTS="-Xmx24G -Xms16G -Xmn9G -XX:PermSize=1G -XX:MaxPermSize=2G -XX:SurvivorRatio=8 -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=70 -XX:+UseCMSInitiatingOccupancyOnly -XX:+CMSParallelRemarkEnabled -XX:+UseParNewGC -XX:+UseCMSCompactAtFullCollection -XX:CMSFullGCsBeforeCompaction=0 -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -Xloggc:$HBASE_HOME/logs/gc-$(hostname)-hbase.log"
# Tell HBase whether it should manage it's own instance of Zookeeper or not.
export HBASE_MANAGES_ZK=false

5.2 编辑编辑/home/bdp/opt/hbase-1.2.6/conf/hbase-site.xml



hbase.rootdir
hdfs://BI01:9000/hbase


hbase.zookeeper.property.dataDir
/home/bdp/data/hadoop/zookeeper/data


hbase.cluster.distributed
true


hbase.master
BI01:60000


hbase.zookeeper.quorum
BI01,BI02,BI03


hbase.zookeeper.property.clientPort
2181


zookeeper.session.timeout
300000


hbase.zookeeper.property.tickTime
60000


hbase.hregion.memstroe.mslab.enable
true


hbase.zookeeper.property.maxClientCnxns
10000


hbase.client.scanner.timeout.period
660000


hbase.rpc.timeout
660000


hbase.client.retries.number
2


5.3 编辑conf/regionservers
清空文件里的已有内容,修改为:

BI02
BI03

5.4 配置BI02为backup master
Configure HBase to use node-b as a backup master. Create a new file in conf/ of BI02 called backup-masters, and add a new line to it with the hostname for node-b.
在BI02服务器上,/home/bdp/opt/hbase-1.2.6/conf/目录下创建backup-masters文件,内容如下所示:

[bdp@BI02 conf]$ cat backup-masters
BI02
[bdp@BI02 conf]$

5.5 先确保ZooKeeper已经启动,再启动HBase

6.Kylin安装

6.1 安装按照官方文档进行
6.2.配置和启动Hadoop history server
6.3 修改必要的hdfs上面的文件夹的权限
6.4 可考虑修改配置文件:kylin_hive_conf.xml,禁用hive的本地mapred任务。这是因为hive的本地任务,文件大小和个数满足一个条件就会启用,因此一两个大表会导致本地模式内存溢出

Kylin的安装比较简单,但是在Cube的创建上会碰到很多问题,更多更新可以移步到 http://shuquaner.com/ 保持关注:)


推荐阅读
  • Nginx使用AWStats日志分析的步骤及注意事项
    本文介绍了在Centos7操作系统上使用Nginx和AWStats进行日志分析的步骤和注意事项。通过AWStats可以统计网站的访问量、IP地址、操作系统、浏览器等信息,并提供精确到每月、每日、每小时的数据。在部署AWStats之前需要确认服务器上已经安装了Perl环境,并进行DNS解析。 ... [详细]
  • Linux服务器密码过期策略、登录次数限制、私钥登录等配置方法
    本文介绍了在Linux服务器上进行密码过期策略、登录次数限制、私钥登录等配置的方法。通过修改配置文件中的参数,可以设置密码的有效期、最小间隔时间、最小长度,并在密码过期前进行提示。同时还介绍了如何进行公钥登录和修改默认账户用户名的操作。详细步骤和注意事项可参考本文内容。 ... [详细]
  • 本文介绍了在Linux下安装和配置Kafka的方法,包括安装JDK、下载和解压Kafka、配置Kafka的参数,以及配置Kafka的日志目录、服务器IP和日志存放路径等。同时还提供了单机配置部署的方法和zookeeper地址和端口的配置。通过实操成功的案例,帮助读者快速完成Kafka的安装和配置。 ... [详细]
  • 本文介绍了在RHEL 7中的系统日志管理和网络管理。系统日志管理包括rsyslog和systemd-journal两种日志服务,分别介绍了它们的特点、配置文件和日志查询方式。网络管理主要介绍了使用nmcli命令查看和配置网络接口的方法,包括查看网卡信息、添加、修改和删除配置文件等操作。 ... [详细]
  • 在单位的一台4cpu的服务器上部署了esxserver,挂载了6个虚拟机,目前运行正常。在安装部署过程中,得到了cnvz.net论坛精华区 ... [详细]
  • 本文介绍了在rhel5.5操作系统下搭建网关+LAMP+postfix+dhcp的步骤和配置方法。通过配置dhcp自动分配ip、实现外网访问公司网站、内网收发邮件、内网上网以及SNAT转换等功能。详细介绍了安装dhcp和配置相关文件的步骤,并提供了相关的命令和配置示例。 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • mac php错误日志配置方法及错误级别修改
    本文介绍了在mac环境下配置php错误日志的方法,包括修改php.ini文件和httpd.conf文件的操作步骤。同时还介绍了如何修改错误级别,以及相应的错误级别参考链接。 ... [详细]
  • 解决github访问慢的问题的方法集锦
    本文总结了国内用户在访问github网站时可能遇到的加载慢的问题,并提供了解决方法,其中包括修改hosts文件来加速访问。 ... [详细]
  • 目录浏览漏洞与目录遍历漏洞的危害及修复方法
    本文讨论了目录浏览漏洞与目录遍历漏洞的危害,包括网站结构暴露、隐秘文件访问等。同时介绍了检测方法,如使用漏洞扫描器和搜索关键词。最后提供了针对常见中间件的修复方式,包括关闭目录浏览功能。对于保护网站安全具有一定的参考价值。 ... [详细]
  • 本文介绍了禅道作为一款国产开源免费的测试管理工具的特点和功能,并提供了禅道的搭建和调试方法。禅道是一款B/S结构的项目管理工具,可以实现组织管理、后台管理、产品管理、项目管理和测试管理等功能。同时,本文还介绍了其他软件测试相关工具,如功能自动化工具和性能自动化工具,以及白盒测试工具的使用。通过本文的阅读,读者可以了解禅道的基本使用方法和优势,从而更好地进行测试管理工作。 ... [详细]
  • 本文总结了初学者在使用dubbo设计架构过程中遇到的问题,并提供了相应的解决方法。问题包括传输字节流限制、分布式事务、序列化、多点部署、zk端口冲突、服务失败请求3次机制以及启动时检查。通过解决这些问题,初学者能够更好地理解和应用dubbo设计架构。 ... [详细]
  • linux6.5 配置邮件服务,centos 6.5服务器搭建邮件服务postfix和dovecot
    centos6.5搭建邮件服务postfix和dovecot------------------------------------------------安装DNS指定邮件交换记 ... [详细]
  • 如何提高PHP编程技能及推荐高级教程
    本文介绍了如何提高PHP编程技能的方法,推荐了一些高级教程。学习任何一种编程语言都需要长期的坚持和不懈的努力,本文提醒读者要有足够的耐心和时间投入。通过实践操作学习,可以更好地理解和掌握PHP语言的特异性,特别是单引号和双引号的用法。同时,本文也指出了只走马观花看整体而不深入学习的学习方式无法真正掌握这门语言,建议读者要从整体来考虑局部,培养大局观。最后,本文提醒读者完成一个像模像样的网站需要付出更多的努力和实践。 ... [详细]
  • PHP组合工具以及开发所需的工具
    本文介绍了PHP开发中常用的组合工具和开发所需的工具。对于数据分析软件,包括Excel、hihidata、SPSS、SAS、MARLAB、Eview以及各种BI与报表工具等。同时还介绍了PHP开发所需的PHP MySQL Apache集成环境,包括推荐的AppServ等版本。 ... [详细]
author-avatar
红星闪闪爱哭的鱼
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有