一、部署准备
1.环境说明
本手册部署软件环境如下表所示:
| 类型 | 名称 | 版本 |
|---|---|---|
| 操作系统 | Redhat | 7.2 |
| 中间件 | Hadoop | 3.1.1 |
| Hive | ||
二、服务器基础配置
注意:需要在所有服务器执行。
1、解除 Linux 系统限制
执行:
vim /etc/security/limits.conf
添加如下内容:
soft noproc 65535hard noproc 65535soft nofile 65535hard nofile 65535
执行:
vim /etc/profile
添加如下内容:
ulimit -u 65535ulimit -n 65535
执行:
source /etc/profile
2、修改主机名和主机映射
永久修改主机名:
hostnamectl set-hostname bigdata-1.mid.neu.comhostnamectl set-hostname bigdata-2.mid.neu.comhostnamectl set-hostname bigdata-3.mid.neu.comhostnamectl set-hostname bigdata-4.mid.neu.com
临时修改主机名:
hostname bigdata-1.mid.neu.comhostname bigdata-2.mid.neu.comhostname bigdata-3.mid.neu.comhostname bigdata-4.mid.neu.com
执行:
vim /etc/hosts
添加如下内容:
10.10.195.53 bigdata-1.mid.neu.com bigdata-110.10.195.54 bigdata-2.mid.neu.com bigdata-210.10.195.55 bigdata-3.mid.neu.com bigdata-310.10.195.56 bigdata-4.mid.neu.com bigdata-4
测试:
ping bigdata-1ping bigdata-2ping bigdata-3ping bigdata-4
3、关闭防火墙和selinux
a)关闭防火墙:
防火墙大家都可以理解,这里不作细说明。
查看防火墙状态:
firewall-cmd --state
临时停止firewall:
systemctl stop firewalld.service
永久禁止开启启动firewall:
systemctl disable firewalld.service
b)关闭SELinux
查看:
getenforce 或者 /usr/sbin/sestatus -v
临时禁用:
setenforce 0
永久禁用:
执行:
vim /etc/selinux/config
将SELINUX=enforce改成SELINUX=disabled
保存,重启
4、服务器之间免密ssh登陆
a)制作秘钥:
cd ~
执行:
ssh-keygen
直接一路回车,采用默认配置。
b)拷贝秘钥:
ssh-copy-id -i ~/.ssh/id_rsa.pub root@bigdata-1
ssh-copy-id -i ~/.ssh/id_rsa.pub root@bigdata-2
ssh-copy-id -i ~/.ssh/id_rsa.pub root@bigdata-3
ssh-copy-id -i ~/.ssh/id_rsa.pub root@bigdata-4
5、时钟同步
NTP服务设置
节点1配置:
执行:
vim /etc/ntp.conf
注释掉原先的默认配置:
#server 0.centos.pool.ntp.org iburst
#server 1.centos.pool.ntp.org iburst
#server 2.centos.pool.ntp.org iburst
#server 3.centos.pool.ntp.org iburst
添加如下配置(配置时钟同步地址为时钟同步服务器):
server 10.10.195.106
fudge 10.10.195.106 stratum 2
restrict 127.0.0.1
logfile /var/log/ntp.log
重启ntp服务
systemctl restart ntpd.service
其他节点配置:
执行:
vim /etc/ntp.conf
注释掉原先的默认配置:
#server 0.centos.pool.ntp.org iburst
#server 1.centos.pool.ntp.org iburst
#server 2.centos.pool.ntp.org iburst
#server 3.centos.pool.ntp.org iburst
添加如下配置:
server 10.10.195.53
fudge 10.10.195.106 stratum 3
restrict 127.0.0.1
logfile /var/log/ntp.log
重启ntp服务
systemctl restart ntpd.service
查看ntp状态:
ntpq -p
开启自启动:
systemctl enable ntpd
二、服务器大数据组件部署
规划:
bigdata-1:master节点
bigdata-2:worker节点
bigdata-3:worker节点
bigdata-4:worker节点
1、jdk部署(各节点部署)
解压缩:
tar -xvf jdk-8u211-linux-x64.tar -C /home
设置环境变量:
vim /etc/profile
添加如下内容:
export JAVA_HOME=/home/jdk1.8.0_211
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
生效:
source /etc/profile
验证:
java -version
复制到其他节点:
scp -r jdk1.8.0_211/ bigdata-2:/home
scp -r jdk1.8.0_211/ bigdata-3:/home
scp -r jdk1.8.0_211/ bigdata-4:/home
其他节点设置环境变量:
vim /etc/profile
添加如下内容:
export JAVA_HOME=/home/jdk1.8.0_211
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
生效:
source /etc/profile
验证:
java -version
2、hadoop部署:
下载安装介质:
https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/hadoop-3.1.2/hadoop-3.1.2.tar.gz
解压缩:
tar -xvf hadoop-3.1.2.tar -C /home
设置环境变量:
vim /etc/profile
添加如下内容:
export HADOOP_HOME=/home/hadoop-3.1.2
export PATH=$PATH:$HADOOP_HOME/bin
生效:
source /etc/profile
创建存储目录:
mkdir -p /home/hadoop-3.1.2/data/tmp
mkdir -p /home/hadoop-3.1.2/data/namenode
mkdir -p /home/hadoop-3.1.2/data/datanode
修改配置文件:
进入hadoop配置目录:
cd /home/hadoop-3.1.2/etc/hadoop
执行:
vim hadoop-env.sh
添加如下内容:
export JAVA_HOME=/home/jdk1.8.0_211
export HDFS_NAMENODE_USER=root
export HDFS_DATANODE_USER=root
export HDFS_SECONDARYNAMENODE_USER=root
export YARN_RESOURCEMANAGER_USER=root
export HDFS_DATANODE_SECURE_USER=root
export YARN_NODEMANAGER_USER=root
执行:
vim core-site.xml
修改为内容:
fs.defaultFS
hdfs://bigdata-1.mid.neu.com:9000
hadoop.tmp.dir
/home/hadoop-3.1.2/data/tmp
执行:
vim hdfs-site.xml
修改为如下内容:
dfs.namenode.http-address
bigdata-1.mid.neu.com:50070
dfs.namenode.secondary.http-address
bigdata-1.mid.neu.com:50090
dfs.namenode.name.dir
/home/hadoop-3.1.2/data/namenode
dfs.replication
2
dfs.datanode.data.dir
/home/hadoop-3.1.2/data/datanode
dfs.permissions
false
执行:
vim mapred-site.xml
修改如下内容:
mapreduce.framework.name
yarn
mapreduce.application.classpath
/home/hadoop-3.1.2/etc/hadoop,
/home/hadoop-3.1.2/share/hadoop/common/,
/home/hadoop-3.1.2/share/hadoop/common/lib/,
/home/hadoop-3.1.2/share/hadoop/hdfs/,
/home/hadoop-3.1.2/share/hadoop/hdfs/lib/,
/home/hadoop-3.1.2/share/hadoop/mapreduce/,
/home/hadoop-3.1.2/share/hadoop/mapreduce/lib/,
/home/hadoop-3.1.2/share/hadoop/yarn/,
/home/hadoop-3.1.2/share/hadoop/yarn/lib/
执行:
vim yarn-site.xml
修改如下内容:
yarn.nodemanager.aux-services
mapreduce_shuffle
yarn.nodemanager.aux-services.mapreduce.shuffle.class
org.apache.hadoop.mapred.ShuffleHandle
yarn.resourcemanager.resource-tracker.address
bigdata-1.mid.neu.com:8025
yarn.resourcemanager.scheduler.address
bigdata-1.mid.neu.com:8030
yarn.resourcemanager.address
bigdata-1.mid.neu.com:8040
执行:
vim /home/hadoop-3.1.2/sbin/start-dfs.sh
vim /home/hadoop-3.1.2/sbin/stop-dfs.sh
在文件顶端,添加如下内容:
HDFS_DATANODE_USER=root
HADOOP_SECURE_DN_USER=root
HDFS_NAMENODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root
执行:
vim /home/hadoop-3.1.2/sbin/start-yarn.sh
vim /home/hadoop-3.1.2/sbin/stop-yarn.sh
在文件顶端,添加如下内容:
YARN_RESOURCEMANAGER_USER=root
HADOOP_SECURE_DN_USER=root
YARN_NODEMANAGER_USER=root
执行:
vim /home/hadoop-3.1.2/etc/hadoop/workers
添加:
bigdata-2.mid.neu.com
bigdata-3.mid.neu.com
bigdata-4.mid.neu.com
复制hadoop目录到其它节点:
scp -r /home/hadoop-3.1.2/ 10.10.195.54:/home
scp -r /home/hadoop-3.1.2/ 10.10.195.55:/home
scp -r /home/hadoop-3.1.2/ 10.10.195.55:/home
配置其它节点环境变量:
vim /etc/profile
添加如下内容:
export HADOOP_HOME=/home/hadoop-3.1.2
export PATH=$PATH:$HADOOP_HOME/bin
生效:
source /etc/profile
hdfs格式化:
/home/hadoop-3.1.2/bin/hdfs namenode -format
观察是否包含以下内容:
common.Storage: Storage directory /home/hadoop-3.1.2/data/namenode has been successfully formatted.
启动hadoop:
/home/hadoop-3.1.2/sbin/start-all.sh
验证:
执行:
jps
观察内容:
主管理节点:
14633 ResourceManager
14985 Jps
13724 NameNode
14205 SecondaryNameNode
子节点:
30242 NodeManager
30499 Jps
29942 DataNode
3、hive部署
需要先安装mysql数据库。步骤如下:
卸载centos7原先自带的mariadb
rpm -qa|grep mariadb
rpm -e —nodeps mariadb-libs
rpm -e —nodeps mariadb-devel
rpm -e —nodeps mariadb-server
rpm -e —nodeps mariadb
按照顺序执行如下命令:
rpm -ivh mysql-community-common-5.7.17-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.17-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.17-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.17-1.el7.x86_64.rpm
启动mysql:
systemctl start mysqld.service
查找初始密码:
grep ‘temporary password’ /var/log/mysqld.log
登陆mysql:
mysql -uroot -pxxxxxxxxx
修改初始密码,并允许其他服务器登陆:
set password = password(‘Root,123’);
update mysql.user set host=”%” where Host=’localhost’ and user = “root”;
flush privileges;
创建hive数据库:
create database hive;
下载hive安装介质:
https://mirrors.tuna.tsinghua.edu.cn/apache/hive/hive-3.1.2/apache-hive-3.1.2-bin.tar.gz
解压缩:
tar -xvf apache-hive-3.1.2-bin.tar -C /home
mv /home/apache-hive-3.1.2-bin /home/hive-3.1.2
复制mysql驱动到hive目录:
cp /home/software/mysql-connector-java-8.0.12.jar /home/hive-3.1.2/lib/
设置环境变量:
vim /etc/profile
添加如下内容:
export HIVE_HOME=/home/hive-3.1.2
export PATH=$PATH:$HIVE_HOME/bin
生效:
source /etc/profile
配置hive:
cp /home/hive-3.1.2/conf/hive-default.xml.template /home/hive-3.1.2/conf/hive-site.xml
vim /home/hive-3.1.2/conf/hive-site.xml
修改如下内容:
javax.jdo.option.ConnectionURL
jdbc:mysql://bigdata-1.mid.neu.com:3306/hive?useSSL=false
javax.jdo.option.ConnectionDriverName
com.mysql.cj.jdbc.Driver
javax.jdo.option.ConnectionUserName
root
javax.jdo.option.ConnectionPassword
Root,123
hive.metastore.schema.verification
false
配置日志输出:
cp /home/hive-3.1.2/conf/hive-log4j2.properties.template /home/hive-3.1.2/conf/hive-log4j2.properties
初始化hive数据库模型:
/home/hive-3.1.2/bin/schematool -dbType mysql -initSchema
验证:
执行hive命令进入命令行。
执行:
show databases;
启动hiveserver2和mateserver:
启动之前,需要向hdfs的core-site.xml文件追加如下内容:
hadoop.proxyuser.root.hosts
*
hadoop.proxyuser.root.groups
*
启动:
nohup hive —service metastore &
nohup hive —service hiveserver2 &
4、部署tez(#####待删除####)
下载安装介质:
https://mirrors.tuna.tsinghua.edu.cn/apache/tez/0.9.2/apache-tez-0.9.2-bin.tar.gz
解压缩:
tar -xvf apache-tez-0.9.2-bin.tar -C /home
mv /home/apache-tez-0.9.2-bin/ /home/tez-0.9.2
tez自带的hadoop包版本较低,为防止异常需要替换:
备份自带jar包:
mkdir /home/tez-0.9.2/lib/bak
mv /home/tez-0.9.2/lib/hadoop-mapreduce-client-common-2.7.2.jar /home/tez-0.9.2/lib/bak
mv /home/tez-0.9.2/lib/hadoop-mapreduce-client-core-2.7.2.jar /home/tez-0.9.2/lib/bak
复制现有hadoop版本jar包:
cp /home/hadoop-3.1.2/share/hadoop/mapreduce/hadoop-mapreduce-client-common-3.1.2.jar /home/tez-0.9.2/lib/
cp /home/hadoop-3.1.2/share/hadoop/mapreduce/hadoop-mapreduce-client-core-3.1.2.jar /home/tez-0.9.2/lib/
在hdfs上新建tez文件目录,并上传依赖文件:
hadoop fs -mkdir /user/tez
hadoop fs -put /home/tez-0.9.2/share/tez.tar.gz /user/tez/
添加tez配置文件:
vim /home/hadoop-3.1.2/etc/hadoop/tez-site.xml
添加如下内容:
<property><name>tez.lib.uris</name><value>hdfs://bigdata-1.mid.neu.com:9000/user/tez/tez.tar.gz</value></property>
<property><name>tez.container.max.java.heap.fraction</name><value>0.2</value></property>
将该文件复制到其它节点:
scp -r /home/hadoop-3.1.2/etc/hadoop/tez-site.xml 10.10.195.54:/home/hadoop-3.1.2/etc/hadoop/
scp -r /home/hadoop-3.1.2/etc/hadoop/tez-site.xml 10.10.195.55:/home/hadoop-3.1.2/etc/hadoop/
scp -r /home/hadoop-3.1.2/etc/hadoop/tez-site.xml 10.10.195.56:/home/hadoop-3.1.2/etc/hadoop/
配置tez环境变量:
vim /etc/profile
添加如下内容:
export TEZCONF_DIR=$HADOOP_HOME/etc/hadoop
export TEZ_HOME=/home/tez-0.9.2
export TEZ_JARS=$TEZ_HOME/:$TEZHOME/lib/
export PATH=$PATH:$TEZ_HOME/bin
export HADOOP_CLASSPATH=$TEZ_CONF_DIR:$TEZ_JARS:$HADOOP_CLASSPATH
生效:
source /etc/profile
复制安装包到其它节点:
scp -r /home/tez-0.9.2 10.10.195.54:/home
scp -r /home/tez-0.9.2 10.10.195.55:/home
scp -r /home/tez-0.9.2 10.10.195.56:/home
配置其它节点环境变量:
vim /etc/profile
添加如下内容:
export TEZCONF_DIR=$HADOOP_HOME/etc/hadoop
export TEZ_HOME=/home/tez-0.9.2
export TEZ_JARS=$TEZ_HOME/:$TEZHOME/lib/
export PATH=$PATH:$TEZ_HOME/bin
export HADOOP_CLASSPATH=$TEZ_CONF_DIR:$TEZ_JARS:$HADOOP_CLASSPATH
生效:
source /etc/profile
重启hadoop
4、tez部署
注意:由于tez的bin包中,默认使用的是2.7版本的hadoop,因此一定要手工编译自己需要版本的tez。同时,需要注意的是,编译过程需要联网。
编译过程(由于本机是macbook,故操作类似于linux操作)
下载待编译源码:
https://mirrors.tuna.tsinghua.edu.cn/apache/tez/0.9.2/apache-tez-0.9.2-src.tar.gz
编译整个过程,参考官方文档:
http://tez.apache.org/install.html
这里简要介绍一下linux下的编译过程:
手工编译需要的工具:
jdk1.8、maven3以上版本、protobuf-2.5.0
jdk1.8已安装好。
maven3安装:
下载链接:
https://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.6.2/binaries/apache-maven-3.6.2-bin.tar.gz
解压缩:
tar -xvf apache-maven-3.6.2-bin.tar -C /home
mv /home/apache-maven-3.6.2/ /home/maven-3.6.2
配置环境变量:
vim /etc/profile
添加如下内容:
export MAVEN_HOME=/home/maven-3.6.2
export PATH=$PATH:$MAVEN_HOME/bin
生效:
source /etc/profile
安装protobuf-2.5.0:
下载链接:
https://github.com/google/protobuf/releases/download/v2.5.0/protobuf-2.5.0.tar.gz
解压缩:
tar -xvf protobuf-2.5.0.tar -C /home
cd /home/protobuf-2.5.0
./configure —prefix=/home/protobuf
make
make check
make install
注意:make install 要用root用户
编译:
cd /home/tez-0.9.2
mvn clean package -DskipTests=true -Dmaven.javadoc.skip=true -Phadoop28 -Dhadoop.version=3.1.2
解压缩编译后的tez程序包:
mkdir /home/tez-0.9.2
tar -xvf /home/tez-0.9.2-src/tez-dist/target/tez-0.9.2-minimal.tar.gz -C /home/tez-0.9.2
在hdfs上新建tez文件目录,并上传依赖文件:
hadoop fs -mkdir /user/tez
hadoop fs -put /home/tez-0.9.2-src/tez-dist/target/tez-0.9.2.tar.gz /user/tez
hadoop fs -mv /user/tez/tez-0.9.2.tar.gz /user/tez/tez.tar.gz
添加tez配置文件:
vim /home/hadoop-3.1.2/etc/hadoop/tez-site.xml
添加如下内容:
<property><name>tez.lib.uris</name><value>hdfs://bigdata-1.mid.neu.com:9000/user/tez/tez.tar.gz</value></property>
<property><name>tez.container.max.java.heap.fraction</name><value>0.2</value></property>
将该文件复制到其它节点:
scp -r /home/hadoop-3.1.2/etc/hadoop/tez-site.xml 10.10.195.54:/home/hadoop-3.1.2/etc/hadoop/
scp -r /home/hadoop-3.1.2/etc/hadoop/tez-site.xml 10.10.195.55:/home/hadoop-3.1.2/etc/hadoop/
scp -r /home/hadoop-3.1.2/etc/hadoop/tez-site.xml 10.10.195.56:/home/hadoop-3.1.2/etc/hadoop/
配置tez环境变量:
vim /etc/profile
添加如下内容:
export TEZCONF_DIR=$HADOOP_HOME/etc/hadoop
export TEZ_HOME=/home/tez-0.9.2
export TEZ_JARS=$TEZ_HOME/:$TEZHOME/lib/
export PATH=$PATH:$TEZ_HOME/bin
export HADOOP_CLASSPATH=$TEZ_CONF_DIR:$TEZ_JARS:$HADOOP_CLASSPATH
生效:
source /etc/profile
复制安装包到其它节点:
scp -r /home/tez-0.9.2 10.10.195.54:/home
scp -r /home/tez-0.9.2 10.10.195.55:/home
scp -r /home/tez-0.9.2 10.10.195.56:/home
配置其它节点环境变量:
vim /etc/profile
添加如下内容:
export TEZCONF_DIR=$HADOOP_HOME/etc/hadoop
export TEZ_HOME=/home/tez-0.9.2
export TEZ_JARS=$TEZ_HOME/:$TEZHOME/lib/
export PATH=$PATH:$TEZ_HOME/bin
export HADOOP_CLASSPATH=$TEZ_CONF_DIR:$TEZ_JARS:$HADOOP_CLASSPATH
生效:
source /etc/profile
重启hadoop
问题:
org.apache.hadoop.yarn.exceptions.InvalidResourceRequestException: Invalid resource request, requested resource type=[memory-mb] < 0 or greater than maximum allowed allocation. Requested resource=
解决:
hive配置文件hive-site.xml中添加如下内容:
hive.tez.container.size
1024
或者在hive cli中设置set hive.tez.container.size=1024;
问题:
hive命令行日志输出内容较多,并提示
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/home/tez-0.9.2/lib/slf4j-log4j12-1.7.10.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/home/hadoop-3.1.2/share/hadoop/common/lib/slf4j-log4j12-1.7.25.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory]
解决:
删除或者移走/home/tez-0.9.2/lib/slf4j-log4j12-1.7.10.jar。
5、zookeeper部署
下载安装介质:
https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/stable/apache-zookeeper-3.5.5-bin.tar.gz
解压缩:
tar -xvf apache-zookeeper-3.5.5-bin.tar -C /home
mv apache-zookeeper-3.5.5-bin/ zookeeper-3.5.5
创建数据目录和日志目录:
mkdir /home/zookeeper-3.5.5/data
mkdir /home/zookeeper-3.5.5/logs
配置:
vim /home/zookeeper-3.5.5/conf/zoo.cfg
填入以下内容:
tickTime=2000
dataDir=/home/zookeeper-3.5.5/data
dataLogDir=/home/zookeeper-3.5.5/logs
clientPort=2181
initLimit=5
syncLimit=2
server.1=bigdata-1.mid.neu.com:2888:3888
server.2=bigdata-2.mid.neu.com:2888:3888
server.3=bigdata-3.mid.neu.com:2888:3888
复制到其它节点(zookeeper的节点必须是奇数):
scp -r /home/zookeeper-3.5.5 10.10.195.54:/home
scp -r /home/zookeeper-3.5.5 10.10.195.55:/home
配置zookeeper服务器id:
touch /home/zookeeper-3.5.5/data/myid
vim /home/zookeeper-3.5.5/data/myid
填入1(注意,参考配置文件server.1、server.2、server.3的配置主机,配置不同的id,如2,3)
启动:
各节点执行:
/home/zookeeper-3.5.5/bin/zkServer.sh start
检查状态:
/home/zookeeper-3.5.5/bin/zkServer.sh status
6、hbase部署:
下载安装介质:
http://mirrors.tuna.tsinghua.edu.cn/apache/hbase/2.1.6/hbase-2.1.6-bin.tar.gz
解压缩:
tar -xvf hbase-2.1.6-bin.tar -C /home
配置环境变量:
vim /etc/profile
添加如下内容:
export HBASE_HOME=/home/hbase-2.1.6
export PATH=$PATH:$HBASE_HOME/bin
生效:
source /etc/profile
配置hbase:
vim /home/hbase-2.1.6/conf/hbase-env.sh
添加如下内容:
export JAVA_HOME=/home/jdk1.8.0_211
export HBASE_MANAGES_ZK=false
vim /home/hbase-2.1.6/conf/hbase-site.xml
添加如下内容:
hbase.rootdir
hdfs://bigdata-1.mid.neu.com:9000/hbase
hbase.cluster.distributed
true
hbase.zookeeper.property.clientPort
2181
hbase.zookeeper.quorum
bigdata-1.mid.neu.com,bigdata-2.mid.neu.com,bigdata-3.mid.neu.com
vim /home/hbase-2.1.6/conf/regionservers
修改为如下内容:
bigdata-2.mid.neu.com
bigdata-3.mid.neu.com
bigdata-4.mid.neu.com
复制到其它节点:
scp -r /home/hbase-2.1.6 10.10.195.54:/home
scp -r /home/hbase-2.1.6 10.10.195.55:/home
scp -r /home/hbase-2.1.6 10.10.195.56:/home
配置其它节点环境变量:
vim /etc/profile
添加如下内容:
export HBASE_HOME=/home/hbase-2.1.6
export PATH=$PATH:$HBASE_HOME/bin
生效:
source /etc/profile
启动:
/home/hbase-2.1.6/bin/start-hbase.sh
错误:Caused by: java.lang.NoClassDefFoundError: org/apache/htrace/SamplerBuilder
解决:
cp /home/hbase-2.1.6/lib/client-facing-thirdparty/htrace-core-3.1.0-incubating.jar /home/hbase-2.1.6/lib/
错误:
java.lang.IllegalStateException: The procedure WAL relies on the ability to hsync for proper operation during component failures, but the underlying filesystem does not support doing so. Please check the config value of ‘hbase.procedure.store.wal.use.hsync’ to set the desired level of robustness and ensure the config value of ‘hbase.wal.dir’ points to a FileSystem mount that can provide it.
解决:
hbase-site.xml中增加如下配置:
hbase.unsafe.stream.capability.enforce
false
验证:
jps查看hmaster进程和hregionserver进程。
7、sqoop部署:
下载安装介质:
https://mirrors.tuna.tsinghua.edu.cn/apache/sqoop/1.4.7/sqoop-1.4.7.bin__hadoop-2.6.0.tar.gz
解压缩:
tar -xvf sqoop-1.4.7.binhadoop-2.6.0.tar -C /home
mv sqoop-1.4.7.binhadoop-2.6.0/ sqoop-1.4.7
配置环境变量:
vim /etc/profile
添加如下内容:
export SQOOP_HOME=/home/sqoop-1.4.7
export PATH=$PATH:$SQOOP_HOME/bin
生效:
source /etc/profile
配置:
cp /home/sqoop-1.4.7/conf/sqoop-env-template.sh /home/sqoop-1.4.7/conf/sqoop-env.sh
vim /home/sqoop-1.4.7/conf/sqoop-env.sh
添加如下内容:
export HADOOP_COMMON_HOME=/home/hadoop-3.1.2
export HADOOP_MAPRED_HOME=/home/hadoop-3.1.2
export HBASE_HOME=/home/hbase-2.1.6
export HIVE_HOME=/home/hive-3.1.2
export ZOOCFGDIR=/home/zookeeper-3.5.5
复制驱动:
cp /home/software/mysql-connector-java-8.0.12.jar /home/sqoop-1.4.7/lib/
连接测试:
sqoop version
sqoop list-databases —connect jdbc:mysql://bigdata-1.mid.neu.com:3306/hive?useSSL=false —username root —password Root,123
8、hive配置llap
安装apache slider。
解压缩:
tar -xvf apache-slider-0.92.0-incubating-source-release.tar
依然需要联网编译。
mvn clean package -DskipTests=true -Dmaven.javadoc.skip=true -Dhadoop.version=3.1.2
解压缩:
tar -xvf /home/software/slider-0.92.0-incubating-all.tar.gz -C /home
mv /home/slider-0.92.0-incubating/ /home/slider-0.92.0
配置环境变量:
vim /etc/profile
添加如下内容:
export SLIDER_HOME=/home/slider-0.92.0
export PATH=$PATH:$SLIDER_HOME/bin
生效:
source /etc/profile
验证:
slider version
配置slider:
vim /home/slider-0.92.0/conf/slider-client.xml
添加如下内容:
hadoop.registry.zk.quorum
bigdata-1.mid.neu.com:2181,bigdata-2.mid.neu.com:2181,bigdata-3.mid.neu.com:2181
yarn.resourcemanager.address
bigdata-1.mid.neu.com:8032
验证:
slider list
LLAP安装:
配置hive-site.xml
添加如下内容:
hive.execution.mode
llap
hive.llap.execution.mode
all
hive.llap.daemon.service.hosts
@llap_service
hive.zookeeper.quorum
bigdata-1.mid.neu.com,bigdata-2.mid.neu.com,bigdata-3.mid.neu.com
hive.zookeeper.client.port
2181
hive.llap.daemon.memory.per.instance.mb
4096
hive.llap.daemon.num.executors
2
生成脚本:
hive —service llap —name llap_service —instances 4 —size 4g
hive —service llap —name llap_service —instances 4 —size 4g —loglevel DEBUG —executors 4 —iothreads 4 —args “ -XX:+UseG1GC -XX:+ResizeTLAB -XX:+UseNUMA -XX:-ResizePLAB”
会在当前目录下生成脚本目录。
运行脚本:
- ./llap-yarn-29Sep2019/run.sh
