最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Hadoop+HBase+ZooKeeper分布式集群環(huán)境搭建步驟

 更新時間:2022年04月18日 08:38:37   作者:專注it  
這篇文章主要介紹了Hadoop+HBase+ZooKeeper分布式集群環(huán)境搭建,集群環(huán)境至少需要3個節(jié)點,1個Master,2個Slave,節(jié)點之間局域網(wǎng)連接,可以相互ping通,本文通過實例給大家介紹的非常詳細,需要的朋友可以參考下

一、環(huán)境說明

集群環(huán)境至少需要3個節(jié)點(也就是3臺服務器設備):1個Master,2個Slave,節(jié)點之間局域網(wǎng)連接,可以相互ping通,下面舉例說明,配置節(jié)點IP分配如下:

HostnameIPUserPassword
master192.168.59.133hadoop123456
slave1192.168.59.134hadoop123456
slave2192.168.59.135hadoop123456

三個節(jié)點均使用CentOS 6.5系統(tǒng),為了便于維護,集群環(huán)境配置項最好使用相同用戶名、用戶密碼、相同hadoop、hbase、zookeeper目錄結(jié)構(gòu)。

注: 可以通過編輯/etc/sysconfig/network文件來修改 hostname 。

##二、準備工作

2.1 安裝JDK

在三臺機器上配置JDK環(huán)境,下載 jdk-8u51-linux-x64.rpm 文件直接安裝:

$ rpm -ivh jdk-8u51-linux-x64.rpm

修改配置文件 vim /etc/profile

export JAVA_HOME=/usr/java/jdk1.8.0_51
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

然后重新加載配置文件使之生效:

$ source /etc/profile

2.2 添加Hosts映射關(guān)系

分別在三個節(jié)點上添加hosts映射關(guān)系:

$ vim /etc/hosts

添加的內(nèi)容如下:

192.168.59.133 master
192.168.59.134 slave1
192.168.59.135 slave2

2.3 集群之間SSH無密碼登陸

CentOS默認安裝了ssh,如果沒有你需要先安裝ssh 。

集群環(huán)境的使用必須通過ssh無密碼登陸來執(zhí)行,本機登陸本機必須無密碼登陸,主機與從機之間必須可以雙向無密碼登陸,從機與從機之間無限制。

2.3.1 設置master無密碼自登陸

主要有三步:①生成公鑰和私鑰、②導入公鑰到認證文件、③更改權(quán)限

$ ssh-keygen -t rsa -f ~/.ssh/id_rsa
$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
$ chmod 700 ~/.ssh && chmod 600 ~/.ssh/*

測試,第一次登錄可能需要yes確認,之后就可以直接登錄了:

$ ssh localhost
Last login: Sat Jul 18 22:57:44 2015 from localhost

對于 slave1 和 slave2,進行無密碼自登陸設置,操作同上。

2.3.2 設置主機->從機的無密碼登錄

$ cat ~/.ssh/id_rsa.pub | ssh hadoop@slave1 'cat - >> ~/.ssh/authorized_keys'
$ cat ~/.ssh/id_rsa.pub | ssh hadoop@slave2 'cat - >> ~/.ssh/authorized_keys'

測試:

[hadoop@master ~]$ ssh hadoop@slave1
Last login: Sat Jul 18 23:25:41 2015 from master
[hadoop@master ~]$ ssh hadoop@slave2
Last login: Sat Jul 18 23:25:14 2015 from master

2.3.3 設置從機->主機的無密碼登錄

分別在slave1、slave2上執(zhí)行:

$ cat ~/.ssh/id_rsa.pub | ssh hadoop@master 'cat - >> ~/.ssh/authorized_keys'

三、Hadoop集群安裝配置

這里會將hadoop、hbase、zookeeper的安裝包都解壓到/home/hadoop/個人主文件夾下,并重命名為hadoop、hbase、zookeeper。

3.1 修改hadoop配置

配置文件都在~/hadoop/etc/目錄下

3.1.1 core-site.xml

<configuration>
	<property>
		<name>fs.default.name</name>
		<value>hdfs://master:9000</value>
	</property>
</configuration>

3.1.2 hadoop-env.sh

添加JDK路徑:

export JAVA_HOME=/usr/java/jdk1.8.0_51

3.1.3 hdfs-site.xml

<configuration>
	<property>
		<name>dfs.name.dir</name>
		<value>/home/hadoop/hadoop/name</value>
	</property>
	<property>
		<name>dfs.data.dir</name>
		<value>/home/hadoop/hadoop/data</value>
	</property>
	<property>
		<name>dfs.replication</name>
		<value>3</value>
	</property>
</configuration>

3.1.4 mapred-site.xml

<configuration>
	<property>
		<name>mapred.job.tracker</name>
		<value>master:9001</value>
	</property>
</configuration>

3.1.5 修改masters文件

master

3.1.6 修改slaves文件

slave1
slave2

注意:三臺機器上都進行相同的配置,都放在相同的路徑下。

使用scp命令進行從本地到遠程(或遠程到本地)的文件拷貝操作:

scp -r /home/hadoop/hadoop     slave1:/home/hadoop
scp -r /home/hadoop/hadoop     slave2:/home/hadoop

3.2 啟動hadoop集群

進入master的~/hadoop目錄,執(zhí)行以下操作:

$ bin/hadoop namenode -format

格式化namenode,第一次啟動服務前執(zhí)行的操作,以后不需要執(zhí)行。

然后啟動hadoop:

$ sbin/start-all.sh

通過jps命令能看到除jps外有5個進程:

$ jps
4866 NodeManager
4370 NameNode
4899 Jps
4648 SecondaryNameNode
4779 ResourceManager
4460 DataNode

四、ZooKeeper集群安裝配置

解壓zookeeper-3.3.2.tar.gz并重命名為zookeeper。

4.1 修改配置文件zoo.cfg

進入~/zookeeper/conf目錄:

$ cp zoo_sample.cfg zoo.cfg

拷貝zoo_sample.cfg文件為zoo.cfg,并編輯如下:

dataDir=/home/hadoop/zookeeper/data
server.1=192.168.59.133:2888:3888
server.2=192.168.59.134:2888:3888
server.3=192.168.59.135:2888:3888

4.2 新建并編輯myid文件

在dataDir目錄下新建myid文件,輸入一個數(shù)字(master為1,slave1為2,slave2為3):

$ mkdir /home/hadoop/zookeeper/data
$ echo "1" > /home/hadoop/zookeeper/data/myid

同樣使用scp命令進行遠程復制,只不過要修改每個節(jié)點上myid文件中的數(shù)字。

4.3 啟動ZooKeeper集群

在ZooKeeper集群的每個結(jié)點上,執(zhí)行啟動ZooKeeper服務的腳本:

$ ~/zookeeper/bin/zkServer.sh start

1.如果啟動報類似異常:QuorumCnxManager@384] - Cannot open channel to 2 at election address slave-02/192.168.0.178:3888 是可以忽略的,因為該服務啟動時會嘗試連接所有節(jié)點,而其他節(jié)點尚未啟動。通過后面部分可以看到,集群在選出一個Leader后,最后穩(wěn)定 了。其他結(jié)點可能也出現(xiàn)類似問題,屬于正常。

2.關(guān)閉防火墻。在hadoop集群環(huán)境(linux系統(tǒng))中最好關(guān)閉防火墻,不然會出現(xiàn)很多問題,例如namenode找不到datanode等。如果不關(guān)閉防火墻,客戶端使用API操作HDFS以及ZooKeeper,可能就會出現(xiàn)下面常見的兩種異常:

  • 使用API操作HDFS時會出現(xiàn)異常:java.net.NoRouteToHostException: No route to host
  • 使用API操作ZK時會出現(xiàn)異常:org.apache.zookeeper.KeeperException$ConnectionLossException: KeeperErrorCode = ConnectionLoss for xxxx

3.使用root權(quán)限登陸后,輸入關(guān)閉防火墻命令:

$ /etc/init.d/iptables stop
$ service iptables stop

修改禁用selinux: /etc/selinux/config文件,設置"SELINUX=disabled"

五、HBase集群安裝配置

解壓hbase-1.0.1.1-bin.tar.gz并重命名為hbase。

5.1 hbase-env.sh

export JAVA_HOME=/usr/java/jdk1.8.0_51
export HBASE_CLASSPATH=/home/hadoop/hadoop/etc/hadoop/
export HBASE_MANAGES_ZK=false

5.2 hbase-site.xml

<configuration>
	<property>
		<name>hbase.rootdir</name>
		<value>hdfs://master:9000/hbase</value>
	</property>
	<property>
		<name>hbase.master</name>
		<value>master</value>
	</property>
	<property>
		<name>hbase.cluster.distributed</name>
		<value>true</value>
	</property>
	<property>
		<name>hbase.zookeeper.property.clientPort</name>
		<value>2181</value>
	</property>
	<property>
		<name>hbase.zookeeper.quorum</name>
		<value>master,slave1,slave2</value>
	</property>
	<property>
		<name>zookeeper.session.timeout</name>
		<value>60000000</value>
	</property>
	<property>
		<name>dfs.support.append</name>
		<value>true</value>
	</property>
</configuration>

5.3 更改 regionservers

在 regionservers 文件中添加slave列表:

slave1
slave2

5.4 分發(fā)并同步安裝包

將整個hbase安裝目錄都拷貝到所有slave服務器:

$ scp -r /home/hadoop/hbase  slave1:/home/hadoop
$ scp -r /home/hadoop/hbase  slave2:/home/hadoop

六、啟動集群

1. 啟動ZooKeeper

~/zookeeper/bin/zkServer.sh start

2. 啟動hadoop

~/hadoop/sbin/start-all.sh

3. 啟動hbase

~/hbase/bin/start-base.sh

4. 啟動后,master上進程和slave進程列表

[hadoop@master ~]$ jps
6225 Jps
2897 SecondaryNameNode   # hadoop進程
2710 NameNode            # hadoop master進程
3035 ResourceManager     # hadoop進程
5471 HMaster             # hbase master進程
2543 QuorumPeerMain      # zookeeper進程
[hadoop@slave1 ~]$ jps
4689 Jps
2533 QuorumPeerMain       # zookeeper進程
2589 DataNode             # hadoop slave進程
4143 HRegionServer        # hbase slave進程

5. 進入hbase shell進行驗證

[hadoop@master ~]$ hbase/bin/hbase shell
2015-07-20 00:42:11,725 WARN  [main] util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
HBase Shell; enter 'help<RETURN>' for list of supported commands.
Type "exit<RETURN>" to leave the HBase Shell
Version 1.0.1.1, re1dbf4df30d214fca14908df71d038081577ea46, Sun May 17 12:34:26 PDT 2015
hbase(main):001:0> list
TABLE                                                                                
0 row(s) in 1.6950 seconds
=> []
hbase(main):002:0> status
2 servers, 0 dead, 1.0000 average load
hbase(main):003:0>

參考:

[1] www.smalldeng.blog.51cto.com/1038075/1329290
[2] www.marysee.blog.51cto.com/1000292/629405

到此這篇關(guān)于Hadoop+HBase+ZooKeeper分布式集群環(huán)境搭建的文章就介紹到這了,更多相關(guān)Hadoop HBase ZooKeeper集群搭建內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Spring Boot項目中如何對接口請求參數(shù)打印日志

    Spring Boot項目中如何對接口請求參數(shù)打印日志

    在SpringBoot項目中,打印接口請求參數(shù)有多種方法,如使用AOP、控制器建議、攔截器、@ModelAttribute、SpringBootActuator、日志框架的MDC、自定義過濾器和SpringWebflux,這些方法有助于API調(diào)試和監(jiān)控,但需注意隱私和敏感信息安全
    2024-10-10
  • SpringCloud聲明式Feign客戶端調(diào)用工具使用

    SpringCloud聲明式Feign客戶端調(diào)用工具使用

    這篇文章主要為大家介紹了SpringCloud聲明式Feign客戶端調(diào)用工具使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-08-08
  • springcloud Zuul動態(tài)路由的實現(xiàn)

    springcloud Zuul動態(tài)路由的實現(xiàn)

    這篇文章主要介紹了springcloud Zuul動態(tài)路由的實現(xiàn),詳細的介紹了什么是Zuu及其動態(tài)路由的實現(xiàn),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-11-11
  • 一文搞懂SpringBoot如何利用@Async實現(xiàn)異步調(diào)用

    一文搞懂SpringBoot如何利用@Async實現(xiàn)異步調(diào)用

    異步調(diào)用幾乎是處理高并發(fā),解決性能問題常用的手段,如何開啟異步調(diào)用?SpringBoot中提供了非常簡單的方式,就是一個注解@Async。今天我們重新認識一下@Async,以及注意事項
    2022-09-09
  • JAVA二叉樹的基本操作

    JAVA二叉樹的基本操作

    這篇文章主要介紹了JAVA二叉樹的基本操作DEMO,想要詳情了解的小伙伴請接著看下文吧
    2021-08-08
  • springboot集成redis哨兵集群的實現(xiàn)示例

    springboot集成redis哨兵集群的實現(xiàn)示例

    本文主要介紹了springboot集成redis哨兵集群的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-08-08
  • SpringBoot從Nacos讀取MySQL數(shù)據(jù)庫配置錯誤:Public Key Retrieval is not allowed的解決方案

    SpringBoot從Nacos讀取MySQL數(shù)據(jù)庫配置錯誤:Public Key Retrieva

    最近的項目,突然都從MySQL5.7升級到8.0了,有些項目能運行成功,有些項目遇到了問題,啟動不成功,顯示數(shù)據(jù)庫方面的異常信息,本文給大家介紹了SpringBoot從Nacos讀取MySQL數(shù)據(jù)庫配置錯誤:Public Key Retrieval is not allowed的解決方案,需要的朋友可以參考下
    2024-04-04
  • SpringBoot項目的logback日志配置(包括打印mybatis的sql語句)

    SpringBoot項目的logback日志配置(包括打印mybatis的sql語句)

    這篇文章主要介紹了SpringBoot項目的logback日志配置(包括打印mybatis的sql語句),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-09-09
  • Java 如何實現(xiàn)時間控制

    Java 如何實現(xiàn)時間控制

    這篇文章主要向大家介紹得是Java 如何實現(xiàn)時間控制,文章珠岙舉例說明該內(nèi)容,感興趣得小伙伴可以跟小編一起學習下面文章內(nèi)容
    2021-10-10
  • Java項目導出數(shù)據(jù)為 PDF 文件的操作代碼

    Java項目導出數(shù)據(jù)為 PDF 文件的操作代碼

    一個小需求,需要將頁面上的數(shù)據(jù)導出為PDF,正常情況下這個需求需要讓前端來做,但是現(xiàn)在上面讓咱們后端來做,也沒問題,這篇文章主要介紹了Java項目導出數(shù)據(jù)為 PDF 文件的操作代碼,需要的朋友可以參考下
    2022-12-12

最新評論

尖扎县| 乐业县| 宝丰县| 延安市| 呼伦贝尔市| 嘉义县| 奇台县| 大厂| 铁力市| 连南| 岱山县| 五常市| 双流县| 辰溪县| 中山市| 静宁县| 鄂尔多斯市| 瑞金市| 罗江县| 上虞市| 德化县| 宜阳县| 金阳县| 小金县| 蒙山县| 淮北市| 彝良县| 天长市| 浏阳市| 嘉荫县| 宁都县| 永泰县| 中牟县| 岳阳市| 安远县| 沅江市| 自治县| 娱乐| 青州市| 朝阳市| 特克斯县|