ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
1 上传hbase包 2 解压 解压hbase压缩包 [hadoop@master ~]$cd /home/hadoop/software [hadoop@master software]$tar xzvf hbase-1.4.3-bin.tar.gz 3 配置环境变量 [hadoop@master software]$cd [hadoop@master ~]$vi .bash_profile 添加下列代码 ~~~ export HBASE_HOME=/home/hadoop/software/hbase-1.4.3 export PATH=$HBASE_HOME/bin:$PATH ~~~ 4 配置hbase集群,要修改3个文件(首先zk集群已经安装好了) 注意:由于hbase最终数据存放到hdfs,故需要要把hadoop的hdfs-site.xml和core-site.xml 放到hbase/conf下 [hadoop@master~]$ cd /home/hadoop/software/hadoop-2.7.3/etc/hadoop [hadoop@master hadoop]$cp hdfs-site.xml /home/hadoop/software/hbase-1.4.3/conf/ [hadoop@master hadoop]$cp core-site.xml /home/hadoop/software/hbase-1.4.3/conf/ 4.1 在master 上修改hbase-env.sh [hadoop@master ~]$cd /home/hadoop/software/hbase-1.4.3/conf/ [hadoop@master conf]$vi hbase-env.sh (1) 修改为export JAVA_HOME= /usr/java/jdk1.8.0_131 //告诉hbase使用外部的zk (2) 修改为export HBASE_MANAGES_ZK=false //修改Hbase的内存为8G (3) 修改为export HBASE_HEAPSIZE=8G 保存退出 4.2 修改hbase-site.xml [hadoop@master conf]$vi hbase-site.xml ~~~ <configuration> <property> <name>hbase.rootdir</name> <value>hdfs://192.168.6.250:9000/hbase</value> </property> <property> <name>hbase.cluster.distributed</name> <value>true</value> </property> <property> <name>hbase.zookeeper.quorum</name> <value>master:2181,slave1:2181,slave2:2181</value> </property> <property> <name>hbase.master.port</name> <value>16000</value> </property> <property> <name>hbase.master.info.port</name> <value>16010</value> </property> <property> <name>hbase.regionserver.info.port</name> <value>16030</value> </property> </configuration> ~~~ ***配置参数 (1)hbase.rootdir:这个目录是region server的共享目录,用来持久化Hbase。URL需要是'完全正确'的,还要包含文件系统的scheme。例如,要表示hdfs中的 '/hbase'目录,namenode 运行在namenode.example.org的9090端口。则需要设置为hdfs://namenode.example.org:9000 /hbase。默认情况下Hbase是写到/tmp的。不改这个配置,数据会在重启的时候丢失。默认: file:///tmp/hbase-${user.name}/hbase (2)hbase.cluster.distributed:Hbase的运行模式。false是单机模式,true是分布式模式。若为false,Hbase和Zookeeper会运行在同一个JVM里面。默认: false (3)base.zookeeper.quorum:Zookeeper 集群的地址列表,用逗号分割。例 如:"host1.mydomain.com,host2.mydomain.com,host3.mydomain.com".默认是 localhost,是给伪分布式用的。要修改才能在完全分布式的情况下使用。如果在hbase-env.sh设置了HBASE_MANAGES_ZK, 这些ZooKeeper节点就会和Hbase一起启动。 默认: localhost (4)hbase.master.port:Hbase的Master的端口.默认: 60000 (5)hbase.master.info.port:HBase Master web 界面端口. 设置为-1 意味着你不想让他运行。默认: 60010*** 4.3 指定机器为regionserver,不单独指定master。其中:在哪个机器上启动,哪台就是master,在regionservers文件说明要启动的HRegionServer [hadoop@master conf]$vi regionservers 192.168.6.250 192.168.6.251 192.168.6.252 4.4 hbase1.4.3 依赖 amazonaws包下的两个文件,故需要把下面两个文件上传至$HBASE_HOME/lib 目录下,否则会出现下面的错误 依赖的两个文件: 上传两个jar包到 /home/hadoop/software/hbase-1.4.3/lib > aws-java-sdk-core-1.10.77.jar > aws-java-sdk-s3-1.11.34.jar *不添加问题出现ClassNotFoundException: Caused by: java.lang.ClassNotFoundException: com.amazonaws.auth.AWSCredentialsProvider Caused by: java.lang.ClassNotFoundException: com.amazonaws.services.s3.AmazonS3* 5. 将配置好的HBase拷贝到salves里 [hadoop@master software]$scp -r hbase-1.4.3 slave1:/home/hadoop/software/ [hadoop@master software]$scp -r hbase-1.4.3 slave2:/home/hadoop/software/ 6. 启动所有的hbase 启动hbase前需要启动集群 [hadoop@master ~]$start-all.sh 启动hbase,在master(主节点)上运行: 刷新环境变量 . .bash_profile 启动hbase start-hbase.sh [hadoop@master ~]$jps 5585 ResourceManager 5414 SecondaryNameNode 6604 HMaster 5868 QuorumPeerMain 6733 HRegionServer 6813 Jps 5215 NameNode [hadoop@slave1(2)~]$jps 4149 HRegionServer 4231 Jps 3386 DataNode 3658 QuorumPeerMain 3517 NodeManager