Hadoop+Zookeeper+Hbase高可用集群搭建

簡(jiǎn)介

在工作中考阱,生產(chǎn)環(huán)境和測(cè)試環(huán)境各搭建了一套Hadoop HA集群且運(yùn)行穩(wěn)定泌射,以下為測(cè)試環(huán)境的詳細(xì)部署流程以及在使用過(guò)程中踩過(guò)的坑和解決方案粘姜。

集群配置

服務(wù)器:五臺(tái)
處理器:Intel(R) Core(TM) i5-6500 CPU @ 3.20GHz
內(nèi)存:16G
磁盤(pán):1T
Hadoop版本:2.7.2
Zookeeper版本:3.4.9
Hbase版本:1.2.4

注意事項(xiàng)

在服務(wù)器上編輯配置文件時(shí),切記要用vi或vim編輯熔酷,不能直接用文本編輯器對(duì)配置文件進(jìn)行修改孤紧,否則可能會(huì)出現(xiàn)配置文件編碼被修改而導(dǎo)致亂碼的問(wèn)題。

集群基礎(chǔ)環(huán)境配置

1拒秘、關(guān)閉防火墻

systemctl stop firewalld //關(guān)閉防火墻
systemctl disable firewalld //禁止開(kāi)機(jī)啟動(dòng)

2号显、配置ntp服務(wù)時(shí)鐘同步

  1. 在各個(gè)節(jié)點(diǎn)上安裝ntp:yum -y install ntp
  2. 在ntp 主節(jié)點(diǎn)上修改配置:vim /etc/ntp.conf
server 127.127.1.0
fudge 127.127.1.0 stratum 10
restrict 90.0.25.0 mask 255.255.255.0 nomodify notrap
server cn.pool.ntp.org iburst
server 216.229.0.179 iburst
server time.nist.gov iburst

如果是在局域網(wǎng)中可以將以下的幾行注釋掉:

#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
  1. 配置ntp客戶端,使其與主節(jié)點(diǎn)時(shí)間同步躺酒,在所有客戶端執(zhí)行:vim /etc/ntp.conf
server 90.0.25.1
  1. 在所有節(jié)點(diǎn)上執(zhí)行:

systemctl start ntpd //啟動(dòng)ntp
systemctl enable ntpd //開(kāi)機(jī)啟動(dòng)

  1. 檢查ntp同步情況押蚤,在client上執(zhí)行如下語(yǔ)句會(huì)看到同步的主機(jī)IP,執(zhí)行命令:ntpq -p

這里有兩點(diǎn)需要注意:

  1. 由于centos7系統(tǒng)上安裝了一個(gè)與NTP相沖突的工具:chrony羹应。使用命令:systemctl is-enabled chronyd來(lái)查看揽碘,得到的結(jié)果是chrony已經(jīng)被設(shè)置為enabled。這就導(dǎo)致利用systemctl enable ntpd設(shè)置NTP開(kāi)機(jī)啟動(dòng)后,重啟服務(wù)器后雳刺,NTP并沒(méi)有啟動(dòng)劫灶。解決辦法:systemctl disable chronyd
  2. 如果輸入ntpq -p后出現(xiàn)異常:localhost: timed out, nothing received
    · 原因:服務(wù)器開(kāi)啟了ipv6掖桦,默認(rèn)走ipv6本昏。
    · 解決辦法是:關(guān)閉ipv6后重啟網(wǎng)絡(luò)。具體步驟:
    ????1. 在/etc/sysctl.conf配置文件中添加:
    ??????net.ipv6.conf.all.disable_ipv6 = 1
    ??????net.ipv6.conf.eth1.disable_ipv6 = 1
    ??????net.ipv6.conf.eth0.disable_ipv6 = 1
    ????2. 保存退出后枪汪,執(zhí)行:systemctl restart network

3涌穆、SSH免密登錄

  1. 在各臺(tái)服務(wù)器上執(zhí)行:ssh-keygen -t rsa,在/root下會(huì)生成.ssh目錄
  2. 在每臺(tái)服務(wù)器上將id_rsa.pub拷貝到其他服務(wù)器(包括本機(jī))上料饥,并更名為authorized_keys蒲犬,進(jìn)到/root/.ssh目錄朱监,并執(zhí)行命令:

cat id_rsa.pub | ssh 90.0.25.1 'cat >> /root/.ssh/authorized_keys'

  1. 更改.ssh權(quán)限:chmod 700 .ssh
  2. 更改authorized_keys權(quán)限:chmod 640 authorized_keys
  3. 重啟sshd并設(shè)置開(kāi)機(jī)啟動(dòng)

systemctl restart sshd
systemctl enable sshd

  1. 在每臺(tái)服務(wù)器上通過(guò)ssh 90.0.25.1測(cè)試成功

4岸啡、配置hosts文件:vim /etc/hosts

90.0.25.1 hb1
90.0.25.2 hb2
90.0.25.3 hb3
90.0.25.4 hb4
90.0.25.5 hb5

5、安裝jdk

  1. 首先赫编,將從官網(wǎng)下載的jdk文件(tar.gz)放到/home/下的新建的java文件夾中巡蘸,利用tar命令解壓:tar –zxvf jdk-8u111-linux-x64.tar.gz
  2. 配置Java環(huán)境變量:vim /etc/profile
JAVA_HOME=/home/jdk1.8.0_111
JRE_HOME=$JAVA_HOME/jre
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
CLASSPATH=:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib/dt.jar
export JAVA_HOME JRE_HOME PATH CLASSPATH
  1. 運(yùn)行source /etc/profile使配置生效,并運(yùn)行java –version進(jìn)行檢驗(yàn)

Zookeeper安裝

安裝配置zookeeper擂送,雖然hbase有自帶的zookeeper悦荒,但沒(méi)有必要讓hbase和zookeeper耦合在一起,所以選擇分開(kāi)部署

  1. 將zookeeper-3.4.9.tar.gz放到/home目錄下嘹吨,如下命令解壓:

tar –zxvf zookeeper-3.4.9.tar.gz

  1. 配置zookeeper環(huán)境變量:vim /etc/profile
export ZOOKEEPER_HOME=/home/zookeeper-3.4.9
export PATH=$ZOOKEEPER_HOME/bin:$PATH

使配置生效:source /etc/profile

  1. 在zookeeper-3.4.9目錄下新建data目錄:mkdir data
  2. 在data中新建myid文件:vim myid搬味,在其中填入數(shù)字1
  3. 由于conf目錄下沒(méi)有zoo.cfg文件,所以復(fù)制zoo_sample.cfg成zoo.cfg:

cp zoo_sample.cfg zoo.cfg

  1. 編輯zoo.cfg文件蟀拷,添加如下信息碰纬,并在zookeeper-3.4.9目錄下新建目錄logs:mkdir logs
dataDir=/home/zookeeper-3.4.9/data
dataLogDir=/home/zookeeper-3.4.9/logs
server.1=hb1:2888:3888    
server.2=hb2:2888:3888    
server.3=hb3:2888:3888
server.4=hb4:2888:3888
server.5=hb5:2888:3888
  1. 拷貝zookeeper-3.4.9目錄到其他節(jié)點(diǎn)的/home目錄,并分別更改myid的值為2~5:

scp -r zookeeper-3.4.9 hb2:/home
scp -r zookeeper-3.4.9 hb3:/home
scp -r zookeeper-3.4.9 hb4:/home
scp -r zookeeper-3.4.9 hb5:/home

  1. 因?yàn)閦ookeeper負(fù)責(zé)協(xié)調(diào)hbase之間的通信问芬,所以需要在每個(gè)節(jié)點(diǎn)上分別啟動(dòng)zookeeper服務(wù):cd /home/zookeeper-3.4.9/bin

./zkServer.sh start

Hadoop HA配置

1悦析、將hadoop-2.7.2.tar.gz放在/home目錄下,解壓:

tar –zxvf hadoop-2.7.2.tar.gz

2此衅、配置hadoop環(huán)境變量:vim /etc/profile

#Hadoop環(huán)境變量
export HADOOP_HOME=/home/hadoop-2.7.2-ha/hadoop-2.7.2
export PATH=$PATH:$HADOOP_HOME/bin

使修改生效

source /etc/profile

3强戴、進(jìn)入/home/hadoop-2.7.2-ha/hadoop-2.7.2/etc/hadoop目錄下修改配置文件
(1) core-site.xml配置:

<configuration>
<!--指定默認(rèn)hdfs集群服務(wù)名是哪個(gè) -->
<property>
        <name>fs.defaultFS</name>
        <value>hdfs://ns1</value>
</property>
<!-- 指定hadoop臨時(shí)目錄 -->
<property>
        <name>hadoop.tmp.dir</name>
        <value>/home/hadoop-2.7.2-ha/hadoop-2.7.2/tmp</value>
</property>
 <!-- 指定zookeeper地址 -->
<property>
        <name>ha.zookeeper.quorum</name>
        <value>hb1:2181,hb2:2181,hb3:2181,hb4:2181,hb5:2181</value>
</property>
<property>
   <name>ipc.client.connect.max.retries</name>
    <value>20</value>
    <description>
      Indicates the number of retries a clientwill make to establisha server connection.
    </description>
  </property> 
<property>
   <name>ipc.client.connect.retry.interval</name>
    <value>5000</value>
    <description>
      Indicates the number of milliseconds aclient will wait for before retrying to establish a server connection.
    </description>
  </property>
<property>
    <name>io.file.buffer.size</name>
    <value>262144</value>
  </property>
</configuration>

(2) hdfs-site.xml配置:

<configuration>
<!--指定hdfs的nameservice為ns1,需要和core-site.xml中的保持一致 -->
<property>
        <name>dfs.nameservices</name>
        <value>ns1</value>
</property>
<!-- ns1下面有兩個(gè)NameNode挡鞍,分別是nn1骑歹,nn2 -->
<property>
        <name>dfs.ha.namenodes.ns1</name>
        <value>nn1,nn2</value>
</property>
<!-- nn1的RPC通信地址 -->
<property>
        <name>dfs.namenode.rpc-address.ns1.nn1</name>
        <value>hb1:9000</value>
</property>
<!-- nn1的http通信地址 -->
<property>
        <name>dfs.namenode.http-address.ns1.nn1</name>
        <value>hb1:50070</value>
</property>
<!-- nn2的RPC通信地址 -->
        <property>
        <name>dfs.namenode.rpc-address.ns1.nn2</name>
         <value>hb2:9000</value>
</property>
<!-- nn2的http通信地址 -->
<property>
         <name>dfs.namenode.http-address.ns1.nn2</name>
         <value>hb2:50070</value>
</property>
<!-- 指定NameNode的元數(shù)據(jù)在JournalNode上的存放位置 -->
<property>
         <name>dfs.namenode.shared.edits.dir</name>                    
         <value>qjournal://hb1:8485;hb2:8485;hb3:8485;hb4:8485;hb5:8485/ns1</value>
</property>
<!-- 指定JournalNode在本地磁盤(pán)存放數(shù)據(jù)的位置 -->
<property>
         <name>dfs.journalnode.edits.dir</name>
         <value>/home/hadoop-2.7.2-ha/hadoop-2.7.2/journaldata</value>
</property>
<property>
         <name>dfs.namenode.name.dir</name>
         <value>/home/hadoop-2.7.2-ha/hadoop-2.7.2/name</value>
</property>
<property>
         <name>dfs.datanode.data.dir</name>
         <value>/home/hadoop-2.7.2-ha/hadoop-2.7.2/data</value>
</property>

<!-- 開(kāi)啟NameNode失敗自動(dòng)切換 -->
<property>
         <name>dfs.ha.automatic-failover.enabled</name>
         <value>true</value>
</property>
<!-- 配置失敗自動(dòng)切換實(shí)現(xiàn)方式 -->
<property>
         <name>dfs.client.failover.proxy.provider.ns1</name>                    <value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value>
</property>
<!-- 配置隔離機(jī)制方法,多個(gè)機(jī)制用換行分割墨微,即每個(gè)機(jī)制暫用一行-->
<property>
         <name>dfs.ha.fencing.methods</name>
         <value>
                sshfence
                shell(/bin/true)
         </value>
</property>
<!-- 使用sshfence隔離機(jī)制時(shí)需要ssh免登陸 -->
<property>
         <name>dfs.ha.fencing.ssh.private-key-files</name>
         <value>/root/.ssh/id_rsa</value>
</property>
         <!-- 配置sshfence隔離機(jī)制超時(shí)時(shí)間 -->
<property>
         <name>dfs.ha.fencing.ssh.connect-timeout</name>
         <value>30000</value>
</property>
<!-- 增加NameNode和DataNode處理線程數(shù) -->
 <property>
    <name>dfs.namenode.handler.count</name>
    <value>50</value>
  </property>
   <property>
    <name>dfs.datanode.handler.count</name>
    <value>8</value>
  </property>
  <property> 
    <name>dfs.datanode.max.transfer.threads</name> 
    <value>8192</value> 
</property> 
<!-- 開(kāi)啟短路讀道媚,DataNode傳遞文件描述符而不是路徑 -->
<property>
      <name>dfs.client.read.shortcircuit</name>     
      <value>true</value>   
</property>
<property>
      <name>dfs.domain.socket.path</name>
      <value>/var/lib/hadoop-hdfs/dn.socket</value>
</property>
<property>
      <name>dfs.replication</name>
      <value>2</value>
</property>

</configuration>

(3) mapred-site.xml配置:

<configuration>
<!-- 指定mr框架為yarn方式 -->
<property>
          <name>mapreduce.framework.name</name>
          <value>yarn</value>
</property>
<!-- mr轉(zhuǎn)化歷史任務(wù)的rpc通信地址-->
<property>
          <name>mapreduce.jobhistory.address</name>
          <value>hb2:10020</value>
</property>
<!-- mr轉(zhuǎn)化歷史任務(wù)的http通信地址-->
<property> 
          <name>mapreduce.jobhistory.webapp.address</name>  
          <value>hb2:19888</value>          
</property>
<!-- 會(huì)在hdfs的根目錄下面創(chuàng)建一個(gè)history的文件夾,存放歷史任務(wù)的相關(guān)運(yùn)行情況-->
<property>
          <name>yarn.app.mapreduce.am.staging-dir</name>
          <value>/history</value>
</property>
<!-- map和reduce的日志級(jí)別-->
<property>
          <name>mapreduce.map.log.level</name>
          <value>INFO</value>
</property>
<property>
          <name>mapreduce.reduce.log.level</name>
          <value>INFO</value>
</property>
</configuration>

(4) yarn-site.xml配置:

<configuration>
<!-- Site specific YARN configuration properties -->
<property>
          <name>yarn.resourcemanager.ha.enabled</name>
          <value>true</value>
</property>
<!-- 指定RM的cluster id -->
<property>
          <name>yarn.resourcemanager.cluster-id</name>
          <value>yrc</value>
</property>
<!-- 指定RM的名字 -->
<property>
          <name>yarn.resourcemanager.ha.rm-ids</name>
          <value>rm1,rm2</value>
</property>
<!-- 分別指定RM的地址 -->
<property>
          <name>yarn.resourcemanager.hostname.rm1</name>
          <value>hb1</value>
</property>
<property>
          <name>yarn.resourcemanager.hostname.rm2</name>
          <value>hb2</value>
</property>
<!-- 指定zk集群地址 -->
<property>
          <name>yarn.resourcemanager.zk-address</name>
          <value>hb1:2181,hb2:2181,hb3:2181,hb4:2181,hb5:2181</value>
</property>
<property>
          <name>yarn.nodemanager.aux-services</name>
          <value>mapreduce_shuffle</value>
</property>
</configuration>

(5) hadoop-env.sh配置

export JAVA_HOME=/home/jdk1.8.0_111
export HADOOP_HEAPSIZE=6144
export HADOOP_NAMENODE_INIT_HEAPSIZE=2048
export HADOOP_PID_DIR=/home/hadoop-2.7.2-ha/hadoop-2.7.2/pids
export HADOOP_SECURE_DN_PID_DIR=/home/hadoop-2.7.2-ha/hadoop-2.7.2/pids

(6) mapred-env.sh配置

export HADOOP_MAPRED_PID_DIR=/home/hadoop-2.7.2-ha/hadoop-2.7.2/pids

(7) yarn-env.sh配置

export JAVA_HOME=/home/jdk1.8.0_111
export YARN_PID_DIR=/home/hadoop-2.7.2-ha/hadoop-2.7.2/pids

4、slaves配置

hb1
hb2
hb3
hb4
hb5

5衰琐、在hadoop-2.7.2下創(chuàng)建目錄:mkdir tmp journaldata name data logs pids也糊,由于配置了短路讀,需要在/var/lib目錄下新建:hadoop-dfs目錄羡宙。
6狸剃、將hadoop-2.7.2-ha目錄拷貝到其他節(jié)點(diǎn)上

scp -r hadoop-2.7.2-ha hb2:/home/

7、初始化集群和啟動(dòng)
(1)分別啟動(dòng)各個(gè)JournalNode

./hadoop-daemon.sh start journalnode

(2)在其中一個(gè)NameNode節(jié)點(diǎn)中初始化NameNode狗热,這里選擇master1上的NameNode

hdfs namenode -format

(3)啟動(dòng)第2步初始化好的NameNode服務(wù)

./hadoop-daemon.sh start namenode

(4)在master2服務(wù)器中運(yùn)行下面命令來(lái)同步master1上的NameNode的元數(shù)據(jù)

hdfs namenode -bootstrapStandby

(5)在其中一個(gè)NameNode節(jié)點(diǎn)中初始化ZKFC的狀態(tài)钞馁,這里選擇master1上的NameNode

hdfs zkfc -formatZK

(6)啟動(dòng)Hadoop的HA集群

./start-dfs.sh

8、查看兩個(gè)NameNode的狀態(tài):一個(gè)active匿刮,一個(gè)standby

hdfs haadmin -getServiceState nn1
hdfs haadmin -getServiceState nn2

9僧凰、通過(guò)master:50070訪問(wèn)Hadoop Web UI


Hbase HA集群配置

進(jìn)入hbase配置文件目錄/home/hbase-1.2.4-ha/hbase-1.2.4/conf
1、hbase-env.sh配置

export JAVA_HOME=/home/jdk1.8.0_111
export HADOOP_HOME=/home/hadoop-2.7.2-ha/hadoop-2.7.2
export HBASE_PID_DIR=/home/hbase-1.2.4-ha/hbase-1.2.4/pids
export HBASE_LOG_DIR=/home/hbase-1.2.4-ha/hbase-1.2.4/logs
export HBASE_MANAGES_ZK=false

因?yàn)槭莏dk1.8熟丸,所以注釋掉下面兩行训措,并配置regionserver內(nèi)存

export HBASE_OPTS="-Xmn2G -Xss256k -XX:MetaspaceSize=256m -XX:MaxMetaspaceSize=512m -XX:ParallelGCThreads=24 -XX:+UseCompressedOops -XX:GCTimeRatio=19 -XX:SoftRefLRUPolicyMSPerMB=0 -XX:SurvivorRatio=2 -XX:MaxTenuringThreshold=1 -XX:+UseFastAccessorMethods -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled -XX:CMSInitiatingOccupancyFraction=70 -XX:+CMSClassUnloadingEnabled -XX:CMSMaxAbortablePrecleanTime=300 -XX:+CMSScavengeBeforeRemark"
export HBASE_REGIONSERVER_OPTS="-Xms8G -Xmx8G $HBASE_OPTS"
export HBASE_MASTER_OPTS="-Xms3G -Xmx3G $HBASE_OPTS"

2、hbase-site.xml配置

<configuration>
        <property>
            <name>hbase.rootdir</name>
            <value>hdfs://ns1/hbase</value>
        </property>
        <property>
            <name>hbase.cluster.distributed</name>
            <value>true</value>
        </property>
        <property>
            <name>hbase.master</name>
            <value>60000</value>
        </property>
        <property>
            <name>hbase.tmp.dir</name>
            <value>/home/hbase-1.2.4-ha/hbase-1.2.4/tmp</value>
        </property>
        <property>
            <name>hbase.zookeeper.quorum</name>
            <value>hb1,hb2,hb3,hb4,hb5</value>
        </property>
        <property>
            <name>hbase.zookeeper.property.dataDir</name>
            <value>/home/zookeeper-3.4.9/data</value>
        </property>
        <property>
            <name>hbase.zookeeper.property.clientPort</name>
            <value>2181</value>
        </property>
        <property>
            <name>zookeeper.session.timeout</name>
            <value>120000</value>
        </property>
        <property>
            <name>hbase.regionserver.restart.on.zk.expire</name>
            <value>true</value>
        </property>
<!--默認(rèn): 10  :RegionServers受理的RPC Server實(shí)例數(shù)量光羞。對(duì)于Master來(lái)說(shuō)绩鸣,這個(gè)屬性是Master受理的handler數(shù)量.-->
        <property>
            <name>hbase.regionserver.handler.count</name>
            <value>100</value>
        </property>
 <!--默認(rèn): 1  :當(dāng)調(diào)用Scanner的next方法,而值又不在緩存里的時(shí)候纱兑,從服務(wù)端一次獲取的行數(shù)呀闻。越大的值意味著Scanner會(huì)快一些,
            但是會(huì)占用更多的內(nèi)存潜慎。 -->
        <property>
            <name>hbase.client.scanner.caching</name>
            <value>100</value>
        </property>
<!--默認(rèn): false  :體驗(yàn)特性:?jiǎn)⒂胢emStore分配本地緩沖區(qū)捡多。這個(gè)特性是為了防止在大量寫(xiě)負(fù)載的時(shí)候堆的碎片過(guò)多。
          這可以減少GC操作的頻率铐炫。說(shuō)明:減少因內(nèi)存碎片導(dǎo)致的Full GC垒手,提高整體性能。-->
       <property>              
<name>hbase.hregion.memstore.mslab.enabled</name>
            <value>true</value>
       </property>
<!--默認(rèn): 10  :客戶端最多重試次數(shù),可以設(shè)為11驳遵。 -->
       <property> 
            <name>hbase.client.retries.number</name>  
            <value>11</value> 
       </property> 
<!--默認(rèn): false  :建議設(shè)為true淫奔,關(guān)閉消息緩沖。 -->
       <property> 
           <name>hbase.ipc.client.tcpnodelay</name>  
           <value>true</value> 
       </property>  
 <!--默認(rèn): 60000  :表示HBase客戶端發(fā)起一次scan操作的rpc調(diào)用至得到響應(yīng)之間總的超時(shí)時(shí)間堤结。-->
       <property>
           <name>hbase.client.scanner.timeout.period</name>
           <value>120000</value>
       </property>
 <!--默認(rèn): 60000  :該參數(shù)表示一次RPC請(qǐng)求的超時(shí)時(shí)間唆迁。如果某次RPC時(shí)間超過(guò)該值,客戶端就會(huì)主動(dòng)關(guān)閉socket竞穷。 -->
       <property>
          <name>hbase.rpc.timeout</name>
          <value>180000</value>
       </property>
       <property>    
          <name>hbase.hregion.memstore.block.multiplier</name>    
          <value>8</value>    
       </property>
       <property>
          <name>hbase.hstore.blockingStoreFiles</name>
          <value>30</value>
       </property>
       <property>
          <name>hbase.client.write.buffer</name>
          <value>5242880</value>
       </property>
</configuration>

3唐责、配置hbase環(huán)境變量:vim /etc/profile

export HBASE_HOME=/home/hbase-1.2.4-ha/hbase-1.2.4
export PATH=$PATH:$HBASE_HOME/bin

使配置生效

source /etc/profile

4、在conf目錄下新建backup-masters瘾带,配置備用節(jié)點(diǎn):vim backup-masters

hb2

5鼠哥、配置regionservers

hb1
hb2
hb3
hb4
hb5

6、創(chuàng)建目錄:mkdir pids tmp logs
7、刪除hbase的slf4j-log4j12-1.7.5.jar朴恳,解決hbase和hadoop的LSF4J包沖突

mv slf4j-log4j12-1.7.5.jar slf4j-log4j12-1.7.5.jar.bk

8抄罕、拷貝hadoop的core-site.xml和hdfs-site.xml拷貝到hbase的conf下

scp core-site.xml hb1:/home/hbase-1.2.4-ha/hbase-1.2.4/conf/
scp hdfs-site.xml hb1:/home/hbase-1.2.4-ha/hbase-1.2.4/conf/

9、將hbase-1.2.4-ha目錄拷貝到其他節(jié)點(diǎn)上

scp -r hbase-1.2.4-ha/ hb2:/home

10于颖、在主節(jié)點(diǎn)上運(yùn)行hbase:./start-hbase.sh start

11呆贿、在瀏覽器中輸入master:16010進(jìn)入Hbase Web UI

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市森渐,隨后出現(xiàn)的幾起案子做入,更是在濱河造成了極大的恐慌,老刑警劉巖同衣,帶你破解...
    沈念sama閱讀 222,590評(píng)論 6 517
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件竟块,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡耐齐,警方通過(guò)查閱死者的電腦和手機(jī)浪秘,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,157評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)蚪缀,“玉大人秫逝,你說(shuō)我怎么就攤上這事。” “怎么了寿酌?”我有些...
    開(kāi)封第一講書(shū)人閱讀 169,301評(píng)論 0 362
  • 文/不壞的土叔 我叫張陵搂漠,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我竞惋,道長(zhǎng),這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 60,078評(píng)論 1 300
  • 正文 為了忘掉前任渊抄,我火速辦了婚禮,結(jié)果婚禮上丧裁,老公的妹妹穿的比我還像新娘护桦。我一直安慰自己,他們只是感情好煎娇,可當(dāng)我...
    茶點(diǎn)故事閱讀 69,082評(píng)論 6 398
  • 文/花漫 我一把揭開(kāi)白布二庵。 她就那樣靜靜地躺著,像睡著了一般缓呛。 火紅的嫁衣襯著肌膚如雪催享。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 52,682評(píng)論 1 312
  • 那天哟绊,我揣著相機(jī)與錄音因妙,去河邊找鬼。 笑死,一個(gè)胖子當(dāng)著我的面吹牛攀涵,可吹牛的內(nèi)容都是我干的铣耘。 我是一名探鬼主播,決...
    沈念sama閱讀 41,155評(píng)論 3 422
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼以故,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼涡拘!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起据德,我...
    開(kāi)封第一講書(shū)人閱讀 40,098評(píng)論 0 277
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤鳄乏,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后棘利,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體橱野,經(jīng)...
    沈念sama閱讀 46,638評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,701評(píng)論 3 342
  • 正文 我和宋清朗相戀三年善玫,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了水援。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,852評(píng)論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡茅郎,死狀恐怖蜗元,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情系冗,我是刑警寧澤奕扣,帶...
    沈念sama閱讀 36,520評(píng)論 5 351
  • 正文 年R本政府宣布,位于F島的核電站掌敬,受9級(jí)特大地震影響惯豆,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜奔害,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,181評(píng)論 3 335
  • 文/蒙蒙 一楷兽、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧华临,春花似錦芯杀、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,674評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至寻馏,卻和暖如春棋弥,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背诚欠。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,788評(píng)論 1 274
  • 我被黑心中介騙來(lái)泰國(guó)打工顽染, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留漾岳,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 49,279評(píng)論 3 379
  • 正文 我出身青樓粉寞,卻偏偏與公主長(zhǎng)得像尼荆,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子唧垦,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,851評(píng)論 2 361

推薦閱讀更多精彩內(nèi)容