1. 程式人生 > >搭建完全分散式hadoop叢集

搭建完全分散式hadoop叢集

1. 建立master和3個slave

建立4個host,分別定義hostname為master、slave1、slave2、slave3,檢查4個host的ip地址,確保所有主機均處於1個閘道器,在hosts中配置4個主機的ip地址和hostname,並確保能夠相互ping通

127.0.0.1       localhost

192.168.1.100   master
192.168.1.101   slave1
192.168.1.102   slave2
192.168.1.103   slave3

2. 關閉防火牆

關閉防火牆

sudo systemctl stop firewalld.service 

禁用防火牆

sudo systemctl disable firewalld.service

檢視防火牆狀態

firewall-cmd --state

重啟主機

3. 定義ssh免密登入

在root使用者下修改 /etc/ssh/sshd_config,設定以下三項後執行 service sshd restart

RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile      .ssh/authorized_keys

確保每臺主機均安裝並啟動了ssh服務,在master主機上生成ssh祕鑰對,並將其的公鑰匯入到每臺主機的authorized_keys中。並且在centos下,需要將authorized_keys檔案的許可權改為644。

4. 3臺主機均建立haddoop使用者,並給這個使用者新增sudo許可權

sudo su
useradd -m hadoop
passwd hadoop
#新增sudo許可權
visudo
#在改行root ALL=(ALL)ALL下新增hadoop ALL=(ALL)ALL 儲存並退出,並且換到hadoop使用者
su hadoop

5. jdk及hadoop安裝

安裝步驟及環境變數配置同偽分散式,每臺主機均需執行

6. 配置hadoop檔案

先在master上配置,配置完成後再拷貝至其他主機

core-site.xml    不配置埠時預設為8020

<configuration>
  <property>
    <name>fs.default.name</name>
    <value>hdfs://master:9000</value>
  </property>
  <property>
    <name>hadoop.tmp.dir</name>
    <value>file:/home/hadoop/hadoop/tmp</value>
  </property>
</configuration>

hdfs-site.xml

注意配置的路徑是否擁有讀寫許可權,當路徑配置在根目錄下的資料夾時(如 /usr),需要更改該資料夾的讀寫許可權

sudo chmod -R a+w /usr
<configuration>
  <property>
    <name>dfs.replication</name>
    <value>2</value>
  </property>
  <property>
    <name>dfs.namenode.name.dir</name>
    <value>file:/home/hadoop/hadoop/tmp/dfs/name</value>
  </property>
  <property>
    <name>dfs.datanode.data.dir</name>
    <value>file:/home/hadoop/hadoop/tmp/dfs/data</value>
  </property>
  <property>
    <name>dfs.namenode.secondary.http-address</name>
    <value>master:9001</value>
  </property>
</configuration>

mapred-site.xml

<configuration>
  <property>
    <name>mapreduce.framework.name</name>
    <value>yarn</value>
  </property>
</configuration>

yarn-site.xml

<configuration>
  <property>
    <name>yarn.resourcemanager.hostname</name>
    <value>master</value>
  </property>
  <property>
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
  </property>
  <property>
    <name>yarn.log-aggregation-enable</name>
    <value>true</value>
  </property>
  <property>
    <name>yarn.log-aggregation.retain-seconds</name>
    <value>604800</value>
  </property>
</configuration>

配置slaves

slave1
slave2

7. hadoop啟動

同偽分散式操作

hadoop namenode -format
start-dfs.sh
start-yarn.sh

如果報permission denied,將hadoop目錄許可權改為 a+w

sudo chmod -R a+w /soft/hadoop

如果出現ssh連線慢或警告

Are you sure you want to continue connecting (yes/no)? The authenticity of host 's204 (192.168.242.131)' can't be established.

可以在master上對每臺主機執行

ssh -o "StrictHostKeyChecking no" [email protected]

並修改配置檔案 /etc/ssh/ssh_config

Host *
   StrictHostKeyChecking no
   UserKnownHostsFile=/dev/null

8. hadoop叢集測試

執行wordcount測試hadoop叢集

在當前目錄下建立檔案README.txt,在其中隨意貼上一段英文。

在hdfs中建立一個工作目錄

hdfs dfs -mkdir -p /data/input

將當前目錄下的README.txt推送到hdfs檔案系統中

hdfs dfs -put README.txt /data/input

檢視是否推送成功

hdfs dfs -ls /data/input

執行hadoop自帶的例子

hadoop jar /soft/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.7.jar wordcount /data/input /data/output/result

檢視執行結果

hdfs dfs -cat /data/output/result/part-r-00000

相關推薦

三臺阿里雲伺服器搭建完全分散式hadoop叢集並實現sparkstreaming詳細步驟

本文基於三臺阿里雲ECS例項搭建完全分散式hadoop叢集,並整合flume + kafka + sparkstreaming實現實時流處理。詳細步驟會在本文後續一一寫出,包括在搭建叢集過程中遇到的坑以及應對辦法。 前言 三臺ECS主機的規劃如下: 外網ip

阿里雲三臺節點,搭建完全分散式hadoop叢集,超簡單

完全分散式的安裝     1、叢集規劃             角色分配 NODE-47 NODE-101      NODE-106 HDFS Namenode Datanode Secondary

搭建完全分散式hadoop叢集

1. 建立master和3個slave 建立4個host,分別定義hostname為master、slave1、slave2、slave3,檢查4個host的ip地址,確保所有主機均處於1個閘道器,在hosts中配置4個主機的ip地址和hostname,並確保能夠相互pin

完全分散式Hadoop叢集的安裝搭建和配置(4節點)

Hadoop版本:hadoop-2.5.1-x64.tar.gz 學習參考了給力星http://www.powerxing.com/install-hadoop-cluster/的兩個節點的hadoo

ubuntu 虛擬機器 完全分散式 hadoop叢集搭建 hive搭建 ha搭建

針對分散式hadoop叢集搭建,已經在四臺虛擬機器上,完全搭建好,這裡針對整個搭建過程以及遇到的問題做個總結,按照下面的做法應該能夠比較順暢的搭建一套高可用的分散式hadoop叢集。 這一系列分散式元件的安裝過程中,大體可以分為以下幾步: 第一步.配置機器互信    機器互

大資料之(1)Centos7上搭建分散式Hadoop叢集

本文介紹搭建一個Namenode兩個DataNode的Hadoop全分散式叢集的全部步驟及方法。具體環境如下: 一、環境準備 3個Centos7虛擬機器或者3個在一個區域網內的實際Centos7機器,機器上已安裝JDK1.8,至於不會安裝Centos7或者JDK1.8的同

【大資料】安裝完全分散式Hadoop叢集

修改主機名和網路 master: #hostnamectl set-hostname master #vi /etc/sysconfig/network-scripts/ifcfg-ens33 TYPE=Ethernet PROXY_METHOD=none BR

搭建完全分散式redis叢集

這裡用三臺伺服器搭建一個完全分散式redis叢集,用來做爬蟲請求url的共享佇列.每臺伺服器建立兩個節點(一個master 一個slave),當mater掛了的時候slave會頂上去,這樣就構成了一個三主三從的叢集。 三臺伺服器:host1 host2 host3 6379

三臺阿里雲伺服器搭建完全分散式hadoop

1.準備工作:jdk安裝(個人選擇的1.8版本)  2.ssh免密登陸:  關閉放火牆(可以將要開放的埠加入防火牆的開發埠中,學習用就直接關閉防火牆了):  1)關閉firewall:  systemctl stop firewalld.service #停止firewa

VirtualBox+Centos7+(jdk1.7.0_71+Hadoop-2.6.0)/(jdk1.10+Hadoop-2.9.1)搭建完全分散式叢集平臺

VirtualBox+Centos7+(jdk1.7.0_71+Hadoop-2.6.0)/(jdk1.10+Hadoop-2.9.1)搭建完全分散式叢集平臺 本文有很多是自定義的,可以根據自己的實際情況和需求修改,儘量會用紅色標註出來,當然按照步驟,一步一步應該也能成功,不

完全分散式Hadoop】(三)叢集設定SSH無密碼登陸

之前的文章已經有SSH免密部分,這裡單獨列出來只是為了方便查詢 打通SSH,設定ssh無密碼登陸(所有節點) 組建了三個節點的叢集hadoop000、hadoop001、hadoop002 在所有節點上執行 ssh-keygen -t rsa 一路回車,生成無密碼的金鑰對。 將各個節點的公鑰

基於偽分散式hadoop搭建完全分散式

上篇部落格中,我們搭建了單機版和偽分散式版的hadoop。但是在真正的開發中都是用的完全分散式hadoop環境。 因此今天我們就來搭建一下完全分散式hadoop環境。 前提:有四臺解壓了hadoop和javajdk,且其中一臺作為namenode需要已經搭建成了偽分散式,其他三臺作為data

Hadoop搭建完全分散式執行模式

一、過程分析   1、準備3臺客戶機(關閉防火牆、修改靜態ip、主機名稱)   2、安裝JDK   3、配置環境變數   4、安裝Hadoop   5、配置叢集   6、單點啟動   7、配置ssh免密登入   8、群起並測試叢集   二、編寫叢集分發指令碼 xsync 1、s

搭建分散式叢集hadoop

親測了幾位博主的部落格,有效。感謝博主分享 偽分散式:http://www.powerxing.com/install-hadoop/ #叢集式: https://blog.csdn.net/weixin_42490528/article/details/80752351 http://

8.Hadoop的學習(Hadoop的配置--搭建完全分散式)

 搭建偽分散式請檢視本部落格https://blog.csdn.net/wei18791957243   裡面的三個搭建偽分散式的部落格 前提是偽分散式可以正常啟動。 點開虛擬機器上邊的選單欄中的虛擬機器內的快照功能。(快照:可以及時儲存當前操

Hadoop搭建完全分散式環境

在搭建叢集中,常見的錯誤 1)格式化 首先要記住,不要頻繁的格式化namenode, 如果非要格式化namenode,先刪除tmp目錄中的內容 ,清空之前,最好把所有的程序jps 中的殘存的服務關掉,如果不關閉的話會存在遺留的程序,就有可能佔用之前的埠號。 2)埠可能被佔用 3)避免多使

完全分散式HDFS叢集搭建

完全分散式HDFS叢集,是一個真正的分散式叢集,主要角色有NameNode,SecondaryNameNode,DataNode 叢集規劃: NN SNN DN node01 * node02 * * node03 * n

利用hadoop-2.5.0-cdh5.3.6版本,搭建完全分散式HA詳細記錄(怕忘)

我就按照自己的思路寫,可能步驟不一定正確1、在搭建完全 分散式叢集時,首先要保證我們的三臺機子的時間同步,所以我們需要同步一臺時間伺服器,我的三臺虛擬機器分別為如下hostname-->make.hadoop.com        第一臺-->make.hadoo

完全分散式Hadoop】(四)新建hadoop使用者以及使用者組,並賦予sudo免密碼許可權

搭建hadoop叢集環境不僅master和slaves安裝的hadoop路徑要完全一樣,也要求使用者和組也要完全一致。因此第一步就是新建使用者以及使用者組。對於新手來言,新建使用者使用者組,並賦予適當的許可權無疑是最大的問題。下面請跟隨我來新建使用者以及使用者組並賦予root許可權。

完全分散式Hadoop】(二)HDFS、YARN以及HA高可用概念介紹

一、HDFS-Hadoop分散式檔案系統 HDFS 採用Master/Slave的架構來儲存資料,這種架構主要由四個部分組成,分別為HDFS Client、NameNode、DataNode和Secondary NameNode。下面我們分別介紹這四個組成部分 1、Client:就