//使用tar命令解压这两个压缩文件
    tar -zxvf zookeeper-3.4.6.tar.gz
    tar -zxvf hbase-1.0.1.1-bin.tar.gz

    //配置环境变量(三个节点都得配置)
    vim /etc/profile

    1. export ZOOKEEPER=/opt/zookeeper-3.4.6 (增加)
    2. export HBASE_HOME=/opt/hbase-1.0.1.1 (增加)
    3. export PATH=$JAVA_HOME/bin:$HADOOP_HOME/bin:$ZOOKEEPER/bin:$HBASE_HOME/bin:$PATH(修改)

    //使文件生效
    source /etc/profile

    //配置zookeeper(zoo.cfg配置)
    cd zookeeper-3.4.6/conf/
    cp zoo_sample.cfg zoo.cfg (拷贝一份)
    vim zoo.cfg

    1. #data目录
    2. dataDir=/opt/zookeeper-3.4.6/data
    3. #节点ID
    4. server.1=master:2888:3888
    5. server.2=slave1:2888:3888
    6. server.3=slave2:2888:3888

    在zookeeper-3.4.6目录下创建data
    makdir data

    进入data目录
    cd data
    vim myid (创建myid文件)
    (里面写1;指我们刚刚配置的server.1;在另外两个节点上分别写2和3)

    zookeeper发送到从节点1

    1. scp -r /opt/zookeeper-3.4.6 root@Node1:/opt/

    zookeeper发送到从节点2

    1. scp -r /opt/zookeeper-3.4.6 root@node2:/opt/

    修改从节点myid

    //启动zookeeper
    cd /opt/zookeeper-3.4.6/bin
    ./zkServer.sh start
    (分别启动所有节点,先启动master)

    //查看运行模式
    zkServer.sh status
    image.png
    image.png
    image.png
    image.pngimage.pngimage.png

    zookeeper查看状态时显示未启用,可能是myid错了

    配置HBase
    cd /opt/hbase-1.0.1.1/conf
    hbase-env.sh
    增加JAVA_HOME
    image.png
    禁用自带的zookeeper
    image.png

    hbase-site.xml

    1. <property>
    2. <name>hbase.rootdir</name>
    3. <value>hdfs://master:8020/hbase</value>
    4. </property>
    5. <property>
    6. <name>hbase.zookeeper.quorum</name>
    7. <value>master,Node1,node2</value>
    8. </property>
    9. <property>
    10. <name>hbase.cluster.distributed</name>
    11. <value>true</value>
    12. </property>
    13. <property>
    14. <name>hbase.zookeeper.property.dataDir</name>
    15. <value>/opt/zookeeper-3.4.6/data</value>
    16. </property>
    17. <property>
    18. <name>hbase.master.info.port</name>
    19. <value>60010</value>
    20. </property>

    vim regionservers
    image.png

    把hbase上传到两个从节点

    scp -r /opt/hbase-1.0.1.1 root@Node1:/opt
    scp -r /opt/hbase-1.0.1.1 root@node2:/opt
    

    //启动hbase
    进入hbase的bin目录
    ./start-hbase.sh
    image.pngimage.pngimage.png

    //启动hbase时,hmaster启动后又消失了,且hin/base shell后,list执行报错”ERROR:can’t get master address from ZooKeeper; znode data == null”

    }PKH8994Z`DD]_M)QZ64)$X.png
    一般认为是,停止Hbase服务时导致zookeeper的meta数据丢失或损毁所致,解决办法时,停止HBase服务,停止ZooKeeper服务,把zookeeper的每个节点的zoo.cfg指定的 dataDir=/hadoop/zookeeper-data目录的文件清除掉,然后重启zookeeper,再重启hbase,再去观察hbase主控节点日志hbase-hadoop-master-master.log,发现一切正常,问题已经得到解决!
    [

    ](https://blog.csdn.net/ak57193856/article/details/78520872)