HBase集群安裝部署(完全分布式)(網(wǎng)上下載huangxin修改版)_第1頁
HBase集群安裝部署(完全分布式)(網(wǎng)上下載huangxin修改版)_第2頁
HBase集群安裝部署(完全分布式)(網(wǎng)上下載huangxin修改版)_第3頁
HBase集群安裝部署(完全分布式)(網(wǎng)上下載huangxin修改版)_第4頁
HBase集群安裝部署(完全分布式)(網(wǎng)上下載huangxin修改版)_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

HBase集群安裝部署(完全分布式)標(biāo)簽:

hbasehadoopzookeeper分布式安裝2016年7月29日08:24:27Huangxin[永州職業(yè)技術(shù)學(xué)院]

分類:hbase(5)

版權(quán)聲明:本文為學(xué)習(xí)筆記文章,希望愛好大數(shù)據(jù)的人一起學(xué)習(xí)。目錄\o"系統(tǒng)根據(jù)文章中H1到H6標(biāo)簽自動(dòng)生成文章目錄"(?)\o"展開"[+]zookeeper配置

(注意:我在配置的時(shí)候,由于后面克隆了一臺(tái)Slave03機(jī)器,忘記了在前面的3臺(tái)機(jī)器里面的HOSTS文件里面添加【IP主機(jī)名】映射,導(dǎo)致SSH連接很慢,超過了30秒,導(dǎo)致Hbase啟動(dòng)的時(shí)候超過30秒而Slave03機(jī)器的Hbase啟動(dòng)不了(在Slave03的機(jī)器的Hbase日志里面可以查看到原因))1.

Zookeeper服務(wù)集群規(guī)模不小于三個(gè)節(jié)點(diǎn),要求各服務(wù)之間系統(tǒng)時(shí)間要保持一致。我配置的系統(tǒng)的規(guī)劃是4臺(tái)機(jī)器(1臺(tái)Master,3臺(tái)Slave:Slave01,Slave02,Slave03)主機(jī)名IP地址端口號(hào)Master002181Slave01012181Slave02022181Slave030321812.

在Master機(jī)的usr/目錄下,解壓縮zookeeper(執(zhí)行命令tar–zvxfzookeeper.tar.gz)在這里我還使用了【mvzookeeper版本號(hào)zookeeper修改名稱為zookeeper】3.

設(shè)置環(huán)境變量打開/etc/profile文件!內(nèi)容如下:

[html]

\o"viewplain"viewplain

\o"copy"copy#set

java

&

hadoop

export

JAVA_HOME=/usr/jdk

export

HADOOP_HOME=/usr/hadoop

export

ZOOKEEPER_HOME=/usr/zookeeper

export

PATH=.:$HADOOP_HOME/bin:$ZOOKEEPER_HOME/bin:$JAVA_HOME/bin:$PATH

注:修改完后profile記得執(zhí)行source/etc/profile命令讓文件立即生效

4.

在解壓后的zookeeper的目錄下進(jìn)入conf目錄修改配置文件更名操作:mvzoo_sample.cfgzoo.cfg我的操作是保留原來的文件復(fù)制一個(gè)更名,更名為:zoo.cfg所以命令為:cpzoo_sample.cfgzoo.cfg5.

編輯zoo.cfg(vizoo.cfg)(注意:這里也可以直接使用界面操作打開編輯)修改dataDir=/usr/zookeeper/data新增server.0=Master:2888:3888

server.1=Slave01:2888:3888

server.2=Slave02:2888:3888server.3=Slave03:2888:3888

文件如下:[html]

\o"viewplain"viewplain

\o"copy"copy#

The

number

of

milliseconds

of

each

tick

tickTime=2000

#

The

number

of

ticks

that

the

initial

#

synchronization

phase

can

take

initLimit=10

#

The

number

of

ticks

that

can

pass

between

#

sending

a

request

and

getting

an

acknowledgement

syncLimit=5

#

the

directory

where

the

snapshot

is

stored.

#

do

not

use

/tmp

for

storage,

/tmp

here

is

just

#

example

sakes.

dataDir=/usr/zookeeper/data

#

the

port

at

which

the

clients

will

connect

clientPort=2181

#

#

Be

sure

to

read

the

maintenance

section

of

the

#

administrator

guide

before

turning

on

autopurge.

#

#

/doc/current/zookeeperAdmin.html#sc_maintenance

#

#

The

number

of

snapshots

to

retain

in

dataDir

#autopurge.snapRetainCount=3

#

Purge

task

interval

in

hours

#

Set

to

"0"

to

disable

auto

purge

feature

#autopurge.purgeInterval=1

server.0=Master:2888:3888

server.1=Slave01:2888:3888

server.2=Slave02:2888:3888

server.3=Slave03:2888:3888

注:[html]

\o"viewplain"viewplain

\o"copy"copy

server.0=Master:2888:3888

server.1=Slave01:2888:3888

server.2=Slave02:2888:3888

server.3=Slave03:2888:3888

這四行為配置zookeeper集群的機(jī)器(Master、Slave01、Slave02,Slave03)分別用server.0和server.1、server.2、server.3標(biāo)識(shí),2888和3888為端口號(hào)(zookeeper集群包含一個(gè)leader(領(lǐng)導(dǎo))和多個(gè)fllower(隨從),啟動(dòng)zookeeper集群時(shí)會(huì)隨機(jī)分配端口號(hào),分配的端口號(hào)為2888的為leader,端口號(hào)為3888的是fllower)

6.

創(chuàng)建文件夾mkdir/usr/zookeeper/data(注意:這里也可以直接使用界面操作)7.

在data目錄下,創(chuàng)建文件myid,值為0

(0用來標(biāo)識(shí)Master這臺(tái)機(jī)器的zookeeper)

到此為止

Master上的配置就已經(jīng)完成;接下來配置Slave01,Slave02和Slave03.

8.

把zookeeper目錄復(fù)制到Slave01,Slave02和Slave03中命令為:(scp–r/usr/zookeeperroot@01:/usr/zookeeper)9.

把修改后的etc/profile文件復(fù)制到Slave01,Slave02和Slave03中(復(fù)制完后記得在Slave01,Slave02和Slave03中執(zhí)行命令source/etc/profile)10.

把Slave01中相應(yīng)的myid中的值改為1,Slave02中相應(yīng)的myid中的值改為2,把Slave03中相應(yīng)的myid中的值改為3。11.

啟動(dòng),在三個(gè)節(jié)點(diǎn)上分別執(zhí)行命令zkServer.sh

start12.

檢驗(yàn),在三個(gè)節(jié)點(diǎn)上分別執(zhí)行命令zkServer.sh

status

zookeeper的shell操作啟動(dòng)zookeeper:zkServer.sh

start進(jìn)入zookeeper:zkCli.sh

hbase配置

HBase(NoSQL)的數(shù)據(jù)模型1.1

表(table),是存儲(chǔ)管理數(shù)據(jù)的。1.2

行鍵(rowkey),類似于MySQL中的主鍵。

行鍵是HBase表天然自帶的。1.3

列族(columnfamily),列的集合。

HBase中列族是需要在定義表時(shí)指定的,列是在插入記錄時(shí)動(dòng)態(tài)增加的。

HBase表中的數(shù)據(jù),每個(gè)列族單獨(dú)一個(gè)文件。1.4

時(shí)間戳(timestamp),列(也稱作標(biāo)簽、修飾符)的一個(gè)屬性。

行鍵和列確定的單元格,可以存儲(chǔ)多個(gè)數(shù)據(jù),每個(gè)數(shù)據(jù)含有時(shí)間戳屬性,數(shù)據(jù)具有版本特性。

如果不指定時(shí)間戳或者版本,默認(rèn)取最新的數(shù)據(jù)。1.5

存儲(chǔ)的數(shù)據(jù)都是字節(jié)數(shù)組。1.6

表中的數(shù)據(jù)是按照行鍵的順序物理存儲(chǔ)的。

2.HBase的物理模型2.1HBase是適合海量數(shù)據(jù)(如20PB)的秒級(jí)簡單查詢的數(shù)據(jù)庫。2.2HBase表中的記錄,按照行鍵進(jìn)行拆分,拆分成一個(gè)個(gè)的region。

許多個(gè)region存儲(chǔ)在regionserver(單獨(dú)的物理機(jī)器)中的。

這樣,對(duì)表的操作轉(zhuǎn)化為對(duì)多臺(tái)regionserver的并行查詢。

3.HBase的體系結(jié)構(gòu)3.1HBase是主從式結(jié)構(gòu),HMaster、HRegionServer

HBase的偽分布1.

在Master上解壓縮Hbase壓縮文件到/usr里面重命名為:hbase在/etc/profile中設(shè)置環(huán)境變量:HBASE_HOME,PATH如下:[html]

\o"viewplain"viewplain

\o"copy"copy

#set

java

&

hadoop

export

JAVA_HOME=/usr/jdk

export

HADOOP_HOME=/usr/hadoop

export

ZOOKEEPER_HOME=/usr/zookeeper

export

HBASE_HOME=/usr/hbase

export

PATH=.:$HADOOP_HOME/bin:$ZOOKEEPER_HOME/bin:$HBASE_HOME/bin:$JAVA_HOME/bin:$PATH

注:修改完成后記得source/etc/profile

2.

修改文件$HBASE_HOME/conf/hbase-env.sh,修改內(nèi)容如下[html]

\o"viewplain"viewplain

\o"copy"copy

export

JAVA_HOME=/usr/jdk

export

HBASE_MANAGES_ZK=true

注意:偽分布式,是使用Hbase自帶的zookeeper。所以exportHBASE_MANAGES_ZK=true為true。如果要使用自己安裝的zookeeper的話,就設(shè)置為false

3.

修改文件hbase-site.xml,修改內(nèi)容如下

[html]

\o"viewplain"viewplain

\o"copy"copy

<property>

<name>hbase.rootdir</name>

<value>hdfs://Master:9000/hbase</value>

</property>

<property>

<name>hbase.cluster.distributed</name>

<value>true</value>

</property>

<property>

<name>hbase.zookeeper.quorum</name>

<value>Master</value>

</property>

<property>

<name>dfs.replication</name>

<value>1</value>

</property>

注意:因?yàn)槭莻畏植际?,所以是在一臺(tái)機(jī)器上的。所以這里要設(shè)置副本數(shù)為1.不然就會(huì)報(bào)錯(cuò)。

<property>

<name>dfs.replication</name>

<value>1</value>

</property>

如果機(jī)器數(shù)超過3臺(tái),那么可以使用默認(rèn)設(shè)置(默認(rèn)副本數(shù)為3)(默認(rèn)的話就不需要寫上面的設(shè)置)

4.

(可選)修改、usr/hbase/regionservers,(偽分布可以不配置)5.

啟動(dòng),執(zhí)行命令start-hbase.sh

注意:啟動(dòng)hbase之前要先啟動(dòng)hadoop,確保hadoop可寫入數(shù)據(jù)。

HBase的完全分布集群1.hbase的機(jī)群搭建過程(在原來的Master上的hbase偽分布基礎(chǔ)上進(jìn)行搭建)1.1

集群結(jié)構(gòu),主節(jié)點(diǎn)(hmaster)是Master,從節(jié)點(diǎn)(regionserver)是Slave01和Slave02,Slave031.2

修改Master上的hbase的幾個(gè)文件

(1)修改hbase-env.sh的最后一行exportHBASE_MANAGES_ZK=false

(2)修改hbase-site.xml文件的hbase.zookeeper.quorum的值為Master,Slave01,Slave02,Slave03

(3)修改regionservers文件(存放的regionserver的hostname),內(nèi)容修改為:(里面把Slave機(jī)器的主機(jī)名都寫進(jìn)去)

Slave01

Slave02

Slave03

1.3

復(fù)制Master中的hbase文件夾到Slave01和Slave02,Slave03中

Scp–r/usr/hbaseroot@01

復(fù)制Master中的/etc/profile到Slave01和Slave02,Slave03中,在Slave01和Slave02,Slave03上執(zhí)行source/etc/profile,讓文件立即生效1.4

啟動(dòng)集群?

首先啟動(dòng)hadoop(在m1上start-all.sh),?

然后啟動(dòng)zookeeper集群(分別在三臺(tái)機(jī)器上zkServer.sh

start;可以使用zkServer.shstatus查看zk的狀態(tài))。?

最后在Master上啟動(dòng)hbase集群(start-hbase.sh)。HBaseShell操作(增刪改查)說明:

hbase提供了一個(gè)shell的終端給用戶交互

創(chuàng)建表>create'users','user_id','address','info'

(說明:表users,有三個(gè)列族user_id,address,info)

列出全部表[html]

\o"viewplain"viewplain

\o"copy"copy

>list

得到表的描述[html]

\o"viewplain"viewplain

\o"copy"copy

>describe

'users'

創(chuàng)建表[html]

\o"viewplain"viewplain

\o"copy"copy

>create

'users_tmp','user_id','address','info'

刪除表[html]

\o"viewplain"viewplain

\o"copy"copy

>disable

'users_tmp'

>drop

'users_tmp'

添加記錄put‘表名’,’行鍵(標(biāo)識(shí))’,’列族:字段’,’數(shù)值’示例:[html]

\o"viewplain"viewplain

\o"copy"copy

put

'users','xiaoming','info:age','24';

put

'users','xiaoming','info:birthday','1987-06-17';

put

'users','xiaoming','info:company','alibaba';

put

'users','xiaoming','address:contry','china';

put

'users','xiaoming','address:province','zhejiang';

put

'users','xiaoming','address:city','hangzhou';

put

'users','zhangyifei','info:birthday','1987-4-17';

put

'users','zhangyifei','info:favorite','movie';

put

'users','zhangyifei','info:company','alibaba';

put

'users','zhangyifei','address:contry','china';

put

'users','zhangyifei','address:province','guangdong';

put

'users','zhangyifei','address:city','jieyang';

put

'users','zhangyifei','address:town','xianqiao'

獲取一條記錄1.

取得一個(gè)id的所有數(shù)據(jù)

[html]

\o"viewplain"viewplain

\o"copy"copy

>get

'users','xiaoming'

2.

獲取一個(gè)id,一個(gè)列族的所有數(shù)據(jù)

[html]

\o"viewplain"viewplain

\o"copy"copy

>get

'users','xiaoming','info'

3.

獲取一個(gè)id,一個(gè)列族中一個(gè)列的所有數(shù)據(jù)

[html]

\o"viewplain"viewplain

\o"copy"copy

>get

'users','xiaoming','info:age'

更新記錄[html]

\o"viewplain"viewplain

\o"copy"copy

>put

'users','xiaoming','info:age'

,'29'

>get

'users','xiaoming','info:age'

>put

'users','xiaoming','info:age'

,'30'

>get

'users','xiaoming','info:age'

獲取單元格數(shù)據(jù)的版本數(shù)據(jù)[html]

\o"viewplain"viewplain

\o"copy"copy

>get

'users','xiaoming',{COLUMN=>'info:age',VERSIONS=>1}

>get

'users','xiaoming',{COLUMN=>'info:age',VERSIONS=>2}

>get

'users','xiaoming',{COLUMN=>'info:age',VERSIONS=>3}

獲取單元格數(shù)據(jù)的某個(gè)版本數(shù)據(jù)[html]

HYPERLINK"/zwx1992121

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論