网络推广文案策划,西宁网站seo价格,asp相册网站源码,怎样优化网站 优帮云目录#xff1a;前言#xff1a;1. 上传2. 解压3. 重命名4. 修改环境变量5. 修改配置文件6. 把hadoop的hdfs-site.xml和core-site.xml 放到hbase/conf下7. 发送到其他机器8. 启动9. 查看总结#xff1a; 目录#xff1a;
前言#xff1a;
最近由于工作需要又把HBase重装…目录前言1. 上传2. 解压3. 重命名4. 修改环境变量5. 修改配置文件6. 把hadoop的hdfs-site.xml和core-site.xml 放到hbase/conf下7. 发送到其他机器8. 启动9. 查看总结 目录
前言
最近由于工作需要又把HBase重装了一遍发现还是需要自己总结下安装过程不然等到再次装的时候还是会碰到很多坑。由于出了新版本所以这里自己就找的比较新的版本来玩。 我的环境Hadoop2.6.4Centos6.7minimal版本Hive2.1.1Hbase2.0
1. 上传
下载地址http://archive.apache.org/dist/hbase/大数据相关组件都可以在这里找 将下载好的Hbase上传到Centos。
2. 解压
这里就懒得改这个版本名称了。。
tar –zxvf hbase-0.99.2-bin.tar.gz
3. 重命名
mv hbase-0.99.2 hbase
4. 修改环境变量
1、 在master机器上执行下面命令 su – root
vi/etc/profile
添加内容
export HBASE_HOME/home/hadoop/hbase
export PATH$PATH:$HBASE_HOME/bin
执行命令
source /etc/profile
su – hadoop 2、在其他机器上执行上述操作。
5. 修改配置文件
需要修改/home/hadoop/hbase/conf下的hbase-env.sh,hbase-site.xml,regionservers 三个配置文件。你也可以直接先把三个文件配置好然后覆盖conf/下的文件 对于hbase-env.sh添加如下内容
export JAVA_HOME/root/apps/jdk1.8.0_181 #jdk安装目录
# Extra Java CLASSPATH elements. Optional.这行代码是错的需要可以修改为下面的形式。据说设置HBASE_CLASSPATH会在玩Flume的时候报错。所以就直接用下面的JAVA_CLASSPATH代替效果一样。
#export HBASE_CLASSPATH/home/hadoop/hbase/conf
export JAVA_CLASSPATH.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export HBASE_OPTS-XX:UseConcMarkSweepGC
export HBASE_MANAGES_ZKfalse #如果使用独立安装的zookeeper这个地方就是false
hbase-site.xml中加入如下内容
configuration
property
namehbase.master/name
valueha1:60000/value
/property
property
namehbase.master.maxclockskew/name
value180000/value
/property
property
!--对应的bi是一个逻辑地址这里配置的是HA机制的集群bi也就算是HDFS的根目录了 --
namehbase.rootdir/name
valuehdfs://bi/hbase/value
/property
property
namehbase.cluster.distributed/name
valuetrue/value
/property
!--为Hbase提供服务的zk地址根据需求配置一般3个节点就能达到高可靠了 --
property
namehbase.zookeeper.quorum/name
valueha1,ha2,ha3/value
/property
property
namehbase.zookeeper.property.dataDir/name
value/home/hadoop/hbase/tmp/zookeeper/value
/property
/configurationRegionservers添加如下内容
//是从机器的域名即HregService的节点
ha3
6. 把hadoop的hdfs-site.xml和core-site.xml 放到hbase/conf下
cp /home/hadoop/hadoop/etc/hadoop/hdfs-site.xml /home/hadoop/hbase/conf
cp /home/hadoop/hadoop/etc/hadoop/core-site.xml /home/hadoop/hbase/conf
7. 发送到其他机器
scp –r /home/hadoop/hbase hadoopslave1:/home/hadoop
scp –r /home/hadoop/hbase hadoopslave2:/home/hadoop
scp –r /home/hadoop/hbase hadoopslave3:/home/hadoop
8. 启动
start-hbase.sh
9. 查看
进程jps 进入hbase的shellhbase shell 退出hbase的shellquit 页面http://master:60010
总结
不幸的是在打开Web页面时发现无法打开查了资料后才知道原来Hbase在1.x版本后将端口号改为16010。 还有就是执行hbase shell的时候报错如下
[ERROR] Terminal initialization failed; falling back to unsupported
java.lang.IncompatibleClassChangeError: Found class jline.Terminal, but interface was expectedat jline.TerminalFactory.create(TerminalFactory.java:101)at jline.TerminalFactory.get(TerminalFactory.java:158)at jline.console.ConsoleReader.init(ConsoleReader.java:229)at jline.console.ConsoleReader.init(ConsoleReader.java:221)at jline.console.ConsoleReader.init(ConsoleReader.java:209)at org.apache.hadoop.hive.cli.CliDriver.getConsoleReader(CliDriver.java:773)at org.apache.hadoop.hive.cli.CliDriver.executeDriver(CliDriver.java:715)at org.apache.hadoop.hive.cli.CliDriver.run(CliDriver.java:675)at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:615)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at java.lang.reflect.Method.invoke(Method.java:606)at org.apache.hadoop.util.RunJar.main(RunJar.java:212)
原因 hadoop目录/hadoop-2.6.4/share/hadoop/yarn/lib存在老版本jline
解决方案 将hive下的新版本jline的JAR包拷贝到hadoop下cp /hive/lib/jline-2.12.jar /hadoop/share/hadoop/yarn/lib/