虚拟机IP地址:192.168.1.244,192.168.1.245,192.168.1.246
cd /opt/zookeeper-3.5.10
mkdir zkData
cd zkData
mkdir myid
编辑myid,并且键入244(192.168.1.245主机就配置245以此类推),保存。
重命名配置文件
cd /opt/zookeeper-3.5.10/conf
mv zoo_sample.cfg zoo.cfg
编辑zoo.cfg文件
dataDir=/opt/zookeeper-3.5.10/zkData
server.244=hadoop244:2888:3888
server.245=hadoop245:2888:3888
server.246=hadoop246:2888:3888
以上zookeeper配置中,除了myid文件每台主机是不同的,其他都配置一样。
cd /opt/hbase-2.4.12/conf
vi hbase-env.sh
要修改的地方有:
# The java implementation to use. Java 1.8+ required.
export JAVA_HOME=/opt/jdk1.8.0_333
# The directory where pid files are stored. /tmp by default.
export HBASE_PID_DIR=/opt/hadoop-3.1.3/pids
# Tell HBase whether it should manage it's own instance of ZooKeeper or not.
export HBASE_MANAGES_ZK=false
编辑hbase-site.xml
vi hbase-site.xml
修改的内容有:
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>hadoop244,hadoop245,hadoop246</value>
<description>The directory shared by RegionServers.</description>
</property>
<!--
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/export/zookeeper</value>
<description>记得修改zk的配置文件,zk的信息不能保存到临时文件夹</description>
</property>
-->
<property>
<name>hbase.rootdir</name>
<value>hdfs://hadoop244:8020/hbase</value>
<description>The directory shared by RegionServers.</description>
</property>
<property>
<name>hbase.regionserver.wal.codec</name>
<value>org.apache.hadoop.hbase.regionserver.wal.IndexedWALEditCodec</value>
</property>
<property>
<name>phoenix.schema.isNamespaceMappingEnabled</name>
<value>true</value>
</property>
<property>
<name>phoenix.schema.mapSystemTablesToNamespace</name>
<value>true</value>
</property>
<property>
<name>phoenix.functions.allowUserDefinedFunctions</name>
<value>true</value>
<description>enable UDF functions</description>
</property>
以上hbase的配置,3台主机都相同。
cd /opt/phoenix-hbase-2.4-5.1.2-bin
拷贝phoenix-server-hbase-2.4-5.1.2.jar和phoenix-pherf-5.1.2.jar的jar包到hbase的lib目录下
cp /opt/phoenix-hbase-2.4-5.1.2-bin/phoenix-server-hbase-2.4-5.1.2.jar /opt/hbase-2.4.12/lib/
cp /opt/phoenix-hbase-2.4-5.1.2-bin/phoenix-pherf-5.1.2.jar /opt/hbase-2.4.12/lib/
拷贝hadoop配置文件目录下的core-site.xml和hdfs-site.xml到phoenix的bin目录下
,并拷贝hbase的conf目录下的hbase-site.xml到phoenix的bin目录下
cp /opt/hadoop-3.1.3/etc/hadoop/core-site.xml /opt/phoenix-hbase-2.4-5.1.2-bin/bin/
cp /opt/hadoop-3.1.3/etc/hadoop/hdfs-site.xml /opt/phoenix-hbase-2.4-5.1.2-bin/bin/
cp /opt/hbase-2.4.12/conf/hbase-site.xml /opt/phoenix-hbase-2.4-5.1.2-bin/bin/
以上的phoenix的配置3台主机都一致。
# hdfs在244主机启动:
cd /opt/hadoop-3.1.3/sbin
./start-hdfs.sh
# yarn在245主机启动:
cd /opt/hadoop-3.1.3/sbin
./start-yarn.sh
# 三台主机都启动zookeeper
./zkServer.sh --config /opt/zookeeper-3.5.10/conf start
# 244主机启动hbase即可,随后245,246也会跟着启动hbase,244充当主节点
./start-hbase.sh
启动Phoenix (3台主机均可启动)
cd /opt/phoenix-hbase-2.4-5.1.2-bin/bin
./sqlline.py 192.168.1.244:2181
出现这个样子,说明连接成功
192.168.1.244 hadoop244
192.168.1.245 hadoop245
192.168.1.246 hadoop246
使用DBeaver连接Hbase
编辑驱动
手动添加驱动
这个驱动jar包的名称是phoenix-client-hbase-2.4-5.1.2.jar,这个jar文件在phoenix的安装目录下就有,从CentOS虚拟机拷贝过来到windows本机,然后添加该文件即可。
点击测试连接,连接成功
因为从phoenix的安装目录下的bin目录下的hbase-site.xml文件中配置了phoenix.schema.isNamespaceMappingEnabled属性为true,所以最好编辑一下这个驱动属性。
phoenix.schema.isNamespaceMappingEnabled true