hadoop之旅2-centerOS7: 搭建分佈式hadoop環境

你們可能在網上一搜索大數據,巴拉巴拉一大堆的理論性的東西撲面而來,都是這樣過來的,當時一臉懵逼,因此在此就不給你們再介紹理論性的知識了,直接帶你們搭建分佈式的開發環境。html

hadoop的分佈式架構 (一主二從)java

主機名 ip地址 namenode datanode
master 192.168.6.133
slave1 192.168.6.131
slave2 192.168.6.132

第一步

虛擬機,java環境準備

須要有一臺centerOS7虛擬機,同時已經搭建好了jdk的環境,若有疑問可移駕 hadoop之旅1-centerOS7: 搭建java環境node

第二步

軟件準備

準備好hadoop的開發包linux

  1. apache官網下載
  2. apache歷史版本庫下載
  3. 我給你們分享的百度雲連接下載 版本:hadoop-2.7.3
  4. 我使用filezilla軟件將解壓包放入linux系統,你們也能夠經過wget命令直接下載到linux系統中

第三步

解壓hadoop,重命名

  1. 在下載的hadoop壓縮包的目錄下解壓hadoop壓縮包
[root@localhost mmcc]# tar -zxvf hadoop-2.7.3.tar.gz 
....
//重命名目錄名稱(可選)
[root@localhost mmcc]# mv hadoop-2.7.3/ hadoop2.7.3
複製代碼
  1. 查看hadoop的根路徑
[root@localhost mmcc]# cd hadoop2.7.3/
[root@localhost hadoop2.7.3]# pwd
/home/mmcc/hadoop2.7.3   //配置環境變量時會用到
複製代碼

第四步

配置環境變量

  1. /etc/profile最下面,hadoop之旅1-centerOS7: 搭建java環境章節配置的PATH,CLASSPATH上面增長環境變量配置
HADOOP_HOME=/home/mmcc/hadoop2.7.3
PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$JAVA_HOME/bin:$PATH:.
複製代碼
  1. 使環境變量生效
[root@localhost jdk1.8]# source /etc/profile
複製代碼
  1. 配置hadoop的java環境,編輯hadoop根目錄下/etc/hadoop/下的hadoop.env.sh腳本文件
vi /hadoop-2.7.3/etc/hadoop/hadoop.env.sh
export JAVA_HOME=/home/mmcc/jdk1.8  //配置java的環境目錄
複製代碼
  1. 配置hadoop的啓動環境,編輯hadoop根目錄下/etc/hadoop/下的core-site.xml文件。
<property>
       <name>fs.defaultFS</name>
       <value>hdfs://master:9000</value>  (master處爲當前主機ip或主機名)  
</property>
複製代碼

此處的master後面會教你們apache

第五步

分佈式環境搭建

  1. 此處爲了方便,直接經過虛擬機克隆的方式,將鏡像克隆多份,這樣在此以前搭建的全部環境都是同步存在的

  1. 使用該命令給每一個節點的設置對應的主機名
[root@localhost mmcc]# hostnamectl set-hostname master/slave1/slave2
複製代碼
  1. 檢測網絡
[root@localhost mmcc]# ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.6.133  netmask 255.255.255.0  broadcast 192.168.6.255
        inet6 fe80::3d1d:5127:6666:c62d  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:f4:ef:5d  txqueuelen 1000  (Ethernet)
        RX packets 317168  bytes 315273916 (300.6 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 149675  bytes 14400069 (13.7 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1  (Local Loopback)
        RX packets 12826  bytes 3163428 (3.0 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 12826  bytes 3163428 (3.0 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
複製代碼

若是查詢不到ip地址,須要配置網絡bash

cd  /etc/sysconfig/network-scripts/
vi ifcfg-ens33 (個人虛擬機版本,別的版本可能不同)
ONBOOT="yes"  表開啓網絡。
複製代碼
  1. 設置網絡別名,即IP對應的別名 如:hdfs://master:9000
[root@localhost network-scripts]# vi /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.6.133   master
192.168.6.131   slave1
192.168.6.132   slave2
複製代碼

重啓網絡微信

service network restart  重啓網絡
複製代碼

而後你們能夠試着ping master/slave1/slave2若是ping通說明配置成功網絡

  1. 格式化hdfs,在每臺節點上執行如下命令
hdfs namenode -format
複製代碼

啓動以前進行格式化,若是沒有error和Exception 表示格式化成功架構

6. master主機配置hadoop集羣節點

cd /home/mmcc/hadoop2.7.3/etc/hadoop
[root@localhost hadoop]# vi slaves 
//增長如下內容
slave1
slave2
複製代碼

7. 關閉每一個節點防火牆,啓動hdfs服務,

[root@localhost mmcc]# systemctl stop firewalld
[root@localhost mmcc]# hadoop-daemon.sh start namenode //主節點master
[root@localhost mmcc]# hadoop-daemon.sh start datanode //從節點slave1,slave2
複製代碼

而後能夠在網頁上輸入主節點的地址master:50070ip地址:50070查看當前的狀態及其節點狀態哦。到此一個分佈式的hadoop環境已經成功啓動。 下一節會教你們如何進行免密登陸,一鍵啓動集羣,及一些簡單的hdfs文件存儲命令, 你們在配置過程當中若是有什麼問題能夠查看log日誌進行問題排查。歡迎加我微信一塊兒學習一塊兒進步哈dom

相關文章
相關標籤/搜索